diff --git a/.woodpecker/deploy.yaml b/.woodpecker/deploy.yaml index 4550369..2fc42cf 100644 --- a/.woodpecker/deploy.yaml +++ b/.woodpecker/deploy.yaml @@ -32,6 +32,34 @@ steps: . - echo "✓ Docker image built successfully" + - name: Send Build Status Notification (success) + image: curlimages/curl + environment: + DISCORD_WEBHOOK_URL: + from_secret: discord_webhook_url + commands: + - | + BODY=$(printf '{"username":"WoodpeckerBot","content":"[%s - Build #%s] Build success 🎉"}' "$CI_REPO" "$CI_PIPELINE_NUMBER") + curl -sS -X POST -H "Content-Type: application/json" -d "$BODY" "$DISCORD_WEBHOOK_URL" + depends_on: + - 'Docker image build' + when: + - status: [success] + + - name: Send Build Status Notification (failure) + image: curlimages/curl + environment: + DISCORD_WEBHOOK_URL: + from_secret: discord_webhook_url + commands: + - | + BODY=$(printf '{"username":"WoodpeckerBot","content":"[%s - Build #%s] Build failure 💩"}' "$CI_REPO" "$CI_PIPELINE_NUMBER") + curl -sS -X POST -H "Content-Type: application/json" -d "$BODY" "$DISCORD_WEBHOOK_URL" + depends_on: + - Docker image build + when: + - status: [failure] + - name: 'Push to registry' image: docker:latest environment: @@ -59,6 +87,34 @@ steps: depends_on: - 'Docker image build' + - name: Send Push Status Notification (success) + image: curlimages/curl + environment: + DISCORD_WEBHOOK_URL: + from_secret: discord_webhook_url + commands: + - | + BODY=$(printf '{"username":"WoodpeckerBot","content":"[%s - Build #%s] Push to registry success 🎉"}' "$CI_REPO" "$CI_PIPELINE_NUMBER") + curl -sS -X POST -H "Content-Type: application/json" -d "$BODY" "$DISCORD_WEBHOOK_URL" + depends_on: + - 'Push to registry' + when: + - status: [success] + + - name: Send Push Status Notification (failure) + image: curlimages/curl + environment: + DISCORD_WEBHOOK_URL: + from_secret: discord_webhook_url + commands: + - | + BODY=$(printf '{"username":"WoodpeckerBot","content":"[%s - Build #%s] Push to registry failure 💩"}' "$CI_REPO" "$CI_PIPELINE_NUMBER") + curl -sS -X POST -H "Content-Type: application/json" -d "$BODY" "$DISCORD_WEBHOOK_URL" + depends_on: + - 'Push to registry' + when: + - status: [failure] + - name: 'Trigger Portainer stack redeploy' image: curlimages/curl:latest environment: @@ -78,3 +134,31 @@ steps: echo "✓ Portainer redeploy triggered (HTTP $code)" depends_on: - 'Push to registry' + + - name: Send Deploy Status Notification (success) + image: curlimages/curl + environment: + DISCORD_WEBHOOK_URL: + from_secret: discord_webhook_url + commands: + - | + BODY=$(printf '{"username":"WoodpeckerBot","content":"[%s - Build #%s] Production Deploy success 🎉"}' "$CI_REPO" "$CI_PIPELINE_NUMBER") + curl -sS -X POST -H "Content-Type: application/json" -d "$BODY" "$DISCORD_WEBHOOK_URL" + depends_on: + - 'Trigger Portainer stack redeploy' + when: + - status: [success] + + - name: Send Deploy Status Notification (failure) + image: curlimages/curl + environment: + DISCORD_WEBHOOK_URL: + from_secret: discord_webhook_url + commands: + - | + BODY=$(printf '{"username":"WoodpeckerBot","content":"[%s - Build #%s] Production Deploy failure 💩"}' "$CI_REPO" "$CI_PIPELINE_NUMBER") + curl -sS -X POST -H "Content-Type: application/json" -d "$BODY" "$DISCORD_WEBHOOK_URL" + depends_on: + - Trigger Portainer stack redeploy + when: + - status: [failure]