Everybody knows that we should test our Drupal code. We should scan for security vulnerabilities and immediately apply updates. We should scan for and remediate deprecations. There are a lot of things we should do.
But how many of us actually do those things, and how often?
Continuous Integration and Continuous Delivery are DevOps approaches that automate these tasks. A strong CI/CD setup will make your code more secure, fast, reliable, and maintainable.
Unfortunately, it’s not easy to set up. Integrating multiple tools into a well run CI/CD pipeline requires expertise and upkeep. For that reason, many Drupalists never get around to it.
Acquia Code Studio completely changes the game.
It gives you the only zero configuration required CI/CD Pipeline that is optimized for Drupal. In partnership with GitLab, Acquia Code Studio provides an AutoDevOps pipeline that will do the following things for you automatically every time you make a commit:
- Assemble your code with Composer
- Validate your Composer configuration with composer validate
- Validate your custom code style with PHP Code Sniffer and Drupal coding standards
- Validate your custom code with PHPStan
- Run your PHPUnit tests
- Construct your source code into a deployable artifact
When you create a new Merge Request, Code Studio will do all of the above AND also:
- Create a new Continuous Delivery Environment (CDE)
- Deploy the artifact branch to the CDE
- Copy a database (form production by default) to the new CDE
- Link to the CDE in the Merge Request
All of that out of the box. You don’t need to build or maintain the configuration for the pipeline. It’s hard to exaggerate the value of this. Even for a senior engineer, it takes considerable time to configure and maintain a full DevOps pipeline. For less senior engineers, it often is too high of a bar to warrant the investment.
Of course, you are free to configure, extend, override, or completely replace our AutoDevOps pipeline as you wish.
Customizing and extending the AutoDevOps pipeline
The are three approaches to customizing the AutoDevOps pipeline:
- Toggle an AutoDevOps job or task by using a CI/CD variable
- Run a custom script before or after a given AutoDevOps job
- Run only your custom scripts (no AutoDevOps jobs)
To learn more about how to customize these builds, see our AutoDevOps Jobs documentation.
Acquia Code Studio AutoDevOps doesn’t stop with commits and merge requests. It also runs Automatic Updates on a schedule to automatically update your Composer dependencies and even replace your deprecated custom code.
See Code Studio Automatic Updates for an in depth look at Automatic Update.