From 6a9674d63c3385c1ab4c3ce54164a5006ab03ac4 Mon Sep 17 00:00:00 2001
From: Steel <mael.acier@ensiie.fr>
Date: Sun, 20 Apr 2025 17:26:11 +0200
Subject: [PATCH] fix: ghost job naming

---
 README.md            |  3 ++-
 templates/deploy.yml | 49 ++++++++++++--------------------------------
 2 files changed, 15 insertions(+), 37 deletions(-)

diff --git a/README.md b/README.md
index 1c4fa7b..456193e 100644
--- a/README.md
+++ b/README.md
@@ -13,6 +13,7 @@
 | `url`         |                                | string | `""`                                    |
 | `image`       | L'image conteneur à déployer   | string | `""`                                    |
 | `remote`      | L'adresse SSH du serveur Dokku | string | `"ssh://dokku@deploy.runner.iiens.net"` |
+| `branch`      | La branche de déploiement      | string | `"main"`                                |
 
 Exemple :
 
@@ -30,7 +31,7 @@ include:
 
 #### Job créés
 
- - `.dokku` : Propriétés partagées entre les jobs
+ - `.dokku-deploy-$[[ inputs.environment ]]` : Propriétés partagées entre les jobs
  - `deploy-$[[ inputs.environment ]]` : Déploiement de l'environnement
  - `stop-deploy-$[[ inputs.environment ]]` : Arrêt de l'environnement
 
diff --git a/templates/deploy.yml b/templates/deploy.yml
index 04c4c0b..69a901b 100644
--- a/templates/deploy.yml
+++ b/templates/deploy.yml
@@ -8,6 +8,8 @@ spec:
       default: manual
     environment:
       default: production
+    branch:
+      default: main
     url:
       default: ""
     image:
@@ -17,28 +19,13 @@ spec:
       description: "L'adresse SSH du serveur Dokku"
       default: "ssh://dokku@deploy.runner.iiens.net"
 ---
-# .dokku:
-#   stage: $[[ inputs.stage ]]
-#   when: $[[ inputs.when ]]
-#   image: ${CI_DEPENDENCY_PROXY_DIRECT_GROUP_IMAGE_PREFIX}/dokku/ci-docker-image
-#   variables:
-#     GIT_PUSH_FLAGS: --force
-#     BRANCH: main
-#     GIT_REMOTE_URL: $[[ inputs.remote ]]/$[[ inputs.project ]]
-#     DEPLOY_DOCKER_IMAGE: $[[ inputs.image ]]
-#   script:
-#     - echo "Deploying $DEPLOY_DOCKER_IMAGE to $GIT_REMOTE_URL..."
-#     - dokku-deploy
-#   after_script:
-#     - dokku-unlock
-
-"deploy-$[[ inputs.environment ]]":
+".dokku-deploy-$[[ inputs.environment ]]":
   stage: $[[ inputs.stage ]]
   when: $[[ inputs.when ]]
-  image: ${CI_DEPENDENCY_PROXY_DIRECT_GROUP_IMAGE_PREFIX}/dokku/ci-docker-image
+  image: ${CI_DEPENDENCY_PROXY_GROUP_IMAGE_PREFIX}/dokku/ci-docker-image
   variables:
     GIT_PUSH_FLAGS: --force
-    BRANCH: main
+    BRANCH: $[[ inputs.branch ]]
     GIT_REMOTE_URL: $[[ inputs.remote ]]/$[[ inputs.project ]]
     DEPLOY_DOCKER_IMAGE: $[[ inputs.image ]]
   script:
@@ -46,35 +33,25 @@ spec:
     - dokku-deploy
   after_script:
     - dokku-unlock
-  # extends: .dokku
   environment:
     name: $[[ inputs.environment ]]
     url: $[[ inputs.url ]]
+
+"deploy-$[[ inputs.environment ]]":
+  extends: ".dokku-deploy-$[[ inputs.environment ]]"
+  environment:
     action: start
     on_stop: stop-deploy-$[[ inputs.environment ]]
 
 "stop-deploy-$[[ inputs.environment ]]":
-  stage: $[[ inputs.stage ]]
-  # when: $[[ inputs.when ]]
-  image: ${CI_DEPENDENCY_PROXY_DIRECT_GROUP_IMAGE_PREFIX}/dokku/ci-docker-image
-  variables:
-    GIT_PUSH_FLAGS: --force
-    BRANCH: main
-    GIT_REMOTE_URL: $[[ inputs.remote ]]/$[[ inputs.project ]]
-    DEPLOY_DOCKER_IMAGE: $[[ inputs.image ]]
-  # script:
-  #   - echo "Deploying $DEPLOY_DOCKER_IMAGE to $GIT_REMOTE_URL..."
-  #   - dokku-deploy
+  script:
+    - setup-ssh
+    - ssh "$[[ inputs.remote ]]" -- ps:stop "$(parse-app-name)"
   after_script:
     - dokku-unlock
-  # extends: .dokku
+  extends: ".dokku-deploy-$[[ inputs.environment ]]"
   when: manual
   needs:
     - "deploy-$[[ inputs.environment ]]"
   environment:
-    name: $[[ inputs.environment ]]
-    url: $[[ inputs.url ]]
     action: stop
-  script:
-    - setup-ssh
-    - ssh "$[[ inputs.remote ]]" -- ps:stop "$(parse-app-name)"
-- 
GitLab