diff --git a/.woodpecker.yaml b/.woodpecker.yaml index ff4e354..128d99a 100644 --- a/.woodpecker.yaml +++ b/.woodpecker.yaml @@ -1,67 +1,54 @@ 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 + name: Build & Push Frontend image: woodpeckerci/plugin-kaniko when: - event: [ push ] + event: [ push, pull_request, tag ] 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 + tags: + - latest + - ${CI_COMMIT_SHA:0:7} + - ${CI_COMMIT_BRANCH}-${CI_COMMIT_SHA:0:7} + username: + from_secret: DOCKER_USERNAME + password: + from_secret: DOCKER_PASSWORD + + + build-backend: + name: Build & Push Backend + image: woodpeckerci/plugin-kaniko + when: + event: [ push, pull_request, tag ] + path: + include: [ backend/** ] + settings: + registry: harbor.dvirlabs.com + repo: my-apps/labmap-backend + dockerfile: backend/Dockerfile + context: backend + tags: + - latest + - ${CI_COMMIT_SHA:0:7} + - ${CI_COMMIT_BRANCH}-${CI_COMMIT_SHA:0:7} username: from_secret: DOCKER_USERNAME password: from_secret: DOCKER_PASSWORD update-values-frontend: - name: update-values-frontend + name: Update frontend tag in values.yaml image: alpine:3.19 when: event: [ push ] path: include: [ frontend/** ] - depends_on: [ build-frontend ] environment: GIT_USERNAME: from_secret: GIT_USERNAME @@ -71,11 +58,11 @@ steps: - 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" + - 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}" + TAG="develop-${CI_BUILD_NUMBER}" else TAG="${CI_COMMIT_SHA:0:7}" fi @@ -83,62 +70,15 @@ steps: 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 + git push origin master update-values-backend: - name: update-values-backend + name: Update backend tag in values.yaml image: alpine:3.19 when: event: [ push ] path: include: [ backend/** ] - depends_on: [ build-backend ] environment: GIT_USERNAME: from_secret: GIT_USERNAME @@ -148,11 +88,11 @@ steps: - 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" + - 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}" + TAG="develop-${CI_BUILD_NUMBER}" else TAG="${CI_COMMIT_SHA:0:7}" fi @@ -160,4 +100,4 @@ steps: 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 + git push origin master diff --git a/backend/main.py b/backend/main.py index 0f6b923..21d4717 100644 --- a/backend/main.py +++ b/backend/main.py @@ -81,6 +81,5 @@ def list_icons(): return categories - if __name__ == "__main__": uvicorn.run(app, host="0.0.0.0", port=8000)