Building and maintaining Drupal projects, be that modules, themes or full Drupal websites, involves many different complex tasks, such as; checking code quality, testing functionality, compiling scss or deploying to remote environments.
If these tasks rely on a human to execute them every time, that opens up the opportunity for steps to be missed and errors to occur. When possible it is better to "let the robots" handle it and automate repeatable tasks, so that they are always executed in the correct order, removing the risk of human error.
In this training, attendees will learn how to identify tasks related to the building, deployment and maintenance of their Drupal projects which are best suited to be automated. Followed by how to use common tools and services to build these automations.
This training will cover the following topics:
- Common Drupal tasks to automate.
- Overview of automation tools and platforms used in Drupal.
- How to identify project specific tasks for automation.
- Using GitHub actions for automating Drupal project tasks.
- Using CircleCI for automating Drupal project tasks.
At the end of this training, attendees will have an understanding of how to identify project tasks suitable for automation, the basics of creating and using GitHub actions, the basics of creating and using CircleCI. By the end of this training, attendees will complete the following:
- Create a Github repository for a vanilla Drupal 9 website
- Create a GitHub action for running PHP Codesniffer
- Create a CircleCi workflow for running PHPUnit tests.
For this training attendees need the following requirements:
- GitHub account
- Ability to use Git to pull down a project into a local environment
- Code Editor
- (optionally) Local development environment, such as Lando or DDEV.
I have been working with Drupal since 2008. I have done everything from theming, module development, to full on project architecture. I am active in the Drupal community and I submit modules, patches, organize sprints, speak at conferences/camps and help run the Boston Drupal meetup. I am an "Acquia Grand Master" and in 2014 was named an Acquia MVP for the Drupal work I had done.
I am the Director of Web Development at MIT Sloan and lead the development, maintenance and growth of the digital team and properties for the school. I am also the host of the podcast Developing Up (www.developingup.com), where we talk about the non-technical side of being a developer (such as how to work on a team).
You can find me on Drupal.org at mikemiles86, Twitter at mikemiles86 and my personal blog http://www.mike-miles.com