37 Commits

Author SHA1 Message Date
28ac8406d2 chore(deps): update quay.io/skopeo/stable docker tag to v1.13.2
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2023-09-03 15:42:18 +02:00
93ed88ff4d chore(deps): update docker.io/plugins/docker docker tag to v20.14.4
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2023-09-03 14:37:35 +02:00
8c203119bd chore(deps): update git.cryptic.systems/volker.raschek/markdownlint docker tag to v0.36.0
Some checks failed
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is failing
2023-09-03 13:51:50 +02:00
079441effe fix: upgrade to createrepo v0.20.1
Some checks failed
continuous-integration/drone/push Build is failing
2023-07-08 18:44:43 +02:00
b7c519303b fix(ci): migrate to git.cryptic.systems
Some checks failed
continuous-integration/drone/push Build is failing
2023-07-08 18:30:39 +02:00
e98e980dc7 fix(renovate): automerge patch versions of used container images in docker files
All checks were successful
continuous-integration/drone/push Build is passing
2023-06-18 21:53:18 +02:00
626d2484e1 feat(ci): use docker.io/plugins/manifest v1.4.0
Some checks failed
continuous-integration/drone/push Build is failing
2023-06-18 14:47:29 +02:00
3cd1a7976b chore(deps): update dependency git.cryptic.systems/volker.raschek/markdownlint to v0.35.0
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2023-06-17 21:52:54 +02:00
0548436135 feat(ci): use git.cryptic.systems/volker.raschek/drone-email v0.1.2
Some checks failed
continuous-integration/drone/push Build is failing
2023-06-17 15:52:37 +02:00
ccf8504c35 chore(deps): update dependency git.cryptic.systems/volker.raschek/markdownlint to v0.34.0
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2023-06-09 10:01:17 +02:00
3e2c9bb75a Merge pull request 'chore(deps): update dependency docker.io/library/rockylinux to v9.2' (#8) from renovate/docker.io-library-rockylinux-9.x into master
All checks were successful
continuous-integration/drone/push Build is passing
Reviewed-on: #8
2023-06-09 06:20:12 +00:00
74b8bc9d6d chore(deps): update dependency docker.io/library/rockylinux to v9.2
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2023-06-08 22:51:09 +02:00
cc827f1a03 chore(deps): update dependency docker.io/plugins/docker to v20.14.4
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2023-06-08 21:31:32 +02:00
9e0f029469 feat(ci): use git.cryptic.systems/volker.raschek/markdownlint v0.33.0
All checks were successful
continuous-integration/drone/push Build is passing
2023-06-08 19:38:23 +02:00
ddf9db6200 feat(ci): use docker.io/plugins/drone v20.10.9
All checks were successful
continuous-integration/drone/push Build is passing
2023-06-08 19:24:44 +02:00
8fcf8c8afd feat(ci): migrate to volker.raschek/git v1.2.1
All checks were successful
continuous-integration/drone/push Build is passing
2023-06-08 18:22:02 +02:00
083f10c4f7 fix: replace curl with curl-minimal, add bash-completion
All checks were successful
continuous-integration/drone/push Build is passing
2023-02-05 10:18:02 +01:00
366b8dc784 chore(deps): update dependency docker.io/library/rockylinux to v9.1
Some checks failed
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is failing
2023-01-07 21:41:16 +01:00
6c44e2fac3 chore(deps): update dependency docker.io/volkerraschek/markdownlint to v0.33.0
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2023-01-07 19:52:46 +01:00
6f21ddc0af fix(ci): typo
All checks were successful
continuous-integration/drone/push Build is passing
2022-08-21 18:35:29 +02:00
d042f6f942 chore(deps): update dependency docker.io/volkerraschek/markdownlint to v0.32.2
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2022-08-21 16:52:32 +02:00
465ed81044 fix(ci): use docker.io/volkerraschek/drone-email:0.1.0
All checks were successful
continuous-integration/drone/push Build is passing
2022-07-26 16:40:41 +02:00
cd4e028655 chore(deps): update dependency docker.io/volkerraschek/markdownlint to v0.32.1
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2022-07-25 13:11:37 +02:00
d32561ade3 chore(deps): update dependency docker.io/volkerraschek/markdownlint to v0.32.0
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2022-07-18 11:11:49 +02:00
238231bb1f chore(deps): update dependency docker.io/library/rockylinux to v9
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2022-07-14 22:20:35 +02:00
540c1140db fix: bump to v0.17.7
All checks were successful
continuous-integration/drone/tag Build is passing
continuous-integration/drone/push Build is passing
2022-07-14 18:08:29 +02:00
b0abbc18f2 Merge pull request 'chore(deps): update dependency docker.io/library/rockylinux to v8.6' (#1) from renovate/docker.io-library-rockylinux-8.x into master
All checks were successful
continuous-integration/drone/push Build is passing
Reviewed-on: #1
2022-07-14 15:55:41 +00:00
cf9af61d27 chore(deps): update dependency docker.io/library/rockylinux to v8.6
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2022-07-07 22:20:38 +02:00
31ca77ac27 fix(ci): resource limits
All checks were successful
continuous-integration/drone/push Build is passing
2022-05-22 13:08:30 +02:00
f76331e583 fix(ci): use fully qualified image name
Some checks reported errors
continuous-integration/drone/push Build encountered an error
2022-05-22 13:00:41 +02:00
e1ebc19f00 fix: use podman instead of docker
All checks were successful
continuous-integration/drone/push Build is passing
2022-05-03 17:27:02 +02:00
fda97006ff fix(ci): renovate
All checks were successful
continuous-integration/drone/push Build is passing
2022-05-03 17:25:29 +02:00
ae994ebab2 test(renovate): automerge
All checks were successful
continuous-integration/drone/push Build is passing
2022-05-03 17:17:37 +02:00
0bb533f16e test(renovate): automerge
All checks were successful
continuous-integration/drone/push Build is passing
2022-05-03 16:02:08 +02:00
9e37f72c0a fix: extract repo dir
All checks were successful
continuous-integration/drone/push Build is passing
2022-05-03 15:56:04 +02:00
903be7c5ad fix: add createrepo.sh
All checks were successful
continuous-integration/drone/push Build is passing
2022-05-03 12:36:37 +02:00
c1d6c38223 fix(README): description
All checks were successful
continuous-integration/drone/push Build is passing
2022-05-03 12:06:34 +02:00
7 changed files with 408 additions and 191 deletions

View File

@ -3,34 +3,42 @@ kind: pipeline
type: kubernetes
name: linter
clone:
disable: true
platform:
os: linux
steps:
- name: clone
image: git.cryptic.systems/volker.raschek/git:1.2.1
- name: markdown lint
commands:
- markdownlint *.md
image: docker.io/volkerraschek/markdownlint:0.31.1
image: git.cryptic.systems/volker.raschek/markdownlint:0.36.0
resources:
limits:
cpu: 50
memory: 50M
cpu: 150
memory: 150M
- name: email-notification
environment:
PLUGIN_HOST:
SMTP_FROM_ADDRESS:
from_secret: smtp_from_address
SMTP_FROM_NAME:
from_secret: smtp_from_name
SMTP_HOST:
from_secret: smtp_host
PLUGIN_USERNAME:
SMTP_USERNAME:
from_secret: smtp_username
PLUGIN_PASSWORD:
SMTP_PASSWORD:
from_secret: smtp_password
PLUGIN_FROM:
from_secret: smtp_mail_address
image: docker.io/drillster/drone-email:latest
image: git.cryptic.systems/volker.raschek/drone-email:0.1.2
resources:
limits:
cpu: 50
memory: 25M
cpu: 150
memory: 150M
when:
status:
- changed
@ -46,13 +54,22 @@ kind: pipeline
type: docker
name: dry-run-amd64
clone:
disable: true
depends_on:
- linter
platform:
os: linux
arch: amd64
steps:
- name: clone
image: git.cryptic.systems/volker.raschek/git:1.2.1
- name: build
image: plugins/docker
image: docker.io/plugins/docker:20.14.4
settings:
auto_tag: false
dockerfile: Dockerfile
@ -60,40 +77,34 @@ steps:
force_tag: true
no_cache: true
purge: true
repo: volkerraschek/createrepo
mirror:
from_secret: docker_io_mirror
registry: git.cryptic.systems
repo: git.cryptic.systems/volker.raschek/createrepo
tags: latest-amd64
username:
from_secret: container_image_registry_user
from_secret: git_cryptic_systems_container_registry_user
password:
from_secret: container_image_registry_password
volumes:
- name: docker_socket
path: /var/run/docker.sock
from_secret: git_cryptic_systems_container_registry_password
- name: notify
image: drillster/drone-email
- name: email-notification
environment:
PLUGIN_HOST:
SMTP_FROM_ADDRESS:
from_secret: smtp_from_address
SMTP_FROM_NAME:
from_secret: smtp_from_name
SMTP_HOST:
from_secret: smtp_host
PLUGIN_USERNAME:
SMTP_USERNAME:
from_secret: smtp_username
PLUGIN_PASSWORD:
SMTP_PASSWORD:
from_secret: smtp_password
PLUGIN_FROM:
from_secret: smtp_mail_address
image: git.cryptic.systems/volker.raschek/drone-email:0.1.2
when:
status:
- changed
- failure
volumes:
- name: docker_socket
host:
path: /var/run/docker.sock
depends_on:
- linter
trigger:
branch:
exclude:
@ -109,13 +120,22 @@ kind: pipeline
type: docker
name: dry-run-arm64-v8
clone:
disable: true
depends_on:
- linter
platform:
os: linux
arch: arm64
steps:
- name: clone
image: git.cryptic.systems/volker.raschek/git:1.2.1
- name: build
image: plugins/docker
image: docker.io/plugins/docker:20.14.4
settings:
auto_tag: false
dockerfile: Dockerfile
@ -123,40 +143,34 @@ steps:
force_tag: true
no_cache: true
purge: true
repo: volkerraschek/createrepo
mirror:
from_secret: docker_io_mirror
registry: git.cryptic.systems
repo: git.cryptic.systems/volker.raschek/createrepo
tags: latest-arm64-v8
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: notify
image: drillster/drone-email
- name: email-notification
environment:
PLUGIN_HOST:
SMTP_FROM_ADDRESS:
from_secret: smtp_from_address
SMTP_FROM_NAME:
from_secret: smtp_from_name
SMTP_HOST:
from_secret: smtp_host
PLUGIN_USERNAME:
SMTP_USERNAME:
from_secret: smtp_username
PLUGIN_PASSWORD:
SMTP_PASSWORD:
from_secret: smtp_password
PLUGIN_FROM:
from_secret: smtp_mail_address
volumes:
- name: docker_socket
path: /var/run/docker.sock
image: git.cryptic.systems/volker.raschek/drone-email:0.1.2
when:
status:
- changed
- failure
volumes:
- name: docker_socket
host:
path: /var/run/docker.sock
depends_on:
- linter
trigger:
branch:
exclude:
@ -172,53 +186,56 @@ kind: pipeline
type: docker
name: latest-amd64
clone:
disable: true
depends_on:
- linter
platform:
os: linux
arch: amd64
steps:
- name: clone
image: git.cryptic.systems/volker.raschek/git:1.2.1
- name: build
image: plugins/docker
image: docker.io/plugins/docker:20.14.4
settings:
auto_tag: false
dockerfile: Dockerfile
force_tag: true
no_cache: true
purge: true
repo: volkerraschek/createrepo
mirror:
from_secret: docker_io_mirror
registry: git.cryptic.systems
repo: git.cryptic.systems/volker.raschek/createrepo
tags: latest-amd64
username:
from_secret: container_image_registry_user
from_secret: git_cryptic_systems_container_registry_user
password:
from_secret: container_image_registry_password
volumes:
- name: docker_socket
path: /var/run/docker.sock
from_secret: git_cryptic_systems_container_registry_password
- name: notify
image: drillster/drone-email
- name: email-notification
environment:
PLUGIN_HOST:
SMTP_FROM_ADDRESS:
from_secret: smtp_from_address
SMTP_FROM_NAME:
from_secret: smtp_from_name
SMTP_HOST:
from_secret: smtp_host
PLUGIN_USERNAME:
SMTP_USERNAME:
from_secret: smtp_username
PLUGIN_PASSWORD:
SMTP_PASSWORD:
from_secret: smtp_password
PLUGIN_FROM:
from_secret: smtp_mail_address
image: git.cryptic.systems/volker.raschek/drone-email:0.1.2
when:
status:
- changed
- failure
volumes:
- name: docker_socket
host:
path: /var/run/docker.sock
depends_on:
- linter
trigger:
branch:
- master
@ -233,53 +250,56 @@ kind: pipeline
type: docker
name: latest-arm64-v8
clone:
disable: true
depends_on:
- linter
platform:
os: linux
arch: arm64
steps:
- name: clone
image: git.cryptic.systems/volker.raschek/git:1.2.1
- name: build
image: plugins/docker
image: docker.io/plugins/docker:20.14.4
settings:
auto_tag: false
dockerfile: Dockerfile
force_tag: true
no_cache: true
purge: true
repo: volkerraschek/createrepo
mirror:
from_secret: docker_io_mirror
registry: git.cryptic.systems
repo: git.cryptic.systems/volker.raschek/createrepo
tags: latest-arm64-v8
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: notify
image: drillster/drone-email
- name: email-notification
environment:
PLUGIN_HOST:
SMTP_FROM_ADDRESS:
from_secret: smtp_from_address
SMTP_FROM_NAME:
from_secret: smtp_from_name
SMTP_HOST:
from_secret: smtp_host
PLUGIN_USERNAME:
SMTP_USERNAME:
from_secret: smtp_username
PLUGIN_PASSWORD:
SMTP_PASSWORD:
from_secret: smtp_password
PLUGIN_FROM:
from_secret: smtp_mail_address
volumes:
- name: docker_socket
path: /var/run/docker.sock
image: git.cryptic.systems/volker.raschek/drone-email:0.1.2
when:
status:
- changed
- failure
volumes:
- name: docker_socket
host:
path: /var/run/docker.sock
depends_on:
- linter
trigger:
branch:
- master
@ -294,41 +314,114 @@ kind: pipeline
type: kubernetes
name: latest-manifest
clone:
disable: true
depends_on:
- latest-amd64
- latest-arm64-v8
# docker.io/plugins/manifest only for amd64 architectures available
node_selector:
kubernetes.io/os: linux
kubernetes.io/arch: amd64
steps:
- name: clone
image: git.cryptic.systems/volker.raschek/git:1.2.1
- name: build-manifest
image: plugins/manifest
image: docker.io/plugins/manifest:1.4.0
settings:
auto_tag: false
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: notify
image: docker.io/drillster/drone-email:latest
- name: email-notification
environment:
PLUGIN_HOST:
SMTP_FROM_ADDRESS:
from_secret: smtp_from_address
SMTP_FROM_NAME:
from_secret: smtp_from_name
SMTP_HOST:
from_secret: smtp_host
PLUGIN_USERNAME:
SMTP_USERNAME:
from_secret: smtp_username
PLUGIN_PASSWORD:
SMTP_PASSWORD:
from_secret: smtp_password
PLUGIN_FROM:
from_secret: smtp_mail_address
image: git.cryptic.systems/volker.raschek/drone-email:0.1.2
resources:
limits:
cpu: 50
memory: 25M
cpu: 150
memory: 150M
when:
status:
- changed
- failure
trigger:
branch:
- master
event:
- cron
- push
repo:
- volker.raschek/createrepo-docker
---
kind: pipeline
type: kubernetes
name: latest-sync
clone:
disable: true
depends_on:
- latest-amd64
- latest-arm64-v8
- 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/createrepo 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.13.2
- 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.2
resources:
limits:
cpu: 150
memory: 150M
when:
status:
- changed
- failure
trigger:
branch:
@ -344,52 +437,55 @@ kind: pipeline
type: docker
name: tagged-amd64
clone:
disable: true
platform:
os: linux
arch: amd64
steps:
- name: clone
image: git.cryptic.systems/volker.raschek/git:1.2.1
- name: build
image: plugins/docker
image: docker.io/plugins/docker:20.14.4
settings:
auto_tag_suffix: amd64
auto_tag: true
auto_tag_suffix: amd64
dockerfile: Dockerfile
force_tag: true
no_cache: true
purge: true
repo: volkerraschek/createrepo
mirror:
from_secret: docker_io_mirror
registry: git.cryptic.systems
repo: git.cryptic.systems/volker.raschek/createrepo
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:
- CEATEREPO_VERSION=${DRONE_TAG}
volumes:
- name: docker_socket
path: /var/run/docker.sock
- CREATEREPO_VERSION=${DRONE_TAG}
- name: notify
image: drillster/drone-email
- name: email-notification
environment:
PLUGIN_HOST:
SMTP_FROM_ADDRESS:
from_secret: smtp_from_address
SMTP_FROM_NAME:
from_secret: smtp_from_name
SMTP_HOST:
from_secret: smtp_host
PLUGIN_USERNAME:
SMTP_USERNAME:
from_secret: smtp_username
PLUGIN_PASSWORD:
SMTP_PASSWORD:
from_secret: smtp_password
PLUGIN_FROM:
from_secret: smtp_mail_address
image: git.cryptic.systems/volker.raschek/drone-email:0.1.2
when:
status:
- changed
- failure
volumes:
- name: docker_socket
host:
path: /var/run/docker.sock
trigger:
event:
- tag
@ -401,52 +497,55 @@ kind: pipeline
type: docker
name: tagged-arm64-v8
clone:
disable: true
platform:
os: linux
arch: arm64
steps:
- name: clone
image: git.cryptic.systems/volker.raschek/git:1.2.1
- name: build
image: plugins/docker
image: docker.io/plugins/docker:20.14.4
settings:
auto_tag_suffix: arm64-v8
auto_tag: true
auto_tag_suffix: arm64-v8
dockerfile: Dockerfile
force_tag: true
no_cache: true
purge: true
repo: volkerraschek/createrepo
mirror:
from_secret: docker_io_mirror
registry: git.cryptic.systems
repo: git.cryptic.systems/volker.raschek/createrepo
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:
- CEATEREPO_VERSION=${DRONE_TAG}
volumes:
- name: docker_socket
path: /var/run/docker.sock
- CREATEREPO_VERSION=${DRONE_TAG}
- name: notify
image: drillster/drone-email
- name: email-notification
environment:
PLUGIN_HOST:
SMTP_FROM_ADDRESS:
from_secret: smtp_from_address
SMTP_FROM_NAME:
from_secret: smtp_from_name
SMTP_HOST:
from_secret: smtp_host
PLUGIN_USERNAME:
SMTP_USERNAME:
from_secret: smtp_username
PLUGIN_PASSWORD:
SMTP_PASSWORD:
from_secret: smtp_password
PLUGIN_FROM:
from_secret: smtp_mail_address
image: git.cryptic.systems/volker.raschek/drone-email:0.1.2
when:
status:
- changed
- failure
volumes:
- name: docker_socket
host:
path: /var/run/docker.sock
trigger:
event:
- tag
@ -458,42 +557,112 @@ kind: pipeline
type: kubernetes
name: tagged-manifest
clone:
disable: true
depends_on:
- tagged-amd64
- tagged-arm64-v8
# docker.io/plugins/manifest only for amd64 architectures available
node_selector:
kubernetes.io/os: linux
kubernetes.io/arch: amd64
steps:
- name: clone
image: git.cryptic.systems/volker.raschek/git:1.2.1
- name: build-manifest
image: plugins/manifest
image: docker.io/plugins/manifest:1.4.0
settings:
auto_tag: true
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: notify
image: docker.io/drillster/drone-email:latest
- name: email-notification
environment:
PLUGIN_HOST:
SMTP_FROM_ADDRESS:
from_secret: smtp_from_address
SMTP_FROM_NAME:
from_secret: smtp_from_name
SMTP_HOST:
from_secret: smtp_host
PLUGIN_USERNAME:
SMTP_USERNAME:
from_secret: smtp_username
PLUGIN_PASSWORD:
SMTP_PASSWORD:
from_secret: smtp_password
PLUGIN_FROM:
from_secret: smtp_mail_address
image: git.cryptic.systems/volker.raschek/drone-email:0.1.2
resources:
limits:
cpu: 50
memory: 25M
cpu: 150
memory: 150M
when:
status:
- changed
- failure
trigger:
event:
- tag
repo:
- volker.raschek/createrepo-docker
---
kind: pipeline
type: kubernetes
name: tagged-sync
clone:
disable: true
depends_on:
- tagged-manifest
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/createrepo 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.13.2
- 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.2
resources:
limits:
cpu: 150
memory: 150M
when:
status:
- changed
- failure
depends_on:
- tagged-amd64
- tagged-arm64-v8
trigger:
event:
- tag

View File

@ -1,9 +1,9 @@
FROM docker.io/library/rockylinux:8.5
FROM docker.io/library/rockylinux:9.2.20230513
ARG CREATEREPO_VERSION
RUN yum update --assumeyes && \
yum install --assumeyes bash curl
yum install --assumeyes bash bash-completion
RUN if [ -z ${CREATEREPO_VERSION+x} ]; then \
yum install --assumeyes createrepo_c; \

View File

@ -1,11 +1,11 @@
# CREATEREPO_VERSION
# Only required to install a specifiy version
CREATEREPO_VERSION?=0.17.2
CREATEREPO_VERSION?=0.20.1
# CONTAINER_RUNTIME
# The CONTAINER_RUNTIME variable will be used to specified the path to a
# container runtime. This is needed to start and run a container image.
CONTAINER_RUNTIME?=$(shell which docker)
CONTAINER_RUNTIME?=$(shell which podman)
# CREATEREPO_IMAGE_REGISTRY_NAME
# Defines the name of the new container to be built using several variables.

View File

@ -4,6 +4,33 @@
[![Docker Pulls](https://img.shields.io/docker/pulls/volkerraschek/createrepo)](https://hub.docker.com/r/volkerraschek/createrepo)
This project contains all sources to build the container image
`docker.io/volkerraschek/createrepo`. The primary goal of this project is to package
the binary `createrepo` as container image to provide the functionally for CI/CD
workflows or for systems which does not provide or based on RHEL.
`docker.io/volkerraschek/createrepo` and the shell script `createrepo.sh`.
The primary goal of this project is to package the binary `createrepo` as
container image to provide the functionally for CI/CD workflows or for systems
which does contains the binary.
## createrepo.sh
The shell script `createrepo.sh` is a wrapper for the binary `createrepo`, which
is not available depending on the distribution. It starts the container image
`docker.io/volkerraschek/createrepo` in the background to call the binary. For
this reason, a container runtime like `docker` or `podman` is necessary.
### Installation
The script can be installed via the following command:
```bash
curl https://git.cryptic.systems/volker.raschek/createrepo-docker/raw/branch/master/createrepo.sh --output - | sudo tee /usr/local/bin/createrepo.sh && sudo chmod +x /usr/local/bin/createrepo.sh
```
### Usage
The script forwards all arguments directly to the binary running inside the
container. For this reason, all arguments from the original binary can be used.
```bash
createrepo.sh --update . # Update local repository
createrepo.sh --update /var/www/my-repo # Update repository based on specific path
```

20
createrepo.sh Normal file
View File

@ -0,0 +1,20 @@
#!/bin/bash
set -e
CONTAINER_RUNTIME=$(which docker)
CREATEREPO_IMAGE_FULLY_QUALIFIED=docker.io/volkerraschek/createrepo:0.17.2
CUSTOM_UID=$(getent passwd ${USER} | cut -d ':' -f 3)
CUSTOM_GID=$(getent passwd ${USER} | cut -d ':' -f 4)
# Extract last element of passed arguments
REPO_DIR=${@: -1}
${CONTAINER_RUNTIME} run \
--rm \
--volume ${REPO_DIR}:${REPO_DIR} \
--workdir ${REPO_DIR} \
--user ${CUSTOM_UID}:${CUSTOM_GID} \
${CREATEREPO_IMAGE_FULLY_QUALIFIED} ${@}

View File

@ -1,4 +1,4 @@
image: volkerraschek/createrepo:{{#if build.tag}}{{trimPrefix "v" build.tag}}{{else}}latest{{/if}}
image: git.cryptic.systems/volker.raschek/createrepo:{{#if build.tag}}{{trimPrefix "v" build.tag}}{{else}}latest{{/if}}
{{#if build.tags}}
tags:
{{#each build.tags}}
@ -7,13 +7,11 @@ tags:
- "latest"
{{/if}}
manifests:
-
image: volkerraschek/createrepo:{{#if build.tag}}{{trimPrefix "v" build.tag}}{{else}}latest{{/if}}-amd64
- image: git.cryptic.systems/volker.raschek/createrepo:{{#if build.tag}}{{trimPrefix "v" build.tag}}{{else}}latest{{/if}}-amd64
platform:
architecture: amd64
os: linux
-
image: volkerraschek/createrepo:{{#if build.tag}}{{trimPrefix "v" build.tag}}{{else}}latest{{/if}}-arm64-v8
- image: git.cryptic.systems/volker.raschek/createrepo:{{#if build.tag}}{{trimPrefix "v" build.tag}}{{else}}latest{{/if}}-arm64-v8
platform:
architecture: arm64
os: linux

View File

@ -12,23 +12,26 @@
"matchUpdateTypes": [ "minor", "patch"]
},
{
"addLabels": [ "renovate/createrepo", "renovate/automerge" ],
"automerge": false,
"matchPackageNames": [ "createrepo" ],
"matchManagers": [ "regex" ]
"description": "Automatically update patch version of used container images in docker files",
"addLabels": [ "renovate/container-image", "renovate/automerge" ],
"automerge": true,
"matchBaseBranches": [ "master" ],
"matchManagers": [ "dockerfile" ],
"matchUpdateTypes": [ "patch" ]
}
],
"rebaseLabel": "renovate/rebase",
"rebaseWhen": "behind-base-branch",
"regexManagers": [
{
"description": "Update version",
"description": "Update container image of createrepo.sh",
"fileMatch": [
"^Makefile$"
"^createrepo.sh$"
],
"matchStrings": [
"CREATE_REPO_VERSION\\?=(?<currentValue>.*) # renovate: datasource=(?<datasource>.*) depName=(?<depName>.*)( lookupName=(?<lookupName>.*))?( versioning=(?<versioning>.*))?"
]
"^CREATEREPO_IMAGE_FULLY_QUALIFIED=(?<depName>.*):(?<currentValue>.*)$"
],
"datasourceTemplate": "docker"
}
]
}