Acquia Pipelines: Build, Test, and Deployment Automation for Acquia Cloud

August 10, 2016

tl;dr: Acquia Pipelines lets you automate building, testing, and deploying sites on Acquia Cloud using tools like Composer, Sass, and Behat. You must be a current Acquia client or partner to participate in the Beta. To request a private beta invite, submit a support ticket with the subject, "Pipelines Beta Access".

Acquia has a long history of providing cutting-edge developer tools. Acquia Cloud’s Workflow UI, released in March 2011, made it easy to develop, stage, and deploy your site across identical environments. In 2012, we added Cloud API and Cloud Hooks to enable automating additional tasks such as database migrations and notifying stakeholders on releases. Acquia Cloud Free tier came along in 2013, and real-time log streaming in 2014. Just recently, we released Acquia BLT and Acquia Lightning.

During this time, the landscape of tools and processes that development teams use has changed dramatically. The days of just downloading Drupal core and contrib modules, committing them to a repository, and deploying are numbered. Today's developers use Composer to manage dependencies, Sass to generate CSS, Behat to test it all, throw in some Gulp to orchestrate the entire process, and this is the new normal. Indeed, Drupal 8 and contrib have incorporated some of these tools and workflows, making their use essentially mandatory. With these more and more complicated Continuous Deployment (CD) processes it’s important that all the steps are reliable and, more importantly, repeatable across all the developers on your teams.

That’s why we are pleased to announce the private beta of Acquia Pipelines. Pipelines makes it possible to take what’s in your repository and transform it into a build artifact, test it, and then deploy it in Cloud. Pipelines allows you to:

  • Use tools like Composer or Drush Make to pull in external dependencies, libraries, or modules, without having to commit them to your source repository.
  • Securely access SSH keys, API keys, or other credentials in your CD process.
  • Access private repositories to perform “governed builds” in which developers can only alter the parts of the code base they have authority to, allowing enterprises to enforce security requirements and protect IP.
  • Run unit tests like PHPunit or functional tests like Behat that require access to a web browser and database server.
  • Deploy a build artifact to any Cloud environment after a successful build and test.
  • Deliver the entire automated CD process to your client along with the site so that the client can keep using it.

How Pipelines works

At the heart of every Pipelines implementation is the acquia-pipelines.yml file. The YAML file is your recipe that automates building, testing and deploying your artifact. Combined with the Pipelines CLI client, you can start and monitor the entire artifact creation process. Here is a simple example:

version: 1.0.0
      - my_build:
        type: script
          - composer install
          - compass compile docroot/themes/custom/MY_THEME

This says that when a “build” event is triggered, Pipelines should perform a single step named “my_build” which runs composer install to download dependencies and compass compile to compile Sass into CSS. When the steps complete successfully, the resulting build artifact is stored and, optionally, deployed on Acquia Cloud. Pipelines executes the job on its elastic, containerized infrastructure, separate from the infrastructure that runs any of your Cloud environments.

How to get started

Request an invitation to the private beta, or ask your Acquia account manager about participating in the private beta. Note: The invitation request form is different from the "Subscribe" form displayed just below this paragraph!

Sign-up for our Developer Blog Newsletter


Add comment

By submitting this form, you accept the Mollom privacy policy.


Does this currently, or will it eventually, integrate with your BLT tool? Shared config files, prebuilt deploy scripts, etc?

Jeff Geerling's picture

It's been a while since your comment, and it seems like nobody else has replied—but yes, it will integrate with BLT. BLT even includes a acquia-pipelines.yml configuration that you can add to your project by running "blt ci:pipelines:init"!