You've already forked build-image
Compare commits
62 Commits
0.2.0
...
ce533d783c
Author | SHA1 | Date | |
---|---|---|---|
ce533d783c
|
|||
7d0930fc24
|
|||
ba690e3fc6
|
|||
03895de0e0
|
|||
26128acafd
|
|||
d4d14aace7
|
|||
d7462bfd36
|
|||
9102653939
|
|||
614bc5c52f
|
|||
01907606ce
|
|||
d7491888c6
|
|||
8cb74a3152
|
|||
ad4317cf0e
|
|||
a7aaa7b100
|
|||
ab76d2e80c
|
|||
2bc7928a99
|
|||
8261cefaf1
|
|||
ea552ae0cb
|
|||
969ebe7f83
|
|||
5e6f033398
|
|||
4bd01c4c66
|
|||
f4099d1476
|
|||
a1d8fe227c
|
|||
4eae4680c6
|
|||
13081a41cc
|
|||
4576b7c8c1
|
|||
1ae6b75ee6
|
|||
9ff52d9607
|
|||
bd7cba8651
|
|||
d5e5b6db55
|
|||
03c7386e00
|
|||
7f7cfcdcda
|
|||
53ad08aabd
|
|||
b96bf9da2e
|
|||
7525f7b431
|
|||
868f202c91
|
|||
83df321204
|
|||
cbdd6227eb
|
|||
a25147746c | |||
74d87bc20a
|
|||
991b2d51d9
|
|||
bff3f0864c | |||
033751b0b5 | |||
85d86a2f75 | |||
3d4a9eda14 | |||
1744831564
|
|||
765a7ecd59 | |||
9532212c29 | |||
6e49477f18 | |||
fae5d001ae | |||
673e64b5c6 | |||
567042d30d | |||
450b5ceeb3 | |||
0b538ca704 | |||
1a1b5742be
|
|||
e5f7741027
|
|||
8b34224735
|
|||
2d3a7ee939
|
|||
4638c6d3db
|
|||
72c6f89704
|
|||
ceef088bc7
|
|||
a592b8220d
|
268
.drone.yml
268
.drone.yml
@ -3,15 +3,17 @@ kind: pipeline
|
|||||||
type: kubernetes
|
type: kubernetes
|
||||||
name: linter
|
name: linter
|
||||||
|
|
||||||
platform:
|
clone:
|
||||||
os: linux
|
disable: true
|
||||||
arch: amd64
|
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
|
- name: clone
|
||||||
|
image: git.cryptic.systems/volker.raschek/git:1.4.0
|
||||||
|
|
||||||
- name: markdown lint
|
- name: markdown lint
|
||||||
commands:
|
commands:
|
||||||
- markdownlint *.md
|
- markdownlint *.md
|
||||||
image: docker.io/volkerraschek/markdownlint:0.33.0
|
image: git.cryptic.systems/volker.raschek/markdownlint:0.44.0
|
||||||
resources:
|
resources:
|
||||||
limits:
|
limits:
|
||||||
cpu: 150
|
cpu: 150
|
||||||
@ -29,7 +31,7 @@ steps:
|
|||||||
from_secret: smtp_username
|
from_secret: smtp_username
|
||||||
SMTP_PASSWORD:
|
SMTP_PASSWORD:
|
||||||
from_secret: smtp_password
|
from_secret: smtp_password
|
||||||
image: docker.io/volkerraschek/drone-email:0.1.1
|
image: git.cryptic.systems/volker.raschek/drone-email:0.1.5
|
||||||
resources:
|
resources:
|
||||||
limits:
|
limits:
|
||||||
cpu: 150
|
cpu: 150
|
||||||
@ -49,6 +51,9 @@ kind: pipeline
|
|||||||
type: docker
|
type: docker
|
||||||
name: dry-run-amd64
|
name: dry-run-amd64
|
||||||
|
|
||||||
|
clone:
|
||||||
|
disable: true
|
||||||
|
|
||||||
depends_on:
|
depends_on:
|
||||||
- linter
|
- linter
|
||||||
|
|
||||||
@ -57,19 +62,27 @@ platform:
|
|||||||
arch: amd64
|
arch: amd64
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
|
- name: clone
|
||||||
|
image: git.cryptic.systems/volker.raschek/git:1.4.0
|
||||||
|
|
||||||
- name: build
|
- name: build
|
||||||
image: docker.io/plugins/docker:latest
|
image: docker.io/plugins/docker:20.18.8
|
||||||
settings:
|
settings:
|
||||||
dockerfile: Dockerfile
|
|
||||||
auto_tag: false
|
auto_tag: false
|
||||||
|
dockerfile: Dockerfile
|
||||||
dry_run: true
|
dry_run: true
|
||||||
tags: latest-amd64
|
force_tag: true
|
||||||
repo: volkerraschek/build-image
|
|
||||||
username:
|
|
||||||
from_secret: container_image_registry_user
|
|
||||||
password:
|
|
||||||
from_secret: container_image_registry_password
|
|
||||||
no_cache: 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
|
- name: email-notification
|
||||||
environment:
|
environment:
|
||||||
@ -83,7 +96,7 @@ steps:
|
|||||||
from_secret: smtp_username
|
from_secret: smtp_username
|
||||||
SMTP_PASSWORD:
|
SMTP_PASSWORD:
|
||||||
from_secret: smtp_password
|
from_secret: smtp_password
|
||||||
image: docker.io/volkerraschek/drone-email:0.1.1
|
image: git.cryptic.systems/volker.raschek/drone-email:0.1.5
|
||||||
when:
|
when:
|
||||||
status:
|
status:
|
||||||
- changed
|
- changed
|
||||||
@ -104,23 +117,37 @@ kind: pipeline
|
|||||||
type: docker
|
type: docker
|
||||||
name: latest-amd64
|
name: latest-amd64
|
||||||
|
|
||||||
|
clone:
|
||||||
|
disable: true
|
||||||
|
|
||||||
|
depends_on:
|
||||||
|
- linter
|
||||||
|
|
||||||
platform:
|
platform:
|
||||||
os: linux
|
os: linux
|
||||||
arch: amd64
|
arch: amd64
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
|
- name: clone
|
||||||
|
image: git.cryptic.systems/volker.raschek/git:1.4.0
|
||||||
|
|
||||||
- name: build
|
- name: build
|
||||||
image: docker.io/plugins/docker:latest
|
image: docker.io/plugins/docker:20.18.8
|
||||||
settings:
|
settings:
|
||||||
dockerfile: Dockerfile
|
|
||||||
auto_tag: false
|
auto_tag: false
|
||||||
tags: latest-amd64
|
dockerfile: Dockerfile
|
||||||
repo: volkerraschek/build-image
|
force_tag: true
|
||||||
username:
|
|
||||||
from_secret: container_image_registry_user
|
|
||||||
password:
|
|
||||||
from_secret: container_image_registry_password
|
|
||||||
no_cache: 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
|
- name: email-notification
|
||||||
environment:
|
environment:
|
||||||
@ -134,15 +161,12 @@ steps:
|
|||||||
from_secret: smtp_username
|
from_secret: smtp_username
|
||||||
SMTP_PASSWORD:
|
SMTP_PASSWORD:
|
||||||
from_secret: smtp_password
|
from_secret: smtp_password
|
||||||
image: docker.io/volkerraschek/drone-email:0.1.1
|
image: git.cryptic.systems/volker.raschek/drone-email:0.1.5
|
||||||
when:
|
when:
|
||||||
status:
|
status:
|
||||||
- changed
|
- changed
|
||||||
- failure
|
- failure
|
||||||
|
|
||||||
depends_on:
|
|
||||||
- linter
|
|
||||||
|
|
||||||
trigger:
|
trigger:
|
||||||
branch:
|
branch:
|
||||||
- master
|
- master
|
||||||
@ -157,24 +181,31 @@ kind: pipeline
|
|||||||
type: kubernetes
|
type: kubernetes
|
||||||
name: latest-manifest
|
name: latest-manifest
|
||||||
|
|
||||||
|
clone:
|
||||||
|
disable: true
|
||||||
|
|
||||||
depends_on:
|
depends_on:
|
||||||
- latest-amd64
|
- latest-amd64
|
||||||
|
|
||||||
|
# docker.io/plugins/manifest only for amd64 architectures available
|
||||||
|
node_selector:
|
||||||
|
kubernetes.io/os: linux
|
||||||
|
kubernetes.io/arch: amd64
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
|
- name: clone
|
||||||
|
image: git.cryptic.systems/volker.raschek/git:1.4.0
|
||||||
|
|
||||||
- name: build-manifest
|
- name: build-manifest
|
||||||
image: docker.io/plugins/manifest:latest
|
image: docker.io/plugins/manifest:1.4.0
|
||||||
resources:
|
|
||||||
limits:
|
|
||||||
cpu: 150
|
|
||||||
memory: 150M
|
|
||||||
settings:
|
settings:
|
||||||
auto_tag: false
|
auto_tag: false
|
||||||
ignore_missing: true
|
ignore_missing: true
|
||||||
spec: manifest.tmpl
|
spec: manifest.tmpl
|
||||||
username:
|
username:
|
||||||
from_secret: container_image_registry_user
|
from_secret: git_cryptic_systems_container_registry_user
|
||||||
password:
|
password:
|
||||||
from_secret: container_image_registry_password
|
from_secret: git_cryptic_systems_container_registry_password
|
||||||
|
|
||||||
- name: email-notification
|
- name: email-notification
|
||||||
environment:
|
environment:
|
||||||
@ -188,7 +219,67 @@ steps:
|
|||||||
from_secret: smtp_username
|
from_secret: smtp_username
|
||||||
SMTP_PASSWORD:
|
SMTP_PASSWORD:
|
||||||
from_secret: smtp_password
|
from_secret: smtp_password
|
||||||
image: docker.io/volkerraschek/drone-email:0.1.1
|
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: 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:
|
resources:
|
||||||
limits:
|
limits:
|
||||||
cpu: 150
|
cpu: 150
|
||||||
@ -212,23 +303,34 @@ kind: pipeline
|
|||||||
type: docker
|
type: docker
|
||||||
name: tagged-amd64
|
name: tagged-amd64
|
||||||
|
|
||||||
|
clone:
|
||||||
|
disable: true
|
||||||
|
|
||||||
platform:
|
platform:
|
||||||
os: linux
|
os: linux
|
||||||
arch: amd64
|
arch: amd64
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
|
- name: clone
|
||||||
|
image: git.cryptic.systems/volker.raschek/git:1.4.0
|
||||||
|
|
||||||
- name: build
|
- name: build
|
||||||
image: docker.io/plugins/docker:latest
|
image: docker.io/plugins/docker:20.18.8
|
||||||
settings:
|
settings:
|
||||||
dockerfile: Dockerfile
|
|
||||||
auto_tag: true
|
auto_tag: true
|
||||||
auto_tag_suffix: amd64
|
auto_tag_suffix: amd64
|
||||||
repo: volkerraschek/build-image
|
dockerfile: Dockerfile
|
||||||
username:
|
force_tag: true
|
||||||
from_secret: container_image_registry_user
|
|
||||||
password:
|
|
||||||
from_secret: container_image_registry_password
|
|
||||||
no_cache: 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
|
- name: email-notification
|
||||||
environment:
|
environment:
|
||||||
@ -242,7 +344,7 @@ steps:
|
|||||||
from_secret: smtp_username
|
from_secret: smtp_username
|
||||||
SMTP_PASSWORD:
|
SMTP_PASSWORD:
|
||||||
from_secret: smtp_password
|
from_secret: smtp_password
|
||||||
image: docker.io/volkerraschek/drone-email:0.1.1
|
image: git.cryptic.systems/volker.raschek/drone-email:0.1.5
|
||||||
when:
|
when:
|
||||||
status:
|
status:
|
||||||
- changed
|
- changed
|
||||||
@ -259,21 +361,31 @@ kind: pipeline
|
|||||||
type: kubernetes
|
type: kubernetes
|
||||||
name: tagged-manifest
|
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:
|
steps:
|
||||||
|
- name: clone
|
||||||
|
image: git.cryptic.systems/volker.raschek/git:1.4.0
|
||||||
|
|
||||||
- name: build-manifest
|
- name: build-manifest
|
||||||
image: docker.io/plugins/manifest:latest
|
image: docker.io/plugins/manifest:1.4.0
|
||||||
resources:
|
|
||||||
limits:
|
|
||||||
cpu: 150
|
|
||||||
memory: 150M
|
|
||||||
settings:
|
settings:
|
||||||
auto_tag: true
|
auto_tag: true
|
||||||
ignore_missing: true
|
ignore_missing: true
|
||||||
spec: manifest.tmpl
|
spec: manifest.tmpl
|
||||||
username:
|
username:
|
||||||
from_secret: container_image_registry_user
|
from_secret: git_cryptic_systems_container_registry_user
|
||||||
password:
|
password:
|
||||||
from_secret: container_image_registry_password
|
from_secret: git_cryptic_systems_container_registry_password
|
||||||
|
|
||||||
- name: email-notification
|
- name: email-notification
|
||||||
environment:
|
environment:
|
||||||
@ -287,7 +399,7 @@ steps:
|
|||||||
from_secret: smtp_username
|
from_secret: smtp_username
|
||||||
SMTP_PASSWORD:
|
SMTP_PASSWORD:
|
||||||
from_secret: smtp_password
|
from_secret: smtp_password
|
||||||
image: docker.io/volkerraschek/drone-email:0.1.1
|
image: git.cryptic.systems/volker.raschek/drone-email:0.1.5
|
||||||
resources:
|
resources:
|
||||||
limits:
|
limits:
|
||||||
cpu: 150
|
cpu: 150
|
||||||
@ -297,8 +409,62 @@ steps:
|
|||||||
- changed
|
- changed
|
||||||
- failure
|
- failure
|
||||||
|
|
||||||
|
trigger:
|
||||||
|
event:
|
||||||
|
- tag
|
||||||
|
repo:
|
||||||
|
- volker.raschek/build-image
|
||||||
|
|
||||||
|
---
|
||||||
|
kind: pipeline
|
||||||
|
type: kubernetes
|
||||||
|
name: tagged-sync
|
||||||
|
|
||||||
|
clone:
|
||||||
|
disable: true
|
||||||
|
|
||||||
depends_on:
|
depends_on:
|
||||||
- tagged-amd64
|
- 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:
|
trigger:
|
||||||
event:
|
event:
|
||||||
|
@ -45,19 +45,17 @@ MD012:
|
|||||||
# MD013/line-length - Line length
|
# MD013/line-length - Line length
|
||||||
MD013:
|
MD013:
|
||||||
# Number of characters
|
# Number of characters
|
||||||
line_length: 80
|
line_length: 120
|
||||||
# Number of characters for headings
|
# Number of characters for headings
|
||||||
heading_line_length: 80
|
heading_line_length: 120
|
||||||
# Number of characters for code blocks
|
# Number of characters for code blocks
|
||||||
code_block_line_length: 80
|
code_block_line_length: 120
|
||||||
# Include code blocks
|
# Include code blocks
|
||||||
code_blocks: false
|
code_blocks: false
|
||||||
# Include tables
|
# Include tables
|
||||||
tables: false
|
tables: false
|
||||||
# Include headings
|
# Include headings
|
||||||
headings: true
|
headings: true
|
||||||
# Include headings
|
|
||||||
headers: true
|
|
||||||
# Strict length checking
|
# Strict length checking
|
||||||
strict: false
|
strict: false
|
||||||
# Stern length checking
|
# Stern length checking
|
||||||
@ -70,11 +68,6 @@ MD022:
|
|||||||
# Blank lines below heading
|
# Blank lines below heading
|
||||||
lines_below: 1
|
lines_below: 1
|
||||||
|
|
||||||
# MD024/no-duplicate-heading/no-duplicate-header - Multiple headings with the same content
|
|
||||||
MD024:
|
|
||||||
# Only check sibling headings
|
|
||||||
allow_different_nesting: 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
|
||||||
MD025:
|
MD025:
|
||||||
# Heading level
|
# Heading level
|
||||||
@ -129,7 +122,6 @@ MD041:
|
|||||||
MD044:
|
MD044:
|
||||||
# List of proper names
|
# List of proper names
|
||||||
names: []
|
names: []
|
||||||
# - some-thing
|
|
||||||
# Include code blocks
|
# Include code blocks
|
||||||
code_blocks: false
|
code_blocks: false
|
||||||
|
|
||||||
@ -141,4 +133,4 @@ MD046:
|
|||||||
# MD048/code-fence-style - Code fence style
|
# MD048/code-fence-style - Code fence style
|
||||||
MD048:
|
MD048:
|
||||||
# Code fence syle
|
# Code fence syle
|
||||||
style: "backtick"
|
style: "backtick"
|
||||||
|
@ -43,7 +43,8 @@ RUN sudo pacman --sync --refresh --noconfirm --sysupgrade \
|
|||||||
oracle-instantclient-sdk \
|
oracle-instantclient-sdk \
|
||||||
oracle-instantclient-sqlplus \
|
oracle-instantclient-sqlplus \
|
||||||
oracle-instantclient-tools \
|
oracle-instantclient-tools \
|
||||||
rpm-builder
|
rpm-builder && \
|
||||||
|
sudo rm --recursive --force /var/cache/pacman/pkg
|
||||||
|
|
||||||
RUN sudo mkdir /workspace && sudo chown ${BUILD_USER}:${BUILD_USER} /workspace
|
RUN sudo mkdir /workspace && sudo chown ${BUILD_USER}:${BUILD_USER} /workspace
|
||||||
WORKDIR /workspace
|
WORKDIR /workspace
|
||||||
|
26
Makefile
26
Makefile
@ -5,13 +5,18 @@ CONTAINER_RUNTIME?=$(shell which podman)
|
|||||||
|
|
||||||
# CONTAINER_IMAGE
|
# CONTAINER_IMAGE
|
||||||
# Defines the name of the new container to be built using several variables.
|
# Defines the name of the new container to be built using several variables.
|
||||||
BUILD_IMAGE_REGISTRY_HOST:=docker.io
|
BUILD_IMAGE_REGISTRY_HOST?=git.cryptic.systems
|
||||||
BUILD_IMAGE_REGISTRY_USER:=volkerraschek
|
BUILD_IMAGE_REGISTRY_USER?=volker.raschek
|
||||||
BUILD_IMAGE_NAMESPACE?=${BUILD_IMAGE_REGISTRY_USER}
|
BUILD_IMAGE_NAMESPACE?=${BUILD_IMAGE_REGISTRY_USER}
|
||||||
BUILD_IMAGE_REPOSITORY:=build-image
|
BUILD_IMAGE_REPOSITORY:=build-image
|
||||||
BUILD_IMAGE_VERSION?=latest
|
BUILD_IMAGE_VERSION?=latest
|
||||||
BUILD_IMAGE_FULLY_QUALIFIED=${BUILD_IMAGE_REGISTRY_HOST}/${BUILD_IMAGE_NAMESPACE}/${BUILD_IMAGE_REPOSITORY}:${BUILD_IMAGE_VERSION}
|
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
|
# BUILD CONTAINER IMAGE
|
||||||
# ==============================================================================
|
# ==============================================================================
|
||||||
@ -22,15 +27,14 @@ container-image/build:
|
|||||||
--no-cache \
|
--no-cache \
|
||||||
--pull \
|
--pull \
|
||||||
--tag ${BUILD_IMAGE_FULLY_QUALIFIED} \
|
--tag ${BUILD_IMAGE_FULLY_QUALIFIED} \
|
||||||
--tag ${BUILD_IMAGE_UNQUALIFIED} \
|
--tag \
|
||||||
.
|
.
|
||||||
|
|
||||||
# DELETE CONTAINER IMAGE
|
# DELETE CONTAINER IMAGE
|
||||||
# ==============================================================================
|
# ==============================================================================
|
||||||
PHONY:=container-image/delete
|
PHONY:=container-image/delete
|
||||||
container-image/delete:
|
container-image/delete:
|
||||||
- ${CONTAINER_RUNTIME} image rm ${BUILD_IMAGE_FULLY_QUALIFIED} ${BUILD_IMAGE_UNQUALIFIED}
|
- ${CONTAINER_RUNTIME} image rm ${BUILD_IMAGE_FULLY_QUALIFIED}
|
||||||
- ${CONTAINER_RUNTIME} image rm ${BASE_IMAGE_FULLY_QUALIFIED}
|
|
||||||
|
|
||||||
# PUSH CONTAINER IMAGE
|
# PUSH CONTAINER IMAGE
|
||||||
# ==============================================================================
|
# ==============================================================================
|
||||||
@ -39,6 +43,16 @@ container-image/push:
|
|||||||
echo ${BUILD_IMAGE_REGISTRY_PASSWORD} | ${CONTAINER_RUNTIME} login ${BUILD_IMAGE_REGISTRY_HOST} --username ${BUILD_IMAGE_REGISTRY_USER} --password-stdin
|
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_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
|
# PHONY
|
||||||
# ==============================================================================
|
# ==============================================================================
|
||||||
# Declare the contents of the PHONY variable as phony. We keep that information
|
# Declare the contents of the PHONY variable as phony. We keep that information
|
||||||
|
31
README.md
31
README.md
@ -1,12 +1,10 @@
|
|||||||
# build-image
|
# build-image
|
||||||
|
|
||||||
[](https://drone.cryptic.systems/volker.raschek/build-image)
|
|
||||||
[](https://hub.docker.com/r/volkerraschek/build-image)
|
[](https://hub.docker.com/r/volkerraschek/build-image)
|
||||||
|
|
||||||
This project contains all sources to build the container image
|
This project contains all sources to build the container image `docker.io/volkerraschek/build-image`. The primary goal
|
||||||
`docker.io/volkerraschek/build-image`. The primary goal of the image is only to
|
of the image is only to provide an environment to compile source code for `go` or `rust` and package compiled binaries
|
||||||
provide an environment to compile source code for `go` or `rust` and package
|
as PKG for Arch Linux or as RPM for RHEL based distributions.
|
||||||
compiled binaries as PKG for Arch Linux or as RPM for RHEL based distributions.
|
|
||||||
|
|
||||||
## Supported environment variables
|
## Supported environment variables
|
||||||
|
|
||||||
@ -14,8 +12,8 @@ compiled binaries as PKG for Arch Linux or as RPM for RHEL based distributions.
|
|||||||
|
|
||||||
#### GNUPG_KEY
|
#### GNUPG_KEY
|
||||||
|
|
||||||
Import private gpg key via `GPG_KEY`. The private key must be escaped to import
|
Import private gpg key via `GPG_KEY`. The private key must be escaped to import the key inside the container image
|
||||||
the key inside the container image correctly. For example:
|
correctly. For example:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
GPG_FPR=YOUR_GPG_FINGERPRINT
|
GPG_FPR=YOUR_GPG_FINGERPRINT
|
||||||
@ -24,8 +22,8 @@ GPG_KEY=$(gpg --armor --export-secret-keys ${GPG_FPR} | cat -e | sed -e 's/\$/\\
|
|||||||
|
|
||||||
### makepkg
|
### makepkg
|
||||||
|
|
||||||
The `makepkg.conf` configuration is composed from the environment variables with
|
The `makepkg.conf` configuration is composed from the environment variables with the prefix `MAKEPKG_`. Below are some
|
||||||
the prefix `MAKEPKG_`. Below are some examples:
|
examples:
|
||||||
|
|
||||||
`MAKEPKG_PACKAGER="Hugo McKinnock <hugo.mckinnock@example.local>"`
|
`MAKEPKG_PACKAGER="Hugo McKinnock <hugo.mckinnock@example.local>"`
|
||||||
`MAKEPKG_GPGKEY="0123456789"`
|
`MAKEPKG_GPGKEY="0123456789"`
|
||||||
@ -35,8 +33,8 @@ the prefix `MAKEPKG_`. Below are some examples:
|
|||||||
|
|
||||||
#### SSH_KEY
|
#### SSH_KEY
|
||||||
|
|
||||||
Import private ssh key via `SSH_KEY`. The private key must be escaped to import
|
Import private ssh key via `SSH_KEY`. The private key must be escaped to import the key inside the container image
|
||||||
the key inside the container image correctly. For example:
|
correctly. For example:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
SSH_KEY=$(cat -e ${HOME}/.ssh/id_rsa | sed -e 's/\$/\\n/g')
|
SSH_KEY=$(cat -e ${HOME}/.ssh/id_rsa | sed -e 's/\$/\\n/g')
|
||||||
@ -46,8 +44,7 @@ SSH_KEY=$(cat -e ${HOME}/.ssh/id_rsa | sed -e 's/\$/\\n/g')
|
|||||||
|
|
||||||
### golang
|
### golang
|
||||||
|
|
||||||
To use this image for building golang applications execute this in your root
|
To use this image for building golang applications execute this in your root folder of your go project.
|
||||||
folder of your go project.
|
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
$ docker run \
|
$ docker run \
|
||||||
@ -59,9 +56,8 @@ $ docker run \
|
|||||||
|
|
||||||
### makepkg
|
### makepkg
|
||||||
|
|
||||||
With the following example will be an package be build for Arch Linux. Execute
|
With the following example will be an package be build for Arch Linux. Execute the commond in the root directory of the
|
||||||
the commond in the root directory of the project, where the `PKGBUILD` file is
|
project, where the `PKGBUILD` file is located.
|
||||||
located.
|
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
$ docker run \
|
$ docker run \
|
||||||
@ -74,8 +70,7 @@ $ docker run \
|
|||||||
|
|
||||||
### rust
|
### rust
|
||||||
|
|
||||||
If you want to compile instead go rust sourcecode, than you can do it similar to
|
If you want to compile instead go rust sourcecode, than you can do it similar to the golang example.
|
||||||
the golang example.
|
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
$ docker run \
|
$ docker run \
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
image: volkerraschek/build-image:{{#if build.tag}}{{trimPrefix "v" build.tag}}{{else}}latest{{/if}}
|
image: git.cryptic.systems/volker.raschek/build-image:{{#if build.tag}}{{trimPrefix "v" build.tag}}{{else}}latest{{/if}}
|
||||||
{{#if build.tags}}
|
{{#if build.tags}}
|
||||||
tags:
|
tags:
|
||||||
{{#each build.tags}}
|
{{#each build.tags}}
|
||||||
@ -8,7 +8,7 @@ tags:
|
|||||||
{{/if}}
|
{{/if}}
|
||||||
manifests:
|
manifests:
|
||||||
-
|
-
|
||||||
image: volkerraschek/build-image:{{#if build.tag}}{{trimPrefix "v" build.tag}}{{else}}latest{{/if}}-amd64
|
image: git.cryptic.systems/volker.raschek/build-image:{{#if build.tag}}{{trimPrefix "v" build.tag}}{{else}}latest{{/if}}-amd64
|
||||||
platform:
|
platform:
|
||||||
architecture: amd64
|
architecture: amd64
|
||||||
os: linux
|
os: linux
|
@ -1,17 +1,9 @@
|
|||||||
{
|
{
|
||||||
"$schema": "https://docs.renovatebot.com/renovate-schema.json",
|
"$schema": "https://docs.renovatebot.com/renovate-schema.json",
|
||||||
"assignees": [ "volker.raschek" ],
|
"extends": [
|
||||||
"automergeStrategy": "merge-commit",
|
"local>volker.raschek/renovate-config:default#master",
|
||||||
"automergeType": "pr",
|
"local>volker.raschek/renovate-config:container#master",
|
||||||
"labels": [ "renovate" ],
|
"local>volker.raschek/renovate-config:actions#master",
|
||||||
"packageRules": [
|
"local>volker.raschek/renovate-config:regexp#master"
|
||||||
{
|
]
|
||||||
"addLabels": [ "renovate/droneci", "renovate/automerge" ],
|
|
||||||
"automerge": true,
|
|
||||||
"matchManagers": "droneci",
|
|
||||||
"matchUpdateTypes": [ "minor", "patch"]
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"rebaseLabel": "renovate/rebase",
|
|
||||||
"rebaseWhen": "behind-base-branch"
|
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user