Files
morbalint 3e76bb51de
ci/woodpecker/push/build-and-e2e Pipeline was successful
ci/woodpecker/push/unit-lint Pipeline was successful
[CI] fix woodpecker: various issues (#2)
Reviewed-on: #2
2026-08-21 20:29:12 +00:00

92 lines
3.2 KiB
YAML

when:
- event: [push, manual, pull_request]
branch: [main]
services:
docker:
image: docker:28-dind
privileged: true
environment:
DOCKER_TLS_CERTDIR: ""
steps:
prepare-fe-image-tags:
image: alpine:3.21
commands:
- |
COMMIT_SHA="${CI_COMMIT_SHA:-${CI_COMMIT:-${DRONE_COMMIT_SHA:-${DRONE_COMMIT:-}}}}"
if [ -n "$COMMIT_SHA" ]; then
IMAGE_TAG="$(printf '%s' "$COMMIT_SHA" | cut -c1-8)"
else
REF_NAME="${CI_COMMIT_REF:-${CI_COMMIT_BRANCH:-manual}}"
REF_NAME="${REF_NAME#refs/heads/}"
REF_NAME="$(printf '%s' "$REF_NAME" | sed 's#[^A-Za-z0-9_.-]#-#g')"
IMAGE_TAG="$(printf '%s' "${REF_NAME:-manual}-${CI_PIPELINE_NUMBER:-0}" | cut -c1-32)"
fi
echo "Using frontend image tag: $IMAGE_TAG"
printf '%s\n' "$IMAGE_TAG" > .fe-tags
printf '%s\n' "latest" >> .fe-tags
printf '%s\n' "$IMAGE_TAG" > .e2e-tags
printf '%s\n' "latest" >> .e2e-tags
build-and-push-fe-image:
image: docker.io/woodpeckerci/plugin-docker-buildx:latest
privileged: true
depends_on:
- prepare-fe-image-tags
settings:
registry: git.cluster.lab.kemkas.hu
repo: git.cluster.lab.kemkas.hu/${CI_REPO}
context: frontend
dockerfile: frontend/Dockerfile
tags_file: .fe-tags
username:
from_secret: gitea_packages_username
password:
from_secret: gitea_packages_token
build-and-push-e2e-image:
image: docker.io/woodpeckerci/plugin-docker-buildx:latest
privileged: true
depends_on:
- prepare-fe-image-tags
settings:
registry: git.cluster.lab.kemkas.hu
repo: git.cluster.lab.kemkas.hu/${CI_REPO}-e2e
context: e2e
dockerfile: e2e/Dockerfile
tags_file: .e2e-tags
username:
from_secret: gitea_packages_username
password:
from_secret: gitea_packages_token
run-e2e:
image: docker:28-cli
privileged: true
depends_on:
- build-and-push-fe-image
- build-and-push-e2e-image
environment:
DOCKER_HOST: tcp://docker:2375
DOCKER_TLS_CERTDIR: ""
GITEA_PACKAGES_USERNAME:
from_secret: gitea_packages_username
GITEA_PACKAGES_TOKEN:
from_secret: gitea_packages_token
GHCR_IO_REGISTRY_USERNAME:
from_secret: ghcr_io_registry_username
GHCR_IO_REGISTRY_TOKEN:
from_secret: ghcr_io_registry_token
commands:
- |
IMAGE_TAG="$(head -n1 .fe-tags)"
export FRONTEND_IMAGE="git.cluster.lab.kemkas.hu/${CI_REPO}:$${IMAGE_TAG}"
export E2E_IMAGE="git.cluster.lab.kemkas.hu/${CI_REPO}-e2e:$${IMAGE_TAG}"
echo "Using image tag: $${IMAGE_TAG}"
printf '%s' "$${GITEA_PACKAGES_TOKEN}" | docker login git.cluster.lab.kemkas.hu -u "$${GITEA_PACKAGES_USERNAME}" --password-stdin
printf '%s' "$${GHCR_IO_REGISTRY_TOKEN}" | docker login ghcr.io -u "$${GHCR_IO_REGISTRY_USERNAME}" --password-stdin
trap 'docker compose -f e2e.docker-compose.yaml down -v --remove-orphans' EXIT
docker compose -f e2e.docker-compose.yaml pull
docker compose -f e2e.docker-compose.yaml up --no-build --abort-on-container-exit --exit-code-from e2e e2e