Files
dummy-service/.woodpecker.yml
T
2026-09-18 20:00:28 +02:00

64 lines
2.2 KiB
YAML

steps:
- name: build-db
image: woodpeckerci/plugin-docker-buildx
settings:
repo: registry.ci.poc.mehl.mx/poc/dummy-service-db
dockerfile: Dockerfile.db
tag: ${CI_COMMIT_SHA:0:8}
registry: registry.ci.poc.mehl.mx
username:
from_secret: zot_username
password:
from_secret: zot_password
- name: build-app
image: woodpeckerci/plugin-docker-buildx
settings:
repo: registry.ci.poc.mehl.mx/poc/dummy-service-app
dockerfile: Dockerfile.app
tag: ${CI_COMMIT_SHA:0:8}
registry: registry.ci.poc.mehl.mx
username:
from_secret: zot_username
password:
from_secret: zot_password
- name: publish-deployment-artifact
image: alpine:3.20
environment:
REGISTRY: registry.ci.poc.mehl.mx
IMAGE_TAG: ${CI_COMMIT_SHA:0:8}
SOURCE_COMMIT: ${CI_COMMIT_SHA}
ZOT_USERNAME:
from_secret: zot_username
ZOT_PASSWORD:
from_secret: zot_password
commands:
- apk add --no-cache curl
- curl -sL "https://github.com/oras-project/oras/releases/download/v1.3.4/oras_1.3.4_linux_amd64.tar.gz" -o /tmp/oras.tar.gz
- mkdir -p /tmp/oras-install && tar -xzf /tmp/oras.tar.gz -C /tmp/oras-install
- install /tmp/oras-install/oras /usr/local/bin/oras
- mkdir -p /tmp/deploy-bundle
- cp compose.yaml secrets.prod.env /tmp/deploy-bundle/
- echo "IMAGE_TAG=${IMAGE_TAG}" > /tmp/deploy-bundle/release.env
- echo "SOURCE_COMMIT=${SOURCE_COMMIT}" >> /tmp/deploy-bundle/release.env
- echo "REGISTRY=${REGISTRY}" >> /tmp/deploy-bundle/release.env
- oras login "${REGISTRY}" -u "${ZOT_USERNAME}" -p "${ZOT_PASSWORD}"
- cd /tmp/deploy-bundle && oras push "${REGISTRY}/poc/deploy/dummy-service:${IMAGE_TAG}" compose.yaml secrets.prod.env release.env
- name: trigger-deployment
image: woodpeckerci/plugin-trigger
settings:
repositories:
- mxmehl/deployments
deploy: production
params:
- ARTIFACT=registry.ci.poc.mehl.mx/poc/deploy/dummy-service:${CI_COMMIT_SHA:0:8}
- TARGET=target1
token:
from_secret: woodpecker_trigger_token
when:
branch: ${CI_REPO_DEFAULT_BRANCH}
event: push