CI/CD Workflows Why 🤖 Automation? Harnessing the Power of Automation in GitLab, GitHub, and Similar Platforms The Benefits of Automation for Non-Software Developers Conclusion Navigating 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 of an Automation Script Minimal Automation Script How to Trigger an Automation Script How to Define Variables for an Automation Script GitLab Pipelines How to Handle Automation Scripts Minimal Content of an Automation Script Minimal Automation Script How to Trigger an Automation Script How to Define Variables for an Automation Script 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