From 604470fe95dd852d218e40a17ad772363d74f04e Mon Sep 17 00:00:00 2001 From: Markus Pesch Date: Thu, 15 Jun 2023 16:30:12 +0200 Subject: [PATCH] fix(ci): sync with docker.io --- .drone.yml | 215 ++++++++++++++++++++++++++++++++++++++++++-------- Makefile | 4 +- manifest.tmpl | 10 +-- 3 files changed, 191 insertions(+), 38 deletions(-) diff --git a/.drone.yml b/.drone.yml index ce9da88..5d58c98 100644 --- a/.drone.yml +++ b/.drone.yml @@ -69,16 +69,20 @@ steps: image: docker.io/plugins/docker:20.10.9 settings: auto_tag: false + dockerfile: Dockerfile dry_run: true force_tag: true no_cache: true purge: true + mirror: + from_secret: docker_io_mirror + registry: git.cryptic.systems + repo: git.cryptic.systems/volker.raschek/jq tags: latest-amd64 - repo: volkerraschek/jq username: - from_secret: container_image_registry_user + from_secret: git_cryptic_systems_container_registry_user password: - from_secret: container_image_registry_password + from_secret: git_cryptic_systems_container_registry_password - name: email-notification environment: @@ -131,16 +135,20 @@ steps: image: docker.io/plugins/docker:20.10.9 settings: auto_tag: false + dockerfile: Dockerfile dry_run: true force_tag: true no_cache: true purge: true + mirror: + from_secret: docker_io_mirror + registry: git.cryptic.systems + repo: git.cryptic.systems/volker.raschek/jq tags: latest-arm-v7 - repo: volkerraschek/jq username: - from_secret: container_image_registry_user + from_secret: git_cryptic_systems_container_registry_user password: - from_secret: container_image_registry_password + from_secret: git_cryptic_systems_container_registry_password - name: email-notification environment: @@ -193,16 +201,20 @@ steps: image: docker.io/plugins/docker:20.10.9 settings: auto_tag: false + dockerfile: Dockerfile dry_run: true force_tag: true no_cache: true purge: true + mirror: + from_secret: docker_io_mirror + registry: git.cryptic.systems + repo: git.cryptic.systems/volker.raschek/jq tags: latest-arm64-v8 - repo: volkerraschek/jq username: - from_secret: container_image_registry_user + from_secret: git_cryptic_systems_container_registry_user password: - from_secret: container_image_registry_password + from_secret: git_cryptic_systems_container_registry_password - name: email-notification environment: @@ -255,15 +267,19 @@ steps: image: docker.io/plugins/docker:20.10.9 settings: auto_tag: false + dockerfile: Dockerfile force_tag: true no_cache: true purge: true + mirror: + from_secret: docker_io_mirror + registry: git.cryptic.systems + repo: git.cryptic.systems/volker.raschek/jq tags: latest-amd64 - repo: volkerraschek/jq username: - from_secret: container_image_registry_user + from_secret: git_cryptic_systems_container_registry_user password: - from_secret: container_image_registry_password + from_secret: git_cryptic_systems_container_registry_password - name: email-notification environment: @@ -315,15 +331,19 @@ steps: image: docker.io/plugins/docker:20.10.9 settings: auto_tag: false + dockerfile: Dockerfile force_tag: true no_cache: true purge: true + mirror: + from_secret: docker_io_mirror + registry: git.cryptic.systems + repo: git.cryptic.systems/volker.raschek/jq tags: latest-arm-v7 - repo: volkerraschek/jq username: - from_secret: container_image_registry_user + from_secret: git_cryptic_systems_container_registry_user password: - from_secret: container_image_registry_password + from_secret: git_cryptic_systems_container_registry_password - name: email-notification environment: @@ -375,15 +395,19 @@ steps: image: docker.io/plugins/docker:20.10.9 settings: auto_tag: false + dockerfile: Dockerfile force_tag: true no_cache: true purge: true + mirror: + from_secret: docker_io_mirror + registry: git.cryptic.systems + repo: git.cryptic.systems/volker.raschek/jq tags: latest-arm64-v8 - repo: volkerraschek/jq username: - from_secret: container_image_registry_user + from_secret: git_cryptic_systems_container_registry_user password: - from_secret: container_image_registry_password + from_secret: git_cryptic_systems_container_registry_password - name: email-notification environment: @@ -434,9 +458,9 @@ steps: ignore_missing: true spec: manifest.tmpl username: - from_secret: container_image_registry_user + from_secret: git_cryptic_systems_container_registry_user password: - from_secret: container_image_registry_password + from_secret: git_cryptic_systems_container_registry_password - name: email-notification environment: @@ -465,6 +489,66 @@ depends_on: - latest-arm-v7 - latest-arm64-v8 +trigger: + branch: + - master + event: + - cron + - push + repo: + - volker.raschek/jq-docker + +--- +kind: pipeline +type: kubernetes +name: latest-sync + +clone: + disable: true + +depends_on: +- latest-manifest + +steps: +- name: clone + image: git.cryptic.systems/volker.raschek/git:1.2.1 + +- name: latest-sync + commands: + - skopeo sync --all --src=docker --src-creds=$SRC_CRED_USERNAME:$SRC_CRED_PASSWORD --dest=docker --dest-creds=$DEST_CRED_USERNAME:$DEST_CRED_PASSWORD git.cryptic.systems/volker.raschek/jq docker.io/volkerraschek + environment: + SRC_CRED_USERNAME: + from_secret: git_cryptic_systems_container_registry_user + SRC_CRED_PASSWORD: + from_secret: git_cryptic_systems_container_registry_password + DEST_CRED_USERNAME: + from_secret: container_image_registry_user + DEST_CRED_PASSWORD: + from_secret: container_image_registry_password + image: quay.io/skopeo/stable:v1.12.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: docker.io/volkerraschek/drone-email:0.1.1 + resources: + limits: + cpu: 150 + memory: 150M + when: + status: + - changed + - failure + trigger: branch: - master @@ -495,14 +579,18 @@ steps: settings: auto_tag: true auto_tag_suffix: amd64 + dockerfile: Dockerfile force_tag: true no_cache: true purge: true - repo: volkerraschek/jq + mirror: + from_secret: docker_io_mirror + registry: git.cryptic.systems + repo: git.cryptic.systems/volker.raschek/jq username: - from_secret: container_image_registry_user + from_secret: git_cryptic_systems_container_registry_user password: - from_secret: container_image_registry_password + from_secret: git_cryptic_systems_container_registry_password build_args: - JQ_VERSION=${DRONE_TAG} @@ -551,14 +639,18 @@ steps: settings: auto_tag: true auto_tag_suffix: arm-v7 + dockerfile: Dockerfile force_tag: true no_cache: true purge: true - repo: volkerraschek/jq + mirror: + from_secret: docker_io_mirror + registry: git.cryptic.systems + repo: git.cryptic.systems/volker.raschek/jq username: - from_secret: container_image_registry_user + from_secret: git_cryptic_systems_container_registry_user password: - from_secret: container_image_registry_password + from_secret: git_cryptic_systems_container_registry_password build_args: - JQ_VERSION=${DRONE_TAG} @@ -607,14 +699,18 @@ steps: settings: auto_tag: true auto_tag_suffix: arm64-v8 + dockerfile: Dockerfile force_tag: true no_cache: true purge: true - repo: volkerraschek/jq + mirror: + from_secret: docker_io_mirror + registry: git.cryptic.systems + repo: git.cryptic.systems/volker.raschek/jq username: - from_secret: container_image_registry_user + from_secret: git_cryptic_systems_container_registry_user password: - from_secret: container_image_registry_password + from_secret: git_cryptic_systems_container_registry_password build_args: - JQ_VERSION=${DRONE_TAG} @@ -661,9 +757,9 @@ steps: ignore_missing: true spec: manifest.tmpl username: - from_secret: container_image_registry_user + from_secret: git_cryptic_systems_container_registry_user password: - from_secret: container_image_registry_password + from_secret: git_cryptic_systems_container_registry_password - name: email-notification environment: @@ -697,3 +793,60 @@ trigger: - tag repo: - volker.raschek/jq-docker + +--- +kind: pipeline +type: kubernetes +name: tagged-sync + +clone: + disable: true + +steps: +- name: clone + image: git.cryptic.systems/volker.raschek/git:1.2.1 + +- name: tagged-sync + commands: + - skopeo sync --all --src=docker --src-creds=$SRC_CRED_USERNAME:$SRC_CRED_PASSWORD --dest=docker --dest-creds=$DEST_CRED_USERNAME:$DEST_CRED_PASSWORD git.cryptic.systems/volker.raschek/jq docker.io/volkerraschek + environment: + SRC_CRED_USERNAME: + from_secret: git_cryptic_systems_container_registry_user + SRC_CRED_PASSWORD: + from_secret: git_cryptic_systems_container_registry_password + DEST_CRED_USERNAME: + from_secret: container_image_registry_user + DEST_CRED_PASSWORD: + from_secret: container_image_registry_password + image: quay.io/skopeo/stable:v1.12.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: docker.io/volkerraschek/drone-email:0.1.1 + resources: + limits: + cpu: 150 + memory: 150M + when: + status: + - changed + - failure + +depends_on: +- tagged-manifest + +trigger: + event: + - tag + repo: + - volker.raschek/jq-docker diff --git a/Makefile b/Makefile index bf4ad45..15cebf9 100644 --- a/Makefile +++ b/Makefile @@ -9,8 +9,8 @@ CONTAINER_RUNTIME?=$(shell which podman) # JQ_IMAGE_REGISTRY_NAME # Defines the name of the new container to be built using several variables. -JQ_IMAGE_REGISTRY_NAME:=docker.io -JQ_IMAGE_REGISTRY_USER:=volkerraschek +JQ_IMAGE_REGISTRY_NAME:=git.cryptic.systems +JQ_IMAGE_REGISTRY_USER:=volker.raschek JQ_IMAGE_NAMESPACE?=${JQ_IMAGE_REGISTRY_USER} JQ_IMAGE_NAME:=jq diff --git a/manifest.tmpl b/manifest.tmpl index 7d30c03..2b8343e 100644 --- a/manifest.tmpl +++ b/manifest.tmpl @@ -1,4 +1,4 @@ -image: volkerraschek/jq:{{#if build.tag}}{{trimPrefix "v" build.tag}}{{else}}latest{{/if}} +image: git.cryptic.systems/volker.raschek/jq:{{#if build.tag}}{{trimPrefix "v" build.tag}}{{else}}latest{{/if}} {{#if build.tags}} tags: {{#each build.tags}} @@ -8,19 +8,19 @@ tags: {{/if}} manifests: - - image: volkerraschek/jq:{{#if build.tag}}{{trimPrefix "v" build.tag}}{{else}}latest{{/if}}-amd64 + image: git.cryptic.systems/volker.raschek/jq:{{#if build.tag}}{{trimPrefix "v" build.tag}}{{else}}latest{{/if}}-amd64 platform: architecture: amd64 os: linux - - image: volkerraschek/jq:{{#if build.tag}}{{trimPrefix "v" build.tag}}{{else}}latest{{/if}}-arm-v7 + image: git.cryptic.systems/volker.raschek/jq:{{#if build.tag}}{{trimPrefix "v" build.tag}}{{else}}latest{{/if}}-arm-v7 platform: architecture: arm os: linux variant: v7 - - image: volkerraschek/jq:{{#if build.tag}}{{trimPrefix "v" build.tag}}{{else}}latest{{/if}}-arm64-v8 + image: git.cryptic.systems/volker.raschek/jq:{{#if build.tag}}{{trimPrefix "v" build.tag}}{{else}}latest{{/if}}-arm64-v8 platform: architecture: arm64 os: linux - variant: v8 \ No newline at end of file + variant: v8