Topic: DevOps | Audience: Beginner
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.
Training Length: Half Day | Room: Connecticut (Craig-Lee 205) | Timeslot: Half Day Morning (9:00 AM - 12:00 PM)
Trainers: Mike Miles