kind: pipeline type: kubernetes name: Container & Helm chart trigger: event: exclude: - tag steps: - name: Semantic Release (Dry-run) image: bv11-cr01.bessems.eu/proxy/library/node:20-slim pull: always commands: - | apt-get update - | apt-get install -y --no-install-recommends \ git-core \ ca-certificates - | npm install \ semantic-release \ @semantic-release/commit-analyzer \ @semantic-release/exec \ - | export GIT_CREDENTIALS=$${GIT_USERNAME}:$${GIT_APIKEY} - | npx semantic-release \ --package @semantic-release/exec \ --package semantic-release \ --branches ${DRONE_BRANCH} \ --tag-format "v\$${version}" \ --dry-run \ --plugins @semantic-release/commit-analyzer,@semantic-release/exec \ --analyzeCommits @semantic-release/commit-analyzer \ --verifyRelease @semantic-release/exec \ --verifyReleaseCmd 'echo "$${nextRelease.version}" > .version' environment: GIT_APIKEY: from_secret: git_apikey GIT_USERNAME: djpbessems - name: Container image (Harbor) depends_on: - Semantic Release (Dry-run) image: plugins/kaniko pull: always context: . settings: repo: bv11-cr01.bessems.eu/library/json-server registry: https://bv11-cr01.bessems.eu/v2/ tags: latest username: from_secret: harbor_username password: from_secret: harbor_password - name: Container image (docker.io) depends_on: - Semantic Release (Dry-run) image: gcr.io/kaniko-project/executor:debug pull: always commands: - | curl -L https://github.com/jqlang/jq/releases/download/jq-1.6/jq-linux64 -o /bin/jq chmod +x /bin/jq - | /bin/jq '.auths["bv11-cr01.bessems.eu"].auth="'"$(echo $DOCKER_USERNAME':'$DOCKER_PASSWORD | base64)"'"' --null-input > /kaniko/.docker/config.json - | /kaniko/executor \ --dockerfile=Dockerfile \ --context=dir://. \ --destination=bv11-cr01.bessems.eu/library/json-server:latest environment: DOCKER_USERNAME: from_secret: docker_username DOCKER_PASSWORD: from_secret: docker_password - name: Helm chart (Gitea) depends_on: - Semantic Release (Dry-run) image: bv11-cr01.bessems.eu/proxy/alpine/helm pull: always commands: - | echo '$MIRROR/alpine/edge/community' >> /etc/apk/repositories apk update && apk add \ yq - | helm package ./charts/json-server - | helm plugin install https://github.com/chartmuseum/helm-push - | helm repo add \ --username $GIT_USERNAME \ --password $GIT_APIKEY \ spamasaurus \ https://code.spamasaurus.com/api/packages/$GIT_USERNAME/helm - | helm cm-push \ json-server-*.tgz \ spamasaurus environment: GIT_APIKEY: from_secret: git_apikey GIT_USERNAME: djpbessems - name: Semantic Release depends_on: - Container image (Harbor) - Container image (docker.io) - Helm chart (Gitea) image: bv11-cr01.bessems.eu/proxy/library/node:20-slim pull: always commands: - | echo 'foo'