Files
mail-autoconfig/.woodpecker/build.yaml
mifi a6950a01d9
Some checks failed
ci/woodpecker/push/build Pipeline failed
Changes to kick it off anew
2026-02-01 21:45:03 -03:00

58 lines
2.0 KiB
YAML

# Build and Publish Docker image
# Secrets required in Woodpecker: gitea_registry_username, gitea_package_token, discord_webhook_url
when:
branch: main
event: push
steps:
- name: Docker image build
image: docker:latest
volumes:
- /var/run/docker.sock:/var/run/docker.sock
commands:
- set -e
- echo "=== Building Docker image ==="
- 'echo "Commit SHA: ${CI_COMMIT_SHA:0:8}"'
- |
docker build \
--tag git.mifi.dev/mifi-holdings/mail-autoconfig:${CI_COMMIT_SHA} \
--tag git.mifi.dev/mifi-holdings/mail-autoconfig:latest \
--label "git.commit=${CI_COMMIT_SHA}" \
--label "git.branch=${CI_COMMIT_BRANCH}" \
.
- name: Push to registry
image: docker:latest
environment:
REGISTRY_URL: git.mifi.dev
REGISTRY_REPO: git.mifi.dev/mifi-holdings/mail-autoconfig
REGISTRY_USERNAME:
from_secret: gitea_registry_username
REGISTRY_PASSWORD:
from_secret: gitea_package_token
volumes:
- /var/run/docker.sock:/var/run/docker.sock
depends_on:
- Docker image build
commands:
- set -e
- echo "=== Pushing to registry ==="
- echo "$REGISTRY_PASSWORD" | docker login "$REGISTRY_URL" -u "$REGISTRY_USERNAME" --password-stdin
- docker push $REGISTRY_REPO:${CI_COMMIT_SHA}
- docker push $REGISTRY_REPO:latest
- echo "✓ Images pushed successfully"
- name: Send Deploy Status Notification
image: curlimages/curl
environment:
DISCORD_WEBHOOK_URL:
from_secret: discord_webhook_url
commands:
- |
EMOJI="💩"
[ "$CI_PIPELINE_STATUS" = "success" ] && EMOJI="🎉"
BODY=$(printf '{"username":"WoodpeckerBot","content":"[%s - Build #%s] Publish %s %s"}' "$CI_REPO" "$CI_PIPELINE_NUMBER" "$CI_PIPELINE_STATUS" "$EMOJI")
curl -sS -X POST -H "Content-Type: application/json" -d "$BODY" "$DISCORD_WEBHOOK_URL"
when:
- status: [ success, failure ]