From de7c88235e913da9a3085dfd086e1678ba76faa6 Mon Sep 17 00:00:00 2001 From: Markus Pesch Date: Sat, 4 Jan 2025 17:10:19 +0100 Subject: [PATCH] fix(drone): adapt CI pipelines --- .drone.yml | 146 +++++++++++++++++++++++++++++++++++++++++++---------- 1 file changed, 120 insertions(+), 26 deletions(-) diff --git a/.drone.yml b/.drone.yml index 110086d..d28e4ee 100644 --- a/.drone.yml +++ b/.drone.yml @@ -1,7 +1,7 @@ --- kind: pipeline type: kubernetes -name: linter +name: Linters clone: disable: true @@ -11,31 +11,13 @@ platform: arch: amd64 steps: -- name: clone +- name: clone repository image: git.cryptic.systems/volker.raschek/git:1.4.0 - name: helm lint commands: - helm lint - image: git.cryptic.systems/volker.raschek/helm:3.16.4 - resources: - limits: - cpu: 50 - memory: 50M - -- name: markdown lint - commands: - - markdownlint *.md - image: git.cryptic.systems/volker.raschek/markdownlint:0.43.0 - resources: - limits: - cpu: 150 - memory: 150M - -- name: helm template - commands: - - helm template . - image: git.cryptic.systems/volker.raschek/helm:3.16.4 + image: git.cryptic.systems/volker.raschek/helm:3.16.3 resources: limits: cpu: 150 @@ -71,7 +53,119 @@ trigger: --- kind: pipeline type: kubernetes -name: release +name: Unit tests + +clone: + disable: true + +platform: + os: linux + arch: amd64 + +steps: +- name: clone repository + image: git.cryptic.systems/volker.raschek/git:1.4.0 + +- name: helm unittest + commands: + - helm unittest --strict --file 'unittests/**/*.yaml' ./ + image: git.cryptic.systems/volker.raschek/helm:3.16.3 + resources: + limits: + cpu: 150 + memory: 150M + +- name: email-notification + environment: + SMTP_FROM_ADDRESS: + from_secret: smtp_from_address + SMTP_FROM_NAME: + from_secret: smtp_from_name + SMTP_HOST: + from_secret: smtp_host + SMTP_USERNAME: + from_secret: smtp_username + SMTP_PASSWORD: + from_secret: smtp_password + image: git.cryptic.systems/volker.raschek/drone-email:0.1.5 + resources: + limits: + cpu: 150 + memory: 150M + when: + status: + - changed + - failure + +trigger: + event: + exclude: + - tag + +--- +kind: pipeline +type: kubernetes +name: Generate, compare and lint README.md + +clone: + disable: true + +platform: + os: linux + arch: amd64 + +steps: +- name: clone repository + image: git.cryptic.systems/volker.raschek/git:1.4.0 + +- name: execute NPM modules + commands: + - npm install + - npm run readme:link + - npm run readme:lint + - npm run readme:parameters + image: docker.io/library/node:23.3.0-alpine + resources: + limits: + cpu: 150 + memory: 150M + +- name: detect diff + commands: + - git diff --exit-code --name-only README.md + image: git.cryptic.systems/volker.raschek/git:1.4.0 + +- name: email-notification + environment: + SMTP_FROM_ADDRESS: + from_secret: smtp_from_address + SMTP_FROM_NAME: + from_secret: smtp_from_name + SMTP_HOST: + from_secret: smtp_host + SMTP_USERNAME: + from_secret: smtp_username + SMTP_PASSWORD: + from_secret: smtp_password + image: git.cryptic.systems/volker.raschek/drone-email:0.1.5 + resources: + limits: + cpu: 150 + memory: 150M + when: + status: + - changed + - failure + +trigger: + event: + exclude: + - tag + +--- +kind: pipeline +type: kubernetes +name: Release clone: disable: true @@ -80,20 +174,20 @@ platform: os: linux steps: -- name: clone +- name: clone repository image: git.cryptic.systems/volker.raschek/git:1.4.0 - name: release-helm-chart commands: - - helm repo add volker.raschek https://charts.cryptic.systems/volker.raschek + - helm repo add prometheus-exporters https://charts.cryptic.systems/prometheus-exporters - helm package --version ${DRONE_TAG} . - - helm cm-push ${DRONE_REPO_NAME%-charts}-${DRONE_TAG}.tgz volker.raschek + - helm cm-push ${DRONE_REPO_NAME%-charts}-${DRONE_TAG}.tgz prometheus-exporters environment: HELM_REPO_PASSWORD: from_secret: helm_repo_password HELM_REPO_USERNAME: from_secret: helm_repo_username - image: git.cryptic.systems/volker.raschek/helm:3.16.4 + image: git.cryptic.systems/volker.raschek/helm:3.16.3 resources: limits: cpu: 150