---
jupytext:
  text_representation:
    extension: .md
    format_name: myst
    format_version: 0.13
    jupytext_version: 1.16.0
kernelspec:
  name: python3
  display_name: Python 3
---

# CI/CD & Infrastructure as Code

Le logiciel n'existe vraiment que lorsqu'il est en production, fiable, et qu'on peut le faire évoluer sans crainte. Ce livre traite de tout ce qui se passe entre le commit et la valeur livrée : pipelines d'intégration et de déploiement continus, infrastructure décrite comme du code, orchestration des conteneurs, observabilité SRE, sécurité intégrée au pipeline et réconciliation GitOps.

Le prérequis est une maîtrise de Linux, Docker/Kubernetes (déploiement, services, volumes, Helm), des architectures microservices et des APIs. Le livre Linux — Administration système de cette collection couvre Ansible en introduction ; ce livre approfondit Ansible et introduit Terraform comme outil d'IaC principal. Le livre Docker couvre CI/CD et GitOps en introduction ; ce livre va nettement plus loin sur chaque axe.

Les exemples de code sont en Python exécutable pour les simulations et visualisations (métriques DORA, burn rate SLO, files d'attente CI, error budget, autoscaling, graphes de pipelines), et en blocs non exécutables pour les configurations réelles (HCL Terraform, YAML GitHub Actions/GitLab CI, manifestes Kubernetes, configs Vault/SOPS, règles OPA).

## Partie I — Philosophie DevOps et CI/CD

- [Culture DevOps et DORA metrics](01_philosophie_devops.md)
- [Intégration continue — principes et patterns](02_integration_continue.md)
- [GitHub Actions en profondeur](03_github_actions.md)
- [GitLab CI/CD](04_gitlab_ci.md)

## Partie II — Infrastructure as Code

- [Terraform — fondations](05_terraform_fondations.md)
- [Terraform — modules et organisation](06_terraform_avance.md)
- [Terraform avec les providers cloud](07_terraform_cloud.md)
- [Ansible — approfondissement](08_ansible_avance.md)
- [Gestion des environnements](09_gestion_environnements.md)

## Partie III — Stratégies de déploiement et Kubernetes avancé

- [Stratégies de déploiement](10_strategies_deploiement.md)
- [Kubernetes — workloads avancés](11_kubernetes_avance.md)
- [Helm — usage avancé](12_helm_avance.md)
- [Service mesh et réseau avancé](13_service_mesh.md)
- [Docker Compose en production](14_docker_compose_avance.md)

## Partie IV — Observabilité SRE

- [SRE, SLO et SLI](15_sre_slo_sli.md)
- [Prometheus et Grafana](16_prometheus_grafana.md)
- [Logs structurés et tracing distribué](17_logs_traces.md)
- [Alerting et on-call](18_alerting_oncall.md)

## Partie V — DevSecOps

- [Gestion des secrets](19_secrets_management.md)
- [Analyse de sécurité dans le pipeline](20_devsecops_scanning.md)
- [Conformité et gouvernance](21_conformite_gouvernance.md)

## Partie VI — GitOps et pratiques de production

- [GitOps avec ArgoCD](22_gitops_argocd.md)
- [Pipeline de production de bout en bout](23_pipeline_complet.md)
- [Maturité DevOps et évolutions](24_maturite_devops.md)

---

**À propos de ce livre.** Ces notes couvrent l'intégralité du cycle DevOps : pipelines CI/CD (GitHub Actions, GitLab CI), Infrastructure as Code (Terraform, Ansible), orchestration avancée (Kubernetes, Helm, service mesh), observabilité SRE (Prometheus, Grafana, tracing), sécurité (Vault, SOPS, scanning, OPA) et GitOps (ArgoCD). Le prérequis est une maîtrise de Linux, Docker/Kubernetes et des architectures microservices. La rédaction a été réalisée par Lôc Cosnier avec l'assistance de Claude (Anthropic). Le contenu a été relu, structuré et validé par l'auteur ; toute erreur restante lui est imputable.
