2026-09-18 18:46:20 +02:00
|
|
|
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
|
|
|
|
|
ZOT_USERNAME:
|
|
|
|
|
from_secret: zot_username
|
|
|
|
|
ZOT_PASSWORD:
|
|
|
|
|
from_secret: zot_password
|
|
|
|
|
commands:
|
2026-09-18 20:03:39 +02:00
|
|
|
- export IMAGE_TAG=${CI_COMMIT_SHA:0:8}
|
|
|
|
|
- export SOURCE_COMMIT=${CI_COMMIT_SHA}
|
2026-09-18 20:00:28 +02:00
|
|
|
- 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
|
2026-09-18 18:46:20 +02:00
|
|
|
- mkdir -p /tmp/deploy-bundle
|
|
|
|
|
- cp compose.yaml secrets.prod.env /tmp/deploy-bundle/
|
2026-09-18 20:03:39 +02:00
|
|
|
- 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
|
2026-09-18 18:46:20 +02:00
|
|
|
|
2026-09-18 20:28:34 +02:00
|
|
|
- name: prepare-trigger-params
|
|
|
|
|
image: alpine:3.20
|
|
|
|
|
commands:
|
|
|
|
|
- echo "ARTIFACT=registry.ci.poc.mehl.mx/poc/deploy/dummy-service:${CI_COMMIT_SHA:0:8}" > trigger.env
|
|
|
|
|
- echo "TARGET=target1" >> trigger.env
|
|
|
|
|
|
2026-09-18 18:46:20 +02:00
|
|
|
- name: trigger-deployment
|
|
|
|
|
image: woodpeckerci/plugin-trigger
|
|
|
|
|
settings:
|
|
|
|
|
repositories:
|
2026-09-18 20:12:03 +02:00
|
|
|
- mxmehl/poc-deployment@main
|
2026-09-18 18:46:20 +02:00
|
|
|
deploy: production
|
2026-09-18 20:23:33 +02:00
|
|
|
last-successful: true
|
2026-09-18 18:46:20 +02:00
|
|
|
params:
|
2026-09-18 20:28:34 +02:00
|
|
|
- trigger.env
|
2026-09-18 18:46:20 +02:00
|
|
|
token:
|
|
|
|
|
from_secret: woodpecker_trigger_token
|
|
|
|
|
|
|
|
|
|
when:
|
|
|
|
|
branch: ${CI_REPO_DEFAULT_BRANCH}
|
|
|
|
|
event: push
|