CI/CD et automatisation
Automatisez vos déploiements avec les fonctions de CI/CD intégrées à Kuploy, et branchez-y vos propres chaînes de build.
Déploiement automatique au push
C'est la façon la plus simple d'automatiser : redéployer à chaque push sur votre branche.
- Allez dans Settings → Source
- Activez Auto Deploy
- Éventuellement, affinez avec :
- Branch filter — ne déployer que depuis certaines branches
- Path filter — ne déployer que si certains fichiers ont changé
Chaque push sur la branche configurée déclenche alors un nouveau déploiement.
Les déclencheurs de build
Kuploy reconnaît plusieurs déclencheurs :
| Déclencheur | Description |
|---|---|
| Push Git | Déploiement automatique au push (si l'option est activée) |
| Manuel | Un clic sur « Deploy » dans le tableau de bord |
| Webhook | Un POST HTTP |
| API | Un appel depuis votre code |
Webhooks
Déclenchez vos déploiements depuis des systèmes extérieurs.
Webhook de déploiement
Chaque application a sa propre URL de webhook de déploiement. Elle se trouve sur l'onglet Deployments de l'application, et non dans les réglages :

- Ouvrez l'application et allez sur l'onglet Deployments
- Copiez la Webhook URL
- Envoyez-y une requête POST pour déclencher un déploiement :
curl -X POST https://votre-instance-kuploy.com/api/deploy/[token]
Quiconque la détient peut déclencher un déploiement de cette application. Traitez-la comme un jeton : gardez-la dans le coffre à secrets de votre chaîne d'intégration, pas dans un fichier versionné. La flèche circulaire à côté régénère l'URL, ce qui invalide aussitôt l'ancienne.
Webhooks sortants
Kuploy peut aussi vous notifier lorsqu'un événement se produit :
| Événement | Description |
|---|---|
deploy.started | Le build commence |
deploy.succeeded | Le déploiement s'est terminé correctement |
deploy.failed | Le déploiement a échoué |
app.health_changed | L'état de santé a changé |
Les webhooks sortants se configurent dans Settings → Webhooks → Add Outbound Webhook.
Intégration avec GitHub Actions
Exemple de workflow déclenchant un déploiement Kuploy une fois les tests passés :
name: Deploy to Kuploy
on:
push:
branches: [main]
jobs:
test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- run: npm ci
- run: npm test
deploy:
needs: test
runs-on: ubuntu-latest
steps:
- name: Trigger Kuploy Deploy
run: |
curl -X POST ${{ secrets.KUPLOY_DEPLOY_WEBHOOK }}
Enregistrez l'URL de votre webhook de déploiement comme secret GitHub (KUPLOY_DEPLOY_WEBHOOK).
Intégration avec GitLab CI
stages:
- test
- deploy
test:
stage: test
script:
- npm ci
- npm test
deploy:
stage: deploy
only:
- main
script:
- curl -X POST $KUPLOY_DEPLOY_WEBHOOK
Minutes de build
Les déploiements automatiques consomment des minutes de build. Quelques réflexes pour en économiser :
- Servez-vous d'un
.dockerignorepour exclure les tests, la documentation et tout ce qui ne sert pas à l'exécution - Profitez du cache de couches Docker en ordonnant les instructions du Dockerfile de la moins à la plus souvent modifiée
- Pour les dépendances qui bougent rarement, envisagez une image déjà construite
- Les builds en échec sont décomptés eux aussi : testez d'abord en local
Stratégies de déploiement
Un déploiement par branche
Créez une application distincte pour chaque environnement :
| Branche | Application | Environnement |
|---|---|---|
main | monapp-production | Production |
staging | monapp-staging | Pré-production |
develop | monapp-dev | Développement |
Chaque application a ses propres variables d'environnement, son domaine et ses réglages de déploiement automatique.
Déploiements de prévisualisation
Pour prévisualiser une pull request :
- Créez une application dédiée aux prévisualisations
- Configurez le déploiement automatique depuis la branche de la PR
- Utilisez un sous-domaine gratuit (par exemple
monapp-pr-123.kuploy.app) - Supprimez l'application de prévisualisation une fois la PR fusionnée