Skip to content

CI/CD courses and tutorials

Compare CI/CD courses for continuous integration and delivery, using Jenkins, GitHub Actions and practical automation projects with clear prerequisites.

11 learning resources in this collection

Loading courses

About CI/CD

Continuous integration gives a team frequent evidence about changes being combined. Continuous delivery makes the path toward a release repeatable; continuous deployment goes further by releasing qualifying changes automatically. Tools can execute these steps, but useful tests, identifiable artifacts and explicit release decisions give the process meaning. Start with a small application whose build and behavior you understand.

Choose the delivery skill you need next

Choose a broad process introduction when the terminology and team practices are new. Then compare implementation through Jenkins or GitHub Actions. This collection includes application pipelines, container delivery, Azure infrastructure examples, test automation and workflow security. A course focused on one tool will not cover every delivery concern. Read the syllabus and choose the missing skill rather than collecting several courses that repeat the same setup.

Compare process study with tool practice

The University of Virginia's Continuous Delivery and DevOps course gives process context. Codio offers developer-focused CI/CD study. Jenkins courses show server and agent decisions; Actions courses connect automation to repository events and hosted or self-hosted runners. Testing and defensive security options help examine whether a working pipeline provides trustworthy evidence. These approaches complement one another when selected around a concrete gap.

Treat an automated release as a real change

A green job means its commands completed under the configured rules. It does not establish that the tests were sufficient, that an artifact came from the expected source or that deployment is reversible. Inspect credentials, dependencies, environment differences and cloud charges. Use an isolated practice project, review current provider documentation and keep a record of the conditions under which deployment is allowed.

Test the unsuccessful path as well as the release

Make a sample application pass through a reproducible build, a meaningful check and an identifiable artifact. Break a test deliberately and confirm that unsuitable output cannot progress. Record how an operator would understand the failure and what a retry should do. Add deployment only after you can explain the inputs, permissions, environment and rollback or cleanup decisions.

Explore related topics