Dans la communauté Kodika Nous avons récemment discuté de la rapidité et de la facilité avec lesquelles on peut déployer automatiquement. Sans magie inutile et en termes simples, voici un petit guide qui vous aidera à mettre en œuvre le CI/CD en une seule soirée. Même si vous n'en avez jamais entendu parler auparavant 👀
🔧 Qu'est-ce que CI/CD ?
CI (Continuous Integration) — assemblage automatique et test du code à chaque commit.
CD (Continuous Delivery ou Deployment) — déploiement automatique des mises à jour sur le serveur après avoir passé toutes les vérifications.
Ensemble, ils vous donnent la possibilité de « remplir » les fonctionnalités immédiatement après le push — sans danser avec un tambour sur le produit 🔥
📦 Pile minimale pour le déploiement automatique
💻 GitHub (ou GitLab, Bitbucket)
🛠️ Système CI/CD : GitHub Actions / GitLab CI / Drone CI / Jenkins
📂 Serveur avec accès SSH (par exemple, Ubuntu VPS)
⚙️ Docker ou Node/PM2 — au choix
🪄 Comment ça marche : étape par étape
Tu pousses le code dans le dépôt
GitHub Actions (ou autre CI) se déclenche
Le code est en cours de compilation, les tests sont en cours d'exécution
Si tout va bien, le déploiement sur le serveur est effectué
👨🍳 Exemple : déploiement d'une application Node.js avec GitHub Actions
À la racine du projet, créez le fichier .github/workflows/deploy.yml :
name: 🚀 Deploy to Server
on:
push:
branches:
- main
jobs:
build-and-deploy:
runs-on: ubuntu-latest
steps:
- name: Checkout repo
uses: actions/checkout@v3
- name: Install dependencies
run: npm ci
- name: Run tests
run: npm test
- name: Deploy via SSH
uses: appleboy/ssh-action@v1
with:
host: ${{ secrets.HOST }}
username: ${{ secrets.USERNAME }}
key: ${{ secrets.SSH_KEY }}
script: |
cd ~/app-folder
git pull origin main
npm ci
pm2 restart app🔐 Tous les secrets (clé SSH, login, IP) sont ajoutés via GitHub Secrets — c'est plus sûr.
⚡ Quel sera le résultat final ?
Chaque fois que vous poussez le code, il est automatiquement :
va
en cours de test
déployé sur le serveur
Et tout cela sans une seule action manuelle 🤯
📌 Conseils de praticiens
Configurer une branche séparée
staging— pour les tests avant de télécharger surmainAjoutez des notifications à Telegram ou Slack via Webhook
Élargissez progressivement le pipeline : linters, migrations, alertes
🧠 Conclusion
CI/CD ne signifie pas « trop compliqué ». Il s'agit de « une fois que vous l'avez configuré, vous pouvez l'oublier ». Et surtout, c'est déjà la norme de l'industrie. Si vous voulez être un développeur recherché, l'automatisation est votre incontournable.
🤖 Où s'entraîner ?
Dans application Kodik Vous pouvez non seulement apprendre Git et CI/CD, mais aussi réaliser de vrais projets avec déploiement automatique. Tout est interactif, étape par étape et avec des commentaires 💬
Et nous avons aussi Communauté Telegram, où vous pouvez poser une question, discuter du pipeline et trouver une équipe pour un projet de compagnie.
💬 Écrivez dans les commentaires si vous voulez un guide sur le déploiement de conteneurs Docker ou la configuration de CI pour Python. Discutons-en et faisons-le ! 😉
