ThunderHosting

Déployer à chaque push avec un webhook

Connecter GitHub, GitLab, Gitea ou Forgejo pour que chaque push sur votre branche déploie l'app.

Avec un webhook, chaque push sur votre branche déploie l'app tout seul : Dash récupère le code et redémarre l'app.

1. Copier l'URL et le secret

Ouvrez l'onglet Déploiement de l'app. Enregistrez d'abord le dépôt ; la carte Webhook affiche ensuite l'URL de payload et le secret. Laissez « Déployer à chaque push » activé.

GitHub

  1. Dans le dépôt : Settings → Webhooks → Add webhook.
  2. Payload URL : l'URL de Dash. Content type : application/json.
  3. Secret : le secret de Dash.
  4. Choisissez « Just the push event » et cliquez sur Add webhook. GitHub envoie un ping de test ; il apparaît comme livré.

GitLab

  1. Dans le projet : Settings → Webhooks → Add new webhook.
  2. URL : l'URL de Dash. Secret token : le secret de Dash.
  3. Déclencheur : Push events, puis cliquez sur Add webhook.

Gitea et Forgejo

  1. Dans le dépôt : Settings → Webhooks → Add webhook → Gitea (ou Forgejo).
  2. Target URL : l'URL de Dash, content type application/json, secret : le secret de Dash.
  3. Déclenchez sur les événements push et enregistrez.

Autres services

Tout service ou script peut déployer en envoyant une requête POST avec le secret dans l'en-tête X-Deploy-Token :

bash
curl -X POST "WEBHOOK_URL" \
  -H "X-Deploy-Token: YOUR_SECRET" \
  -H "Content-Type: application/json" \
  -d '{"ref":"refs/heads/main"}'

Traitez le secret comme un mot de passe. S'il fuite, cliquez sur Nouveau secret de webhook dans l'onglet Déploiement et mettez à jour le webhook du dépôt.

Ce qui se passe à chaque push

  • Seuls les push sur la branche configurée déploient ; les autres branches et événements sont ignorés.
  • Les push rapprochés sont regroupés en un seul déploiement.
  • Une offre gratuite en pause ne déploie pas tant que vous ne l'avez pas confirmée.
  • L'historique de l'onglet Déploiement montre chaque déploiement avec commit, message et journal.