CI/CD Workflows# Authors# Dr. Jonas I. Liechti Dr. Matteo Delucchi Editors# Barbara Mejia Content# Why 🤖 Automation? Harnessing the Power of Automation The Benefits for Non-Software Developers Conclusion The Challenges of Automation How Automation Helps Creating CI/CD Scripts A YAML Primer What is YAML? YAML Syntax 1. Basic Structure 3. Strings 2. Lists 4. Comments Conclusion Understanding Variable Substitution From YAML to Automation GitHub Workflows How to Handle Automation Scripts Minimal Content A Minimal Example How to Trigger Workflows How to Define Variables Some Advanced Features Recap: Weekend Out Exercise What Actually Happened? Understanding the Chaos Key Takeaways Reflection Questions GitLab Pipelines How to Handle Automation Scripts Minimal Content A Minimal Example How to Trigger Pipelines How to Define Variables Some Advanced Features Workflows vs. Pipelines - Overview Workflows vs. Pipelines - by Example Runners What Are Runners in CI/CD? Types of Runners Configuring Runners Communication with Remote Service 🤗 Embrace automation 🤗 Recap Feature Branch Approach - with Automation Test the development branch Report code coverage in the Merge/Pull Request Perform linting checks on the development branch Test an anticipated merge commit Perform a version increase upon merge Cleanup branches after merge Automate deployment to production or staging environment Some considerations Start Small! Create your own Docker images Debugging CI/CD Pipelines/Workflows Exercise LaTeX Article CI/CD Pipeline