From d86e10d3ff4dbffe79ddb680c334988edf82f288 Mon Sep 17 00:00:00 2001 From: gitea_admin Date: Wed, 1 Apr 2026 18:26:01 +0000 Subject: [PATCH] Actualiser .woodpecker/pipeline.yml --- .woodpecker/pipeline.yml | 39 ++++++++++++++++++++++----------------- 1 file changed, 22 insertions(+), 17 deletions(-) diff --git a/.woodpecker/pipeline.yml b/.woodpecker/pipeline.yml index e9b56d6..1556ea5 100644 --- a/.woodpecker/pipeline.yml +++ b/.woodpecker/pipeline.yml @@ -1,29 +1,34 @@ kind: pipeline -name: deploy-to-k3s +name: full-devops-stack steps: - # Étape 1 : Les tests (Node.js est automatiquement inclus dans l'image choisie) - test: - image: node:18-alpine - commands: - - node -v - - npm install - - echo "Tests réussis !" + # Étape 1 : Build & Push l'image vers le registre Gitea + build-and-publish: + image: banzaicloud/kaniko-plugin + settings: + registry: gitea.213.165.95.242.sslip.io + repo: gitea_admin/hello-world + tags: latest,${CI_COMMIT_SHA:0:7} + username: + from_secret: registry_user + password: + from_secret: registry_password + # Pour autoriser le registre HTTP/auto-signé + extra_args: --insecure --skip-tls-verify - # Étape 2 : Le déploiement (Utilise une image avec kubectl déjà prêt) - deploy: + # Étape 2 : Déploiement sur K3s + deploy-to-k3s: image: bitnami/kubectl:latest environment: - # On passe le Kubeconfig via un secret Woodpecker (à créer dans l'UI) - KUBECONFIG_DATA: + KUBE_CONFIG: from_secret: k3s_kubeconfig commands: - mkdir -p ~/.kube - - echo "$KUBECONFIG_DATA" > ~/.kube/config - - kubectl apply -f deployment.yaml -n devops-tools - - kubectl rollout status deployment/hello-k3s -n devops-tools + - echo "$KUBE_CONFIG" > ~/.kube/config + # On force la mise à jour de l'image avec le tag du commit actuel + - kubectl set image deployment/hello-k3s node-app=gitea.213.165.95.242.sslip.io/gitea_admin/hello-world:${CI_COMMIT_SHA:0:7} -n devops-tools --insecure-skip-tls-verify + - kubectl rollout status deployment/hello-k3s -n devops-tools --insecure-skip-tls-verify -# Optionnel : Ne déclencher que sur la branche main when: - branch: main event: push + branch: main