1
0
woodpecker-sonatype-nexus/.woodpecker/.build.yml

72 lines
1.9 KiB
YAML
Raw Normal View History

2024-05-28 14:46:02 +03:00
when:
2024-05-28 19:13:38 +03:00
- event: [ push, tag, cron, manual ]
evaluate: 'LATEST_TAG == ""'
2024-05-28 14:46:02 +03:00
variables:
- &image_name 'quay.krd.sh/krd/woodpecker-sonatype-nexus'
- &ext_image_name 'docker.io/rockdrilla/woodpecker-sonatype-nexus'
2024-07-28 21:48:18 +03:00
- &buildah_image 'quay.krd.sh/quay_io/containers/buildah:v1.36.0'
2024-07-26 01:35:58 +03:00
- &skopeo_image 'quay.krd.sh/quay_io/containers/skopeo:v1.15.2'
- &go_image 'quay.krd.sh/golang:1.22.5-bookworm'
2024-05-28 14:46:02 +03:00
- &base_image 'quay.krd.sh/gcr_io/distroless/static-debian12:debug-nonroot'
## value list depends on base image
## ref: https://github.com/GoogleContainerTools/distroless#debian-12
- &target_platforms 'linux/amd64,linux/arm,linux/arm64,linux/ppc64le,linux/s390x'
## NB: ${variable} expressions are subject to pre-processing.
## ref: https://woodpecker-ci.org/docs/usage/environment
steps:
- name: verify-registry-credentials
image: *skopeo_image
environment:
GOMAXPROCS: "4"
MALLOC_ARENA_MAX: "4"
secrets: [ REGISTRY_AUTH ]
commands:
- .ci/registry-login.sh quay.krd.sh docker.io
- name: build-all
image: *go_image
environment:
2024-07-28 21:48:18 +03:00
GOPROXY: "${GOPROXY},direct"
GOSUMDB: "${GOSUMDB}"
GOPRIVATE: "${GOPRIVATE}"
2024-07-26 01:35:58 +03:00
GOMAXPROCS: "2"
2024-05-28 14:46:02 +03:00
MALLOC_ARENA_MAX: "4"
##
TARGET_PLATFORMS: *target_platforms
## these secrets are server-wide
commands:
- .ci/build-all.sh
- name: image-all
image: *buildah_image
privileged: true
environment:
GOMAXPROCS: "4"
MALLOC_ARENA_MAX: "4"
##
BUILDAH_FORMAT: "docker"
TARGET_PLATFORMS: *target_platforms
BASE_IMAGE: *base_image
IMAGE_NAME: *image_name
commands:
- .ci/image-all.sh
- name: image-sync
image: *skopeo_image
environment:
GOMAXPROCS: "4"
MALLOC_ARENA_MAX: "4"
##
IMAGE_NAME: *image_name
EXT_IMAGE_NAME: *ext_image_name
commands:
- .ci/sync-all.sh
## personal tweaks :)
labels:
network: dmz