From 7a0eaa6764fd0aa41b1e0d3e3baedeaecc11a7f6 Mon Sep 17 00:00:00 2001 From: Markus Pesch Date: Sun, 24 Oct 2021 12:39:00 +0200 Subject: [PATCH] fix(ci): adapt .drone.yml to latest version --- .drone.yml | 191 +++++++++++++++++++++++++++++++++++++++++++++++--- Dockerfile | 6 +- manifest.tmpl | 6 +- 3 files changed, 188 insertions(+), 15 deletions(-) diff --git a/.drone.yml b/.drone.yml index 8978cc7..4c353c1 100644 --- a/.drone.yml +++ b/.drone.yml @@ -11,7 +11,7 @@ steps: - name: markdown lint commands: - markdownlint *.md - image: docker.io/volkerraschek/markdownlint:0.28.1 + image: docker.io/volkerraschek/markdownlint:0.29.0 resources: limits: cpu: 50 @@ -41,6 +41,7 @@ trigger: event: exclude: - tag + --- kind: pipeline type: docker @@ -62,6 +63,7 @@ steps: from_secret: container_image_registry_user password: from_secret: container_image_registry_password + no_cache: true volumes: - name: docker_socket path: /var/run/docker.sock @@ -87,19 +89,22 @@ volumes: host: path: /var/run/docker.sock +depends_on: +- linter + trigger: branch: - master event: - exclude: - - tag + - cron + - push repo: - volker.raschek/db-wait --- kind: pipeline type: docker -name: latest-armv7 +name: latest-arm-v7 platform: os: linux @@ -111,12 +116,13 @@ steps: settings: dockerfile: Dockerfile auto_tag: false - tags: latest-armv7 + tags: latest-arm-v7 repo: volkerraschek/db-wait username: from_secret: container_image_registry_user password: from_secret: container_image_registry_password + no_cache: true - name: notify image: drillster/drone-email @@ -142,12 +148,15 @@ volumes: host: path: /var/run/docker.sock +depends_on: +- linter + trigger: branch: - master event: - exclude: - - tag + - cron + - push repo: - volker.raschek/db-wait @@ -190,16 +199,174 @@ steps: depends_on: - latest-amd64 -- latest-armv7 +- latest-arm-v7 trigger: branch: - master event: - exclude: - - tag + - cron + - push repo: - volker.raschek/db-wait + +--- +kind: pipeline +type: docker +name: tagged-amd64 + +platform: + os: linux + arch: amd64 + +steps: +- name: build + image: plugins/docker + settings: + dockerfile: Dockerfile + auto_tag: true + auto_tag_suffix: amd64 + repo: volkerraschek/db-wait + username: + from_secret: container_image_registry_user + password: + from_secret: container_image_registry_password + build_args: + - VERSION=${DRONE_TAG} + no_cache: true + volumes: + - name: docker_socket + path: /var/run/docker.sock + +- name: notify + image: drillster/drone-email + environment: + PLUGIN_HOST: + from_secret: smtp_host + PLUGIN_USERNAME: + from_secret: smtp_username + PLUGIN_PASSWORD: + from_secret: smtp_password + PLUGIN_FROM: + from_secret: smtp_mail_address + when: + status: + - changed + - failure + +volumes: +- name: docker_socket + host: + path: /var/run/docker.sock + +trigger: + event: + - tag + repo: + - volker.raschek/db-wait + +--- +kind: pipeline +type: docker +name: tagged-arm-v7 + +platform: + os: linux + arch: arm + +steps: +- name: build + image: plugins/docker + settings: + dockerfile: Dockerfile + auto_tag: true + auto_tag_suffix: arm-v7 + repo: volkerraschek/db-wait + username: + from_secret: container_image_registry_user + password: + from_secret: container_image_registry_password + build_args: + - VERSION=${DRONE_TAG} + no_cache: true + volumes: + - name: docker_socket + path: /var/run/docker.sock + +- name: notify + image: drillster/drone-email + environment: + PLUGIN_HOST: + from_secret: smtp_host + PLUGIN_USERNAME: + from_secret: smtp_username + PLUGIN_PASSWORD: + from_secret: smtp_password + PLUGIN_FROM: + from_secret: smtp_mail_address + when: + status: + - changed + - failure + +volumes: +- name: docker_socket + host: + path: /var/run/docker.sock + +trigger: + event: + - tag + repo: + - volker.raschek/db-wait + +--- +kind: pipeline +type: kubernetes +name: tagged-manifest + +steps: +- name: build-manifest + image: plugins/manifest + settings: + auto_tag: true + ignore_missing: true + spec: manifest.tmpl + username: + from_secret: container_image_registry_user + password: + from_secret: container_image_registry_password + +- name: notify + image: docker.io/drillster/drone-email:latest + environment: + PLUGIN_HOST: + from_secret: smtp_host + PLUGIN_USERNAME: + from_secret: smtp_username + PLUGIN_PASSWORD: + from_secret: smtp_password + PLUGIN_FROM: + from_secret: smtp_mail_address + resources: + limits: + cpu: 50 + memory: 25M + when: + status: + - changed + - failure + +depends_on: +- tagged-amd64 +- tagged-arm-v7 + +trigger: + event: + - tag + repo: + - volker.raschek/db-wait + --- kind: pipeline type: kubernetes @@ -243,10 +410,14 @@ steps: - changed - failure +depends_on: +- latest-manifest + trigger: branch: - master event: + - cron - push repo: - volker.raschek/db-wait diff --git a/Dockerfile b/Dockerfile index 88a28d8..07bc55b 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,5 +1,7 @@ FROM docker.io/library/golang:1.17-alpine3.14 AS build +ARG VERSION=latest + COPY . /workspace WORKDIR /workspace @@ -7,9 +9,9 @@ WORKDIR /workspace RUN set -ex && \ apk update && \ apk add git make && \ - make install DESTDIR=/db-wait PREFIX=/usr + make install VERSION=${VERSION} DESTDIR=/db-wait PREFIX=/usr -FROM docker.io/library/alpine:3.14.2 +FROM docker.io/library/alpine:3.14 COPY --from=build /db-wait / diff --git a/manifest.tmpl b/manifest.tmpl index 2aefe92..7875aec 100644 --- a/manifest.tmpl +++ b/manifest.tmpl @@ -13,8 +13,8 @@ manifests: architecture: amd64 os: linux - - image: volkerraschek/db-wait:{{#if build.tag}}{{trimPrefix "v" build.tag}}-{{else}}latest{{/if}}-arm64 + image: volkerraschek/db-wait:{{#if build.tag}}{{trimPrefix "v" build.tag}}-{{else}}latest{{/if}}-arm-v7 platform: - architecture: arm64 + architecture: arm os: linux - variant: v8 \ No newline at end of file + variant: v7 \ No newline at end of file