labmap/.woodpecker.yaml
2025-06-17 18:16:47 +03:00

121 lines
3.3 KiB
YAML

steps:
generate-tags-frontend:
image: ghcr.io/dvjn/woodpecker-docker-tags-plugin
when:
event: [ push ]
path:
include: [ frontend/** ]
settings:
tags: |
edge -b develop -v develop
edge -b master -v latest
sha
tags_file: .tags-frontend
build-frontend:
image: woodpeckerci/plugin-kaniko
depends_on: [ generate-tags-frontend ]
when:
event: [ push ]
path:
include: [ frontend/** ]
settings:
registry: harbor.dvirlabs.com
repo: my-apps/labmap-frontend
dockerfile: frontend/Dockerfile
context: frontend
tags_file: .tags-frontend
username:
from_secret: DOCKER_USERNAME
password:
from_secret: DOCKER_PASSWORD
generate-tags-backend:
image: ghcr.io/dvjn/woodpecker-docker-tags-plugin
when:
event: [ push ]
path:
include: [ backend/** ]
settings:
tags: |
edge -b develop -v develop
edge -b master -v latest
sha
tags_file: .tags-backend
build-backend:
image: woodpeckerci/plugin-kaniko
depends_on: [ generate-tags-backend ]
when:
event: [ push ]
path:
include: [ backend/** ]
settings:
registry: harbor.dvirlabs.com
repo: my-apps/labmap-backend
dockerfile: backend/Dockerfile
context: backend
tags_file: .tags-backend
username:
from_secret: DOCKER_USERNAME
password:
from_secret: DOCKER_PASSWORD
update-values-frontend:
image: alpine:3.19
when:
event: [ push ]
path:
include: [ frontend/** ]
environment:
GIT_USERNAME:
from_secret: GIT_USERNAME
GIT_TOKEN:
from_secret: GIT_TOKEN
commands:
- apk add --no-cache git yq
- git config --global user.name "woodpecker-bot"
- git config --global user.email "ci@dvirlabs.com"
- git clone "https://$${GIT_USERNAME}:$${GIT_TOKEN}@git.dvirlabs.com/dvirlabs/my-apps.git"
- cd my-apps
- |
if [ "$CI_COMMIT_BRANCH" = "develop" ]; then
TAG="develop-${CI_BUILD_NUMBER}"
else
TAG="${CI_COMMIT_SHA:0:7}"
fi
echo "💡 Setting frontend tag to: $TAG"
yq -i ".frontend.tag = \"$TAG\"" manifests/labmap/values.yaml
git add manifests/labmap/values.yaml
git commit -m "frontend: update tag to $TAG" || echo "No changes"
git push origin HEAD
update-values-backend:
image: alpine:3.19
when:
event: [ push ]
path:
include: [ backend/** ]
environment:
GIT_USERNAME:
from_secret: GIT_USERNAME
GIT_TOKEN:
from_secret: GIT_TOKEN
commands:
- apk add --no-cache git yq
- git config --global user.name "woodpecker-bot"
- git config --global user.email "ci@dvirlabs.com"
- git clone "https://$${GIT_USERNAME}:$${GIT_TOKEN}@git.dvirlabs.com/dvirlabs/my-apps.git"
- cd my-apps
- |
if [ "$CI_COMMIT_BRANCH" = "develop" ]; then
TAG="develop-${CI_BUILD_NUMBER}"
else
TAG="${CI_COMMIT_SHA:0:7}"
fi
echo "💡 Setting backend tag to: $TAG"
yq -i ".backend.tag = \"$TAG\"" manifests/labmap/values.yaml
git add manifests/labmap/values.yaml
git commit -m "backend: update tag to $TAG" || echo "No changes"
git push origin HEAD