Course length: 1 day
Description: Attendees will learn how to implement their own GitLab-driven CI/CD pipeline.
Intended audience: Understanding of Git and GitLab basics is required.
Take back to work: Mastery of GitLab CI and the ability to use GitLab to speed up release cycles and improve quality.
- Introduction: Origin of Continuous Integration at ThoughtWorks; widespread adoption; DevOps.
- Architecture: GitLab, GitLab CI Multi Runner, ephemeral test environments.
- Definitions: pipeline, stage, job, build, runner, environment, artifact, cache.
- Configuring pipelines: minimum viable pipeline; bells and whistles.
- Setting up runners: Adding job runners; virtual instance types (shell, Docker, ssh, etc.); tags.
- Checking build status: build outcome indicators; build logs.
- Using pipelines: building, testing and deploying code.
- Troubleshooting: checking build logs; enabling CI_BUILD_TRACE; increasing "loglevel"; interactive access to containers.
- Advanced topics: caches and artifacts; selective and conditional builds; triggering builds on other projects; selecting runners; autoscaling runners; using a container registry; auto-testing before merge; reviewing apps in auto-created environments.
|"I got enough info to be able to start setting up a CI environment.
The hands-on time on an actual computer system was very helpful."
—Don Mies, Systems Architect - Open Source Projects
"Best training we've had so far. Useful and interesting."
"Some of the nuances of this course were outside my skill set, but I absolutely got out of this course what I was hoping: a better understanding of how our office can leverage CI to create a better product more quickly."
"Thanks for the personal attention. I really enjoyed the learning and the day went too quickly."