| image: docker:latest |
| |
| variables: |
| FF_NETWORK_PER_BUILD: true |
| services: |
| - name: docker:dind |
| command: [--dns=127.0.0.11] |
| |
| build-docker: |
| variables: |
| VID: $CI_COMMIT_BRANCH-$CI_COMMIT_SHORT_SHA |
| rules: |
| - if: $CI_COMMIT_TAG =~ /.+/ |
| variables: |
| VID: $CI_COMMIT_TAG |
| |
| - when: manual |
| stage: build |
| before_script: |
| - apk update |
| - apk add --no-cache git |
| |
| script: |
| - CLEAN_TAG="${CI_COMMIT_TAG:1}" |
| - docker build -f Dockerfile -t korap/kustvakt:$CLEAN_TAG . |
| - ARTIFACT=kustvakt-${CLEAN_TAG}.tar.xz |
| - docker save korap/kustvakt:$CLEAN_TAG | xz > $ARTIFACT |
| artifacts: |
| paths: |
| - kustvakt-*.tar.xz |
| |
| push-dockerhub: |
| stage: deploy |
| image: docker:latest |
| needs: |
| - job: build-docker |
| artifacts: true |
| dependencies: |
| - build-docker |
| rules: |
| - if: $CI_COMMIT_TAG =~ /^v.+/ |
| when: manual |
| - when: never |
| script: |
| - apk update |
| - apk add --no-cache xz |
| - echo "$DOCKERHUB_TOKEN" | docker login -u "$DOCKERHUB_USERNAME" --password-stdin |
| - CLEAN_TAG="${CI_COMMIT_TAG:1}" |
| - ARTIFACT=kustvakt-$CLEAN_TAG.tar.xz |
| - xz -d -c "$ARTIFACT" | docker load |
| - docker tag korap/kustvakt:$CLEAN_TAG korap/kustvakt:latest |
| - docker push korap/kustvakt:$CLEAN_TAG |
| - docker push korap/kustavkt:latest |
| |