WebOps Wednesday Build Tools AMA: Andrew Taylor

Hi, I’m Andrew Taylor, Lead Developer Programs Engineer on the Developer Relations team here at Pantheon. I’ve been working hard on the Build Tools initiative, which started out as a hack week project by Greg Anderson, pushing version 2 forward. In this AMA I would like to tell you more about the project and answer any questions fellow Pantheors may have.

P.S. you can get more info on the project by watching the video presentation that was given during the last marketing all hands or reading the Build Tools project charter.

What Is Build Tools?

Build Tools is a Terminus package and set of best-practice examples that allows Pantheon users to connect the tools and automation they prefer with Pantheon by reducing integration complexity.

Project following the Build Tools workflow are made of up 3 ingredients:

  • External Git repository
    • GitHub, GitLab, BitBucket
  • Continuous Integration (CI) Services
    • CircleCI, GitLab, BitBucket Pipelines
  • Pantheon
    • Connected via Terminus

In short, it simplifies the set up for connecting these 3 pieces, taking minutes instead of the hours needed to manually configure the set up for each new project.

Build Tools does this by providing 3 major components:

  • build:project:create command
    • Scaffolds a new project with a Git service, a Continuous Integration service, and Pantheon
  • Best practice templates for WordPress and Drupal 8
    • A modern build step, deployment to Pantheon and pre-configured automated tests
  • Additional Terminus commands useful in scripted/automated environments

The current project goals are:

  • Provide a stable release of Build Tools that supports Terminus 2
    • Adding support for GitLab and BitBucket as well
  • Lower the barrier of entry to implementing and using an external Git repository, Continuous Integration, and automated testing with Pantheon.
  • Unlock agility by demonstrating best-practices for WebOps teams using Drupal and WordPress.

Why Is This Work Happening?

  • Version 1 reached end-of-life in August 2019
  • Incomplete support for GitLab and BitBucket
    • V1 is GitHub and CircleCI only
  • Many agency partners are using either the deprecated V1 or the unstable V2 in production
  • There is a lot of demand for this type of workflow
    • 300+ members in the #composer-workflow Slack channel
  • Finishing version 2 of the plugin supports our value of Customers First and will also supply us with a large source of WebOps content.

Proposed Timeline

  • The Terminus Build Tools Plugin Version 2.0 has a stable release (2019)
  • GitHub + CircleCI and GitLab support are complete. BitBucket is in progress.
  • Finalized example repositories for WordPress and Drupal 8
  • Build Tools can be added to pre-existing sites with a single command
  • The documentation guide is updated (2019)
  • A professional Build Tools demo video exists (2019)
  • Existing content referencing Build Tools is updated (2020)
  • Internal teams are trained on Build Tools (2020)
  • Build Tools has a successful launch campaign (2020)
  • We have a reporting system in place for Build Tools (2020)
  • We have specific WebOps content numbers by medium (blog post, webinar, conference session, etc.) (2020)

I’m sure you have more questions, please Ask Me Anything.

1 Like

Hi Andrew, thanks for your work on Build Tools! Can you share your thoughts on why this work is happening under Developer Programs Engineering (with help from Greg, contractors, and community) rather than a full product/engineering project?

1 Like

A turn-key product integration would require federated OAuth with GitHub, BitBucket and GitLab. That is a large, undefined amount of work that isn’t currently on the product roadmap. There is an opportunity to close the gap and start helping our users now, so we are taking it.

Having this be a separate package also allows us to learn and iterate so that when this is ready for product there is a good head start.

1 Like