Table des matières

Automatisation & CI/CD

Méthodes CI/CD et outils d'automatisation de tâches.

Versionning

Git

Git est un client pour les logiciels de versioning basés sur Gitlab ou GitHub

Utiliser Git pour push du code sur un repo

Ohshitgit : résoudre des problèmes courants avec Git

Gitlab

GitLab est un logiciel de versioning de code open source auto-hébergeable, avec une interface web et des fonctionnalités d'aide au développement et à l'intégration logicielle.

Installation de Gitlab via docker compose

Générer des clés SSH pour gitlab

Orchestration / Gestion de configuration

Ansible

Ansible est un outil d'orchestration permettant de déployer des configurations sur des nœuds distants via le protocole SSH. Son intérêt principal réside dans son approche déclarative qui simplifie le développement des playbooks :

Formations / tutoriels

📕 Apprendre à utiliser Ansible (OpenClassRoom)

📕 Apprendre à utiliser Ansible (MicroLinux)

Installer Ansible sous WSL (debian/ubuntu)

Créer un utilisateur pour Ansible sur les machines clientes

Debug

Using a SSH password instead of a key is not possible

Outils

Ansible Playbook Grapher : représenter un playbook ansible sous forme de Graph

Puppet

Puppet est un outil d'orchestration comme Ansible, mais utilisant un agent sur les nœuds

Déploiement de configurations Linux avec Puppet

Salt

Salt est un outil d'orchestration comme Ansible, mais utilisant un agent sur les nœuds

📖 Documentation officielle de Salt

Automatisation de flux

n8n

n8n est un workflow d'automatisation Open Source très puissant basé sur NodeJS.

Automatisez vos flux avec n8n et NodeRed

Tout savoir sur n8n

Installation de n8n

Désactiver le cookie sécurisé

Déploiement de machines virtuelles

Outils d'automatisation de déploiement de machines virtuelles.

Vagrant

Vagrant est un utilitaire de déploiement et de provisionnement automatique de machines virtuelles locales. Il permet de créer des environnements de tests ou de formation très rapidement à partir d'images systèmes existantes (générées avec Packer).

Commencer avec Vagrant

[Débug] Ajouter une carte réseau en accès par pont (bridge) à une VM avec Vagrant

Packer

Packer permet de générer des images systèmes préconfigurées pour être déployées sur une plateforme de virtualisation (VirtualBox, VMWare, Microsoft Azure, AWS EC2…)

Découverte de Packer

Terraform

Terraform permet d'automatiser le déploiement d'environnements informatiques préconfigurés dans le cloud.

📖 Documentation officielle Terraform

Terraformer : Créer un fichier Terraform à partir d'une infrastructure existante