164 lines
4.3 KiB
YAML
164 lines
4.3 KiB
YAML
steps:
|
|
debug-env:
|
|
name: debug-env
|
|
image: alpine
|
|
when:
|
|
event: [ push ]
|
|
commands:
|
|
- echo "🔍 Available ENV variables:"
|
|
- printenv | sort
|
|
|
|
# === FRONTEND ===
|
|
|
|
generate-tags-frontend:
|
|
name: 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
|
|
raw -v develop-${CI_COMMIT_SHA:0:7}
|
|
tags_file: .tags-frontend
|
|
|
|
print-tags-frontend:
|
|
name: print-tags-frontend
|
|
image: alpine
|
|
when:
|
|
event: [ push ]
|
|
depends_on: [ generate-tags-frontend ]
|
|
commands:
|
|
- echo "🔥 Tags to push for frontend:"
|
|
- cat .tags-frontend
|
|
|
|
build-frontend:
|
|
name: build-frontend
|
|
image: woodpeckerci/plugin-kaniko
|
|
when:
|
|
event: [ push ]
|
|
path:
|
|
include: [ frontend/** ]
|
|
depends_on: [ print-tags-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
|
|
|
|
update-values-frontend:
|
|
name: update-values-frontend
|
|
image: alpine:3.19
|
|
when:
|
|
event: [ push ]
|
|
path:
|
|
include: [ frontend/** ]
|
|
depends_on: [ build-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_COMMIT_SHA:0:7}"
|
|
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
|
|
|
|
# === BACKEND ===
|
|
|
|
generate-tags-backend:
|
|
name: 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
|
|
raw -v develop-${CI_COMMIT_SHA:0:7}
|
|
tags_file: .tags-backend
|
|
|
|
print-tags-backend:
|
|
name: print-tags-backend
|
|
image: alpine
|
|
when:
|
|
event: [ push ]
|
|
depends_on: [ generate-tags-backend ]
|
|
commands:
|
|
- echo "🔥 Tags to push for backend:"
|
|
- cat .tags-backend
|
|
|
|
build-backend:
|
|
name: build-backend
|
|
image: woodpeckerci/plugin-kaniko
|
|
when:
|
|
event: [ push ]
|
|
path:
|
|
include: [ backend/** ]
|
|
depends_on: [ print-tags-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-backend:
|
|
name: update-values-backend
|
|
image: alpine:3.19
|
|
when:
|
|
event: [ push ]
|
|
path:
|
|
include: [ backend/** ]
|
|
depends_on: [ build-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_COMMIT_SHA:0:7}"
|
|
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
|