Compare commits

..

80 Commits

Author SHA1 Message Date
d4d14aace7
chore(ci): use upstream container image registry
Some checks failed
continuous-integration/drone/push Build is failing
2025-04-02 21:30:48 +02:00
d7462bfd36
chore(ci): rollback plugins/docker to 20.18.6
Some checks failed
continuous-integration/drone/push Build is failing
2025-04-02 10:43:06 +02:00
9102653939
chore(ci): use container image mirror
Some checks failed
continuous-integration/drone/push Build is failing
2025-04-02 09:53:41 +02:00
614bc5c52f
chore(deps): update git.cryptic.systems/volker.raschek/markdownlint docker tag to v0.44.0
Some checks failed
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is failing
2025-04-01 19:05:08 +00:00
01907606ce
fix(Makefile): make FQIN configurable
Some checks failed
continuous-integration/drone/push Build is failing
2025-04-01 20:45:07 +02:00
d7491888c6
fix(Makefile): pull image from git.cryptic.systems
Some checks failed
continuous-integration/drone/push Build is failing
2025-04-01 20:37:12 +02:00
8cb74a3152
chore(deps): update volkerraschek/markdownlint docker tag to v0.43.0
Some checks failed
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is failing
2025-03-30 19:03:55 +00:00
ad4317cf0e
chore(renovate): use configuration preset
Some checks failed
continuous-integration/drone/push Build is failing
2025-03-30 20:49:29 +02:00
a7aaa7b100
chore(renovate): use configuration preset
Some checks failed
continuous-integration/drone/push Build is failing
2025-03-30 20:48:50 +02:00
ab76d2e80c
chore(deps): update docker.io/plugins/docker docker tag to v20.18.8
Some checks failed
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is failing
2025-03-26 20:03:33 +00:00
2bc7928a99
chore(deps): update quay.io/skopeo/stable docker tag to v1.18.0
Some checks failed
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is failing
2025-02-28 17:04:10 +00:00
8261cefaf1
chore(deps): update docker.io/plugins/docker docker tag to v20.18.7
Some checks failed
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is failing
2025-02-18 08:03:10 +00:00
ea552ae0cb
chore(deps): update docker.io/plugins/docker docker tag to v20.18.6
Some checks failed
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is failing
2024-12-25 05:03:20 +00:00
969ebe7f83
chore(deps): update git.cryptic.systems/volker.raschek/markdownlint docker tag to v0.43.0
Some checks failed
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is failing
2024-12-03 14:05:11 +00:00
5e6f033398
chore(deps): update docker.io/plugins/docker docker tag to v20.18.5
Some checks failed
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is failing
2024-11-29 11:03:29 +00:00
4bd01c4c66
chore(deps): update git.cryptic.systems/volker.raschek/git docker tag to v1.4.0
Some checks failed
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is failing
2024-11-25 23:03:57 +00:00
f4099d1476
chore(deps): update quay.io/skopeo/stable docker tag to v1.17.0
Some checks failed
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is failing
2024-11-21 17:03:24 +00:00
a1d8fe227c
chore(deps): update quay.io/skopeo/stable docker tag to v1.16.1
Some checks failed
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is failing
2024-10-14 19:52:42 +00:00
4eae4680c6
chore(deps): update git.cryptic.systems/volker.raschek/markdownlint docker tag to v0.42.0
Some checks reported errors
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build was killed
2024-10-14 19:05:00 +00:00
13081a41cc
chore(deps): update docker.io/plugins/docker docker tag to v20.18.4
Some checks failed
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is failing
2024-08-22 16:03:15 +00:00
4576b7c8c1
chore(deps): update docker.io/plugins/docker docker tag to v20.18.3
Some checks failed
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is failing
2024-08-18 19:03:48 +00:00
1ae6b75ee6
chore(deps): update quay.io/skopeo/stable docker tag to v1.16.0
Some checks failed
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is failing
2024-08-18 16:03:32 +00:00
9ff52d9607
chore(deps): update docker.io/plugins/docker docker tag to v20.18.2
Some checks failed
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is failing
2024-07-23 19:04:50 +00:00
bd7cba8651
chore(deps): update quay.io/skopeo/stable docker tag to v1.15.2
Some checks failed
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is failing
2024-07-16 16:02:51 +00:00
d5e5b6db55
chore(deps): update docker.io/plugins/docker docker tag to v20.18.1
Some checks failed
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is failing
2024-07-15 22:03:39 +00:00
03c7386e00
chore(deps): update quay.io/skopeo/stable docker tag to v1.15.1
Some checks failed
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is failing
2024-06-01 16:01:33 +00:00
7f7cfcdcda
chore(deps): update git.cryptic.systems/volker.raschek/markdownlint docker tag to v0.41.0
Some checks failed
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is failing
2024-05-27 13:05:41 +00:00
53ad08aabd
chore(deps): update docker.io/plugins/docker docker tag to v20.17.5
Some checks failed
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is failing
2024-05-20 13:04:29 +00:00
b96bf9da2e
chore(deps): update docker.io/plugins/docker docker tag to v20.17.4
Some checks failed
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is failing
2024-05-13 10:02:19 +00:00
7525f7b431
chore(deps): update git.cryptic.systems/volker.raschek/markdownlint docker tag to v0.40.0
Some checks failed
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is failing
2024-05-07 22:05:45 +00:00
868f202c91
chore(deps): update quay.io/skopeo/stable docker tag to v1.15.0
Some checks failed
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is failing
2024-04-20 01:02:59 +00:00
83df321204
chore(deps): update docker.io/plugins/docker docker tag to v20.17.3
Some checks failed
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is failing
2024-04-19 22:03:01 +00:00
cbdd6227eb
fix(ci): markdownlint
All checks were successful
continuous-integration/drone Build is passing
2024-04-19 22:03:59 +02:00
a25147746c Merge pull request 'chore(deps): update git.cryptic.systems/volker.raschek/markdownlint docker tag to v0.39.0' (#19) from renovate/git.cryptic.systems-volker.raschek-markdownlint-0.x into master
Reviewed-on: #19
2024-02-15 17:59:30 +00:00
74d87bc20a
chore(deps): update git.cryptic.systems/volker.raschek/markdownlint docker tag to v0.39.0 2024-01-28 23:02:37 +00:00
991b2d51d9
fix(renovate): remove automerge options 2024-01-21 14:34:38 +01:00
bff3f0864c Merge pull request 'chore(deps): update quay.io/skopeo/stable docker tag to v1.14.0' (#17) from renovate/quay.io-skopeo-stable-1.x into master
Reviewed-on: #17
2023-12-20 11:17:35 +00:00
033751b0b5 Merge pull request 'chore(deps): update git.cryptic.systems/volker.raschek/markdownlint docker tag to v0.38.0' (#18) from renovate/git.cryptic.systems-volker.raschek-markdownlint-0.x into master
Reviewed-on: #18
2023-12-20 11:17:00 +00:00
85d86a2f75 chore(deps): update git.cryptic.systems/volker.raschek/markdownlint docker tag to v0.38.0 2023-12-09 14:31:00 +00:00
3d4a9eda14 chore(deps): update quay.io/skopeo/stable docker tag to v1.14.0 2023-12-06 17:16:31 +01:00
1744831564
fix(renovate): include dep updates of docker.io/plugins/docker 2023-10-30 21:29:19 +01:00
765a7ecd59 Merge pull request 'chore(deps): update git.cryptic.systems/volker.raschek/git docker tag to v1.3.1' (#15) from renovate/git.cryptic.systems-volker.raschek-git-1.x into master
Reviewed-on: #15
2023-10-02 07:51:45 +00:00
9532212c29 Merge pull request 'chore(deps): update git.cryptic.systems/volker.raschek/drone-email docker tag to v0.1.5' (#16) from renovate/git.cryptic.systems-volker.raschek-drone-email-0.x into master
Reviewed-on: #16
2023-10-02 07:51:21 +00:00
6e49477f18 chore(deps): update git.cryptic.systems/volker.raschek/drone-email docker tag to v0.1.5 2023-10-02 00:16:56 +02:00
fae5d001ae chore(deps): update git.cryptic.systems/volker.raschek/git docker tag to v1.3.1 2023-10-01 23:02:30 +02:00
673e64b5c6 Merge pull request 'chore(deps): update git.cryptic.systems/volker.raschek/markdownlint docker tag to v0.37.0' (#14) from renovate/git.cryptic.systems-volker.raschek-markdownlint-0.x into master
Reviewed-on: #14
2023-09-29 07:02:08 +00:00
567042d30d Merge pull request 'chore(deps): update quay.io/skopeo/stable docker tag to v1.13.3' (#13) from renovate/quay.io-skopeo-stable-1.x into master
Reviewed-on: #13
2023-09-29 07:01:33 +00:00
450b5ceeb3 chore(deps): update git.cryptic.systems/volker.raschek/markdownlint docker tag to v0.37.0 2023-09-22 19:32:18 +02:00
0b538ca704 chore(deps): update quay.io/skopeo/stable docker tag to v1.13.3 2023-09-21 18:20:03 +02:00
1a1b5742be
fix(renovate): exclude updating docker.io/plugins/docker 2023-09-03 16:10:36 +02:00
e5f7741027
fix: cleanup pkg cache
Some checks failed
continuous-integration/drone/push Build is failing
2023-07-23 11:17:14 +02:00
8b34224735
fix: migrate to git.cryptic.systems
Some checks failed
continuous-integration/drone/push Build is failing
2023-06-18 15:29:45 +02:00
2d3a7ee939
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:51:23 +02:00
4638c6d3db
feat(ci): use git.cryptic.systems/volker.raschek/markdownlint v0.33.0
Some checks failed
continuous-integration/drone/push Build is failing
2023-06-08 19:37:14 +02:00
72c6f89704
feat(ci): use docker.io/plugins/drone v20.10.9
Some checks failed
continuous-integration/drone/push Build is failing
2023-06-08 19:24:34 +02:00
ceef088bc7
fix: remove arch linux pkgs from cache
Some checks failed
continuous-integration/drone/push Build is failing
2023-06-08 18:32:50 +02:00
a592b8220d
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:16:33 +02:00
6755685f89
feat: add ssh and vim, make scp possible
All checks were successful
continuous-integration/drone/push Build is passing
2023-02-05 11:08:57 +01:00
e9fd9d3c33 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:51:59 +01:00
e9e84b7d21
fix: import own certificate
All checks were successful
continuous-integration/drone/push Build is passing
2022-12-22 16:31:42 +01:00
c05394f916 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-09-28 19:51:23 +02:00
408d473757
fix(ci): remove docker socket volume
All checks were successful
continuous-integration/drone/push Build is passing
2022-07-26 17:25:17 +02:00
718dd43565
fix(ci): use docker.io/volkerraschek/drone-email:0.1.0
Some checks failed
continuous-integration/drone/push Build is failing
2022-07-26 16:36:27 +02:00
3ec38ce502 chore(deps): update dependency docker.io/volkerraschek/markdownlint to v0.32.1
Some checks failed
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is failing
2022-07-25 13:11:05 +02:00
cdcbe178a4 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:13 +02:00
60c8144916
fix(ci): resource limits
All checks were successful
continuous-integration/drone/push Build is passing
2022-05-22 13:08:14 +02:00
51a789d881
fix(ci): use fully qualified image name
Some checks reported errors
continuous-integration/drone/push Build encountered an error
2022-05-22 13:00:02 +02:00
d8ad30b0fb
fix(ci): resource limits
Some checks reported errors
continuous-integration/drone/push Build encountered an error
2022-05-22 12:52:52 +02:00
571893e66e
fix(ci): use gitea to sync repo with github
All checks were successful
continuous-integration/drone/push Build is passing
2022-05-03 17:36:47 +02:00
246342ea67
fix: makepkg, build user
All checks were successful
continuous-integration/drone/push Build is passing
2022-04-02 16:41:35 +02:00
3b25c80adc chore(deps): update dependency docker.io/volkerraschek/markdownlint to v0.31.1
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2022-03-16 20:03:13 +01:00
799fc1291b
fix: repo server
All checks were successful
continuous-integration/drone/push Build is passing
2022-03-16 19:57:16 +01:00
17caf9bfb6
fix: repo server
Some checks failed
continuous-integration/drone/push Build is failing
2022-03-16 19:28:34 +01:00
e1312f1fff
fix(ci): add package rules
Some checks failed
continuous-integration/drone/push Build is failing
2022-01-30 18:42:50 +01:00
d4d9883a34 chore(deps): update docker.io/volkerraschek/markdownlint docker tag to v0.30.0
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2021-11-20 12:00:39 +00:00
70a28081e9
fix(ci): renovate rebase conditions
All checks were successful
continuous-integration/drone/push Build is passing
2021-10-30 12:12:20 +02:00
c69b768a08
fix(ci): add renovate config
All checks were successful
continuous-integration/drone/push Build is passing
2021-10-24 16:16:40 +02:00
bb0013913b
fix(ci): sync depends on latest-manifest
All checks were successful
continuous-integration/drone/push Build is passing
2021-10-12 21:44:06 +02:00
fe9c11f3b5
fix(ci): build image via docker plugin
Some checks reported errors
continuous-integration/drone/push Build was killed
2021-10-12 21:32:23 +02:00
57d2cc6440
fix: remove docker-pushrm
Some checks failed
continuous-integration/drone/push Build is failing
2021-09-01 17:28:25 +02:00
11 changed files with 828 additions and 174 deletions

View File

@ -3,35 +3,39 @@ kind: pipeline
type: kubernetes
name: linter
platform:
os: linux
arch: amd64
clone:
disable: true
steps:
- name: clone
image: git.cryptic.systems/volker.raschek/git:1.4.0
- name: markdown lint
commands:
- markdownlint *.md
image: docker.io/tmknom/markdownlint:0.23.1
image: git.cryptic.systems/volker.raschek/markdownlint:0.44.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.5
resources:
limits:
cpu: 50
memory: 25M
cpu: 150
memory: 150M
when:
status:
- changed
@ -41,117 +45,306 @@ trigger:
event:
exclude:
- tag
---
kind: pipeline
type: docker
name: build
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.4.0
- name: build
image: docker.io/volkerraschek/build-image:latest
commands:
- make container-image/build CONTAINER_RUNTIME=docker
volumes:
- name: docker_socket
path: /var/run/docker.sock
when:
branch:
- master
- name: push
image: docker.io/volkerraschek/build-image:latest
commands:
- make container-image/push CONTAINER_RUNTIME=docker
environment:
BIND9_IMAGE_REGISTRY_PASSWORD:
from_secret: container_image_registry_password
volumes:
- name: docker_socket
path: /var/run/docker.sock
when:
branch:
- master
repo:
- volker.raschek/build-image
- name: delete
image: docker.io/volkerraschek/build-image:latest
commands:
- make container-image/delete CONTAINER_RUNTIME=docker
volumes:
- name: docker_socket
path: /var/run/docker.sock
when:
branch:
- master
- 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:
exclude:
- tag
---
kind: pipeline
type: kubernetes
name: sync
platform:
os: linux
arch: amd64
steps:
- name: github
image: docker.io/appleboy/drone-git-push:latest
resources:
limits:
cpu: 50
memory: 25M
image: docker.io/plugins/docker:20.18.6
settings:
branch: master
remote: ssh://git@github.com/volker-raschek/build-image.git
force: true
ssh_key:
from_secret: ssh_key
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/build-image
tags: latest-amd64
username:
from_secret: git_cryptic_systems_container_registry_user
password:
from_secret: git_cryptic_systems_container_registry_password
- 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.5
when:
status:
- changed
- failure
trigger:
branch:
exclude:
- master
event:
- pull_request
- push
repo:
- volker.raschek/build-image
---
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.4.0
- name: build
image: docker.io/plugins/docker:20.18.6
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/build-image
tags: latest-amd64
username:
from_secret: git_cryptic_systems_container_registry_user
password:
from_secret: git_cryptic_systems_container_registry_password
- 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
when:
status:
- changed
- failure
trigger:
branch:
- master
event:
- cron
- push
repo:
- volker.raschek/build-image
---
kind: pipeline
type: kubernetes
name: latest-manifest
clone:
disable: true
depends_on:
- latest-amd64
# 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.4.0
- name: build-manifest
image: docker.io/plugins/manifest:1.4.0
settings:
auto_tag: false
ignore_missing: true
spec: manifest.tmpl
username:
from_secret: git_cryptic_systems_container_registry_user
password:
from_secret: git_cryptic_systems_container_registry_password
- 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: 50
memory: 25M
cpu: 150
memory: 150M
when:
status:
- changed
- failure
trigger:
branch:
- master
event:
- cron
- push
repo:
- volker.raschek/build-image
---
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.4.0
- 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/build-image 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.18.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:
branch:
- master
event:
- cron
- push
repo:
- volker.raschek/build-image
---
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.4.0
- name: build
image: docker.io/plugins/docker:20.18.6
settings:
auto_tag: true
auto_tag_suffix: amd64
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/build-image
username:
from_secret: git_cryptic_systems_container_registry_user
password:
from_secret: git_cryptic_systems_container_registry_password
- 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
when:
status:
- changed
@ -159,6 +352,122 @@ steps:
trigger:
event:
- push
- tag
repo:
- volker.raschek/build-image
---
kind: pipeline
type: kubernetes
name: tagged-manifest
clone:
disable: true
depends_on:
- tagged-amd64
# 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.4.0
- name: build-manifest
image: docker.io/plugins/manifest:1.4.0
settings:
auto_tag: true
ignore_missing: true
spec: manifest.tmpl
username:
from_secret: git_cryptic_systems_container_registry_user
password:
from_secret: git_cryptic_systems_container_registry_password
- 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:
- tag
repo:
- volker.raschek/build-image
---
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.4.0
- 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/build-image 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.18.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:
- tag
repo:
- volker.raschek/build-image

3
.gitignore vendored
View File

@ -1 +1,2 @@
.env
.env
test.sh

View File

@ -7,23 +7,32 @@ default: true
# Path to configuration file to extend
extends: null
# MD003/heading-style/header-style - Heading style
# MD001/heading-increment : Heading levels should only increment by one level at a time : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md001.md
MD001: true
# MD003/heading-style : Heading style : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md003.md
MD003:
# Heading style
style: "atx"
# MD004/ul-style - Unordered list style
# MD004/ul-style : Unordered list style : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md004.md
MD004:
# List style
style: "dash"
# MD007/ul-indent - Unordered list indentation
# MD005/list-indent : Inconsistent indentation for list items at the same level : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md005.md
MD005: true
# MD007/ul-indent : Unordered list indentation : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md007.md
MD007:
# Spaces for indent
indent: 2
# Whether to indent the first level of the list
start_indented: false
# Spaces for first level indent (when start_indented is set)
start_indent: 2
# MD009/no-trailing-spaces - Trailing spaces
# MD009/no-trailing-spaces : Trailing spaces : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md009.md
MD009:
# Spaces for line break
br_spaces: 2
@ -32,67 +41,93 @@ MD009:
# Include unnecessary breaks
strict: false
# MD010/no-hard-tabs - Hard tabs
# MD010/no-hard-tabs : Hard tabs : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md010.md
MD010:
# Include code blocks
code_blocks: true
# Fenced code languages to ignore
ignore_code_languages: []
# Number of spaces for each hard tab
spaces_per_tab: 1
# MD012/no-multiple-blanks - Multiple consecutive blank lines
MD012:
# Consecutive blank lines
maximum: 1
# MD013/line-length - Line length
# MD013/line-length : Line length : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md013.md
MD013:
# Number of characters
line_length: 80
line_length: 120
# Number of characters for headings
heading_line_length: 80
heading_line_length: 120
# Number of characters for code blocks
code_block_line_length: 80
code_block_line_length: 120
# Include code blocks
code_blocks: false
# Include tables
tables: false
# Include headings
headings: true
# Include headings
headers: true
# Strict length checking
strict: false
# Stern length checking
stern: false
# MD022/blanks-around-headings/blanks-around-headers - Headings should be surrounded by blank lines
# MD014/commands-show-output : Dollar signs used before commands without showing output : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md014.md
MD014: true
# MD018/no-missing-space-atx : No space after hash on atx style heading : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md018.md
MD018: true
# MD019/no-multiple-space-atx : Multiple spaces after hash on atx style heading : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md019.md
MD019: true
# MD020/no-missing-space-closed-atx : No space inside hashes on closed atx style heading : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md020.md
MD020: true
# MD021/no-multiple-space-closed-atx : Multiple spaces inside hashes on closed atx style heading : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md021.md
MD021: true
# MD022/blanks-around-headings : Headings should be surrounded by blank lines : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md022.md
MD022:
# Blank lines above heading
lines_above: 1
# Blank lines below heading
lines_below: 1
# MD024/no-duplicate-heading/no-duplicate-header - Multiple headings with the same content
# MD023/heading-start-left : Headings must start at the beginning of the line : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md023.md
MD023: true
# MD024/no-duplicate-heading : Multiple headings with the same content : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md024.md
MD024:
# Only check sibling headings
allow_different_nesting: true
siblings_only: true
# MD025/single-title/single-h1 - Multiple top-level headings in the same document
# MD025/single-title/single-h1 : Multiple top-level headings in the same document : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md025.md
MD025:
# Heading level
level: 1
# RegExp for matching title in front matter
front_matter_title: "^\\s*title\\s*[:=]"
# MD026/no-trailing-punctuation - Trailing punctuation in heading
# MD026/no-trailing-punctuation : Trailing punctuation in heading : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md026.md
MD026:
# Punctuation characters
punctuation: ".,;:!。,;:!"
# MD029/ol-prefix - Ordered list item prefix
# MD027/no-multiple-space-blockquote : Multiple spaces after blockquote symbol : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md027.md
MD027: true
# MD028/no-blanks-blockquote : Blank line inside blockquote : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md028.md
MD028: true
# MD029/ol-prefix : Ordered list item prefix : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md029.md
MD029:
# List style
style: "one_or_ordered"
# MD030/list-marker-space - Spaces after list markers
# MD030/list-marker-space : Spaces after list markers : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md030.md
MD030:
# Spaces for single-line unordered list items
ul_single: 1
@ -103,35 +138,74 @@ MD030:
# Spaces for multi-line ordered list items
ol_multi: 1
# MD033/no-inline-html - Inline HTML
# MD031/blanks-around-fences : Fenced code blocks should be surrounded by blank lines : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md031.md
MD031:
# Include list items
list_items: true
# MD032/blanks-around-lists : Lists should be surrounded by blank lines : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md032.md
MD032: true
# MD033/no-inline-html : Inline HTML : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md033.md
MD033:
# Allowed elements
allowed_elements: []
# MD035/hr-style - Horizontal rule style
# MD034/no-bare-urls : Bare URL used : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md034.md
MD034: true
# MD035/hr-style : Horizontal rule style : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md035.md
MD035:
# Horizontal rule style
style: "---"
# MD036/no-emphasis-as-heading/no-emphasis-as-header - Emphasis used instead of a heading
# MD036/no-emphasis-as-heading : Emphasis used instead of a heading : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md036.md
MD036:
# Punctuation characters
punctuation: ".,;:!?。,;:!?"
# MD041/first-line-heading/first-line-h1 - First line in a file should be a top-level heading
# MD037/no-space-in-emphasis : Spaces inside emphasis markers : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md037.md
MD037: true
# MD038/no-space-in-code : Spaces inside code span elements : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md038.md
MD038: true
# MD039/no-space-in-links : Spaces inside link text : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md039.md
MD039: true
# MD040/fenced-code-language : Fenced code blocks should have a language specified : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md040.md
MD040:
# List of languages
allowed_languages: []
# Require language only
language_only: false
# MD041/first-line-heading/first-line-h1 : First line in a file should be a top-level heading : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md041.md
MD041:
# Heading level
level: 1
# RegExp for matching title in front matter
front_matter_title: "^\\s*title\\s*[:=]"
# MD044/proper-names - Proper names should have the correct capitalization
# MD042/no-empty-links : No empty links : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md042.md
MD042: true
# MD043/required-headings : Required heading structure : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md043.md
# MD043:
# # List of headings
# headings: []
# # Match case of headings
# match_case: false
# MD044/proper-names : Proper names should have the correct capitalization : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md044.md
MD044:
# List of proper names
names: []
# - some-thing
names:
- Dedalus HealthCare GmbH
# Include code blocks
code_blocks: false
# Include HTML elements
html_elements: false
# MD046/code-block-style - Code block style
MD046:
@ -140,5 +214,52 @@ MD046:
# MD048/code-fence-style - Code fence style
MD048:
# Code fence syle
style: "backtick"
# Code fence style
style: "backtick"
# MD049/emphasis-style : Emphasis style : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md049.md
MD049:
# Emphasis style
style: "asterisk"
# MD050/strong-style : Strong style : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md050.md
MD050:
# Strong style
style: "asterisk"
# MD051/link-fragments : Link fragments should be valid : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md051.md
MD051: true
# MD052/reference-links-images : Reference links and images should use a label that is defined : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md052.md
MD052:
# Include shortcut syntax
shortcut_syntax: false
# MD053/link-image-reference-definitions : Link and image reference definitions should be needed : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md053.md
MD053:
# Ignored definitions
ignored_definitions:
- "//"
# MD054/link-image-style : Link and image style : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md054.md
MD054:
# Allow autolinks
autolink: true
# Allow inline links and images
inline: true
# Allow full reference links and images
full: true
# Allow collapsed reference links and images
collapsed: true
# Allow shortcut reference links and images
shortcut: true
# Allow URLs as inline links
url_inline: true
# MD055/table-pipe-style : Table pipe style : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md055.md
MD055:
# Table pipe style
style: "leading_and_trailing"
# MD056/table-column-count : Table column count : https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md056.md
MD056: true

View File

@ -1,34 +1,56 @@
FROM docker.io/library/archlinux:latest
RUN pacman --sync --refresh --noconfirm --sysupgrade \
ENV BUILD_USER=build
RUN pacman --sync --refresh --noconfirm --sysupgrade sudo
RUN echo "${BUILD_USER} ALL=(ALL) NOPASSWD:ALL" > /etc/sudoers.d/${BUILD_USER} && \
useradd --create-home --home-dir /home/${BUILD_USER} --shell /bin/bash ${BUILD_USER}
USER ${BUILD_USER}
# execute local files
COPY installation-scripts /tmp/installation-scripts
RUN for f in {00-pacman-mirror.sh,01-rustup.sh}; do sudo /tmp/installation-scripts/$f; done && \
sudo rm --recursive --force /tmp/installation-scripts
ENV PATH="/home/${BUILD_USER}/.cargo/bin:/${BUILD_USER}/go/bin:${PATH}"
# Install PKGs from public repositories
RUN sudo pacman --sync --refresh --noconfirm --sysupgrade \
awk \
base-devel \
bash-completion \
docker \
gcc \
git \
gnupg \
go \
make \
openssh \
pacman-contrib \
podman \
vim \
which \
zip
zip && \
sudo rm --recursive --force /var/cache/pacman/pkg/*
COPY installation-scripts /tmp/installation-scripts
RUN sudo usermod --append --groups docker ${BUILD_USER}
# Install PKGs from own repo
RUN /tmp/installation-scripts/00-pacman-mirror.sh
RUN pacman --sync --refresh --noconfirm --sysupgrade \
docker-pushrm \
# Install PKGs from private repositories
RUN sudo pacman --sync --refresh --noconfirm --sysupgrade \
oracle-instantclient-basic \
oracle-instantclient-jdbc \
oracle-instantclient-odbc \
oracle-instantclient-sdk \
oracle-instantclient-sqlplus \
oracle-instantclient-tools \
rpm-builder
rpm-builder && \
sudo rm --recursive --force /var/cache/pacman/pkg
ENV PATH="/root/.cargo/bin:/root/go/bin:${PATH}"
RUN sudo mkdir /workspace && sudo chown ${BUILD_USER}:${BUILD_USER} /workspace
WORKDIR /workspace
VOLUME [ "/workspace" ]
RUN for f in {01-rustup.sh,02-go-bindata.sh}; do /tmp/installation-scripts/$f; done && \
rm --recursive --force /tmp/installation-scripts
COPY entrypoint.sh /usr/local/bin/entrypoint.sh
RUN sudo chmod +x /usr/local/bin/entrypoint.sh
WORKDIR /workspace
ENTRYPOINT [ "/usr/local/bin/entrypoint.sh" ]

View File

@ -5,14 +5,20 @@ CONTAINER_RUNTIME?=$(shell which podman)
# CONTAINER_IMAGE
# Defines the name of the new container to be built using several variables.
BUILD_IMAGE_REGISTRY_HOST:=docker.io
BUILD_IMAGE_REGISTRY_USER:=volkerraschek
BUILD_IMAGE_REGISTRY_HOST?=git.cryptic.systems
BUILD_IMAGE_REGISTRY_USER?=volker.raschek
BUILD_IMAGE_NAMESPACE?=${BUILD_IMAGE_REGISTRY_USER}
BUILD_IMAGE_REPOSITORY:=build-image
BUILD_IMAGE_VERSION?=latest
BUILD_IMAGE_FULLY_QUALIFIED=${BUILD_IMAGE_REGISTRY_HOST}/${BUILD_IMAGE_NAMESPACE}/${BUILD_IMAGE_REPOSITORY}:${BUILD_IMAGE_VERSION}
BUILD_IMAGE_UNQUALIFIED=${BUILD_IMAGE_NAMESPACE}/${BUILD_IMAGE_REPOSITORY}:${BUILD_IMAGE_VERSION}
# MARKDOWNLINT_IMAGE
MARKDOWNLINT_IMAGE_REGISTRY_HOST?=git.cryptic.systems
MARKDOWNLINT_IMAGE_REPOSITORY?=volker.raschek/markdownlint
MARKDOWNLINT_IMAGE_VERSION?=0.43.0 # renovate: datasource=docker registryUrl=https://git.cryptic.systems depName=volker.raschek/markdownlint
MARKDOWNLINT_IMAGE_FULLY_QUALIFIED=${MARKDOWNLINT_IMAGE_REGISTRY_HOST}/${MARKDOWNLINT_IMAGE_REPOSITORY}:${MARKDOWNLINT_IMAGE_VERSION}
# BUILD CONTAINER IMAGE
# ==============================================================================
PHONY:=container-image/build
@ -36,9 +42,19 @@ container-image/delete:
# ==============================================================================
PHONY+=container-image/push
container-image/push:
${CONTAINER_RUNTIME} login ${BUILD_IMAGE_REGISTRY_HOST} --username ${BUILD_IMAGE_REGISTRY_USER} --password ${BUILD_IMAGE_REGISTRY_PASSWORD}
echo ${BUILD_IMAGE_REGISTRY_PASSWORD} | ${CONTAINER_RUNTIME} login ${BUILD_IMAGE_REGISTRY_HOST} --username ${BUILD_IMAGE_REGISTRY_USER} --password-stdin
${CONTAINER_RUNTIME} push ${BUILD_IMAGE_FULLY_QUALIFIED}
# CONTAINER RUN - MARKDOWN-LINT
# ==============================================================================
PHONY+=container-run/markdown-lint
container-run/markdown-lint:
${CONTAINER_RUNTIME} run \
--rm \
--volume $(shell pwd):/work \
${MARKDOWNLINT_IMAGE_FULLY_QUALIFIED} \
*.md
# PHONY
# ==============================================================================
# Declare the contents of the PHONY variable as phony. We keep that information

View File

@ -3,16 +3,49 @@
[![Build Status](https://drone.cryptic.systems/api/badges/volker.raschek/build-image/status.svg)](https://drone.cryptic.systems/volker.raschek/build-image)
[![Docker Pulls](https://img.shields.io/docker/pulls/volkerraschek/build-image)](https://hub.docker.com/r/volkerraschek/build-image)
This project contains all sources to build the container image
`docker.io/volkerraschek/build-image`. The primary goal of the image is only
to provide an environment to compile source code like go or rust.
This project contains all sources to build the container image `docker.io/volkerraschek/build-image`. The primary goal
of the image is only to provide an environment to compile source code for `go` or `rust` and package compiled binaries
as PKG for Arch Linux or as RPM for RHEL based distributions.
## Supported environment variables
### gnupg
#### GNUPG_KEY
Import private gpg key via `GPG_KEY`. The private key must be escaped to import the key inside the container image
correctly. For example:
```bash
GPG_FPR=YOUR_GPG_FINGERPRINT
GPG_KEY=$(gpg --armor --export-secret-keys ${GPG_FPR} | cat -e | sed -e 's/\$/\\n/g' -e 's/^[ \t]*//g')
```
### makepkg
The `makepkg.conf` configuration is composed from the environment variables with the prefix `MAKEPKG_`. Below are some
examples:
`MAKEPKG_PACKAGER="Hugo McKinnock <hugo.mckinnock@example.local>"`
`MAKEPKG_GPGKEY="0123456789"`
`MAKEPKG_PKGEXT=.pkg.tar.zst"`
### ssh
#### SSH_KEY
Import private ssh key via `SSH_KEY`. The private key must be escaped to import the key inside the container image
correctly. For example:
```bash
SSH_KEY=$(cat -e ${HOME}/.ssh/id_rsa | sed -e 's/\$/\\n/g')
```
## Usage
### golang
To use this image for building golang applications execute this in your root
folder of your go project.
To use this image for building golang applications execute this in your root folder of your go project.
```bash
$ docker run \
@ -22,10 +55,23 @@ $ docker run \
go build
```
### makepkg
With the following example will be an package be build for Arch Linux. Execute the commond in the root directory of the
project, where the `PKGBUILD` file is located.
```bash
$ docker run \
--env MAKEPKG_PACKAGER="Max Mustermann <max.mustermann@example.com" \
--rm \
--volume ${PWD}:/workspace \
volkerraschek/build-image:latest \
makepkg
```
### rust
If you want to compile instead go rust sourcecode, than you can do it similar to
the golang example.
If you want to compile instead go rust sourcecode, than you can do it similar to the golang example.
```bash
$ docker run \

32
entrypoint.sh Normal file
View File

@ -0,0 +1,32 @@
#!/bin/bash
IFS=$'\n'
# generate makepkg.conf
MAKEPKG_ENV_VARS=($(env | sort | grep --perl-regexp '^MAKEPKG_.*'))
for ENV_VAR in ${MAKEPKG_ENV_VARS[@]}; do
KEY=$(echo ${ENV_VAR} | cut --delimiter="=" --fields="1" | sed 's/MAKEPKG_//' | tr '[:lower:]' '[:upper:]')
VALUE=$(echo ${ENV_VAR} | cut --delimiter="=" --fields="2-")
echo "${KEY}='${VALUE}'" >> ${HOME}/.makepkg.conf
done
# import gpg key
if [ ! -z ${GPG_KEY+x} ]; then
echo -e ${GPG_KEY} | gpg --import
# trust gpg key
for fpr in $(gpg --list-keys --with-colons | awk -F: '/fpr:/ {print $10}' | sort -u); do
echo -e "5\ny\n" | gpg --command-fd 0 --expert --edit-key $fpr trust
done
fi
# add ssh private key
if [ ! -z ${SSH_KEY+x} ]; then
mkdir --parents ${HOME}/.ssh
sudo chmod 0700 ${HOME}/.ssh
echo -e ${SSH_KEY} > ${HOME}/.ssh/key
sudo chmod 0600 ${HOME}/.ssh/key
echo -e "Host *\n IdentityFile ~/.ssh/key\n StrictHostKeyChecking no\n UserKnownHostsFile /dev/null\n" > ${HOME}/.ssh/config
fi
/bin/bash ${@}

View File

@ -1,26 +1,113 @@
#!/bin/bash
cat > /etc/pacman.d/gnupg/dirmngr.conf <<EOF
keyserver hkps://hkps.pool.sks-keyservers.net:443
keyserver hkp://pool.sks-keyservers.net:80
EOF
set -e
# Initialize pacman-key ring
pacman-key --init
pacman-key --refresh-keys
# Add GPG Key
pacman-key --recv-keys 9B146D11A9ED6CA7E279EB1A852BCC170D81A982
pacman-key --lsign 9B146D11A9ED6CA7E279EB1A852BCC170D81A982
# Trust public gpg keys
cat <<EOF | pacman-key --add -
-----BEGIN PGP PUBLIC KEY BLOCK-----
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
=cbcC
-----END PGP PUBLIC KEY BLOCK-----
EOF
# Add additional pacman mirrors
cat >> /etc/pacman.conf <<EOF
cat >> /etc/pacman.conf <<'EOF'
[any]
Server = https://aur.cryptic.systems/any/
[x86_64]
Server = https://aur.cryptic.systems/x86_64/
[volker.raschek]
SigLevel = Optional TrustAll
Server = https://aur.cryptic.systems/$repo/$arch/
[oracle]
SigLevel = Optional TrustAll

View File

@ -1,3 +0,0 @@
#!/bin/bash
go get -u github.com/go-bindata/go-bindata/...

14
manifest.tmpl Normal file
View File

@ -0,0 +1,14 @@
image: git.cryptic.systems/volker.raschek/build-image:{{#if build.tag}}{{trimPrefix "v" build.tag}}{{else}}latest{{/if}}
{{#if build.tags}}
tags:
{{#each build.tags}}
- {{this}}
{{/each}}
- "latest"
{{/if}}
manifests:
-
image: git.cryptic.systems/volker.raschek/build-image:{{#if build.tag}}{{trimPrefix "v" build.tag}}{{else}}latest{{/if}}-amd64
platform:
architecture: amd64
os: linux

9
renovate.json Normal file
View File

@ -0,0 +1,9 @@
{
"$schema": "https://docs.renovatebot.com/renovate-schema.json",
"extends": [
"local>volker.raschek/renovate-config:default#master",
"local>volker.raschek/renovate-config:container#master",
"local>volker.raschek/renovate-config:actions#master",
"local>volker.raschek/renovate-config:regexp#master"
]
}