ci: switched back to buildah build implementation
This commit is contained in:
+28
-22
@@ -37,7 +37,16 @@ cache:
|
||||
services:
|
||||
- docker.io/docker:dind
|
||||
before_script:
|
||||
- docker login -u "$CI_REGISTRY_USER" -p "$CI_REGISTRY_PASSWORD" $CI_REGISTRY
|
||||
- echo $CI_REGISTRY_PASSWORD | docker login -u "$CI_REGISTRY_USER" --password-stdin $CI_REGISTRY
|
||||
|
||||
.buildah-job: &buildah-job
|
||||
image: quay.io/containers/buildah:latest
|
||||
variables:
|
||||
STORAGE_DRIVER: vfs
|
||||
BUILDAH_FORMAT: oci
|
||||
BUILDAH_ISOLATION: chroot
|
||||
before_script:
|
||||
- buildah login -u "$CI_REGISTRY_USER" -p "$CI_REGISTRY_PASSWORD" $CI_REGISTRY
|
||||
|
||||
.trivy-fs-template: &trivy-fs-scan
|
||||
image:
|
||||
@@ -120,23 +129,20 @@ cache:
|
||||
# when: on_success
|
||||
|
||||
.build-template: &build-config
|
||||
<<: *docker-job
|
||||
<<: *buildah-job
|
||||
stage: build
|
||||
variables:
|
||||
DOCKER_BUILDKIT: 1
|
||||
BUILDKIT_INLINE_CACHE: 1
|
||||
script:
|
||||
- docker buildx create --use || true
|
||||
- |
|
||||
docker buildx build . \
|
||||
-t $IMAGE_NAME:$CI_COMMIT_SHA \
|
||||
-f $CONTAINERFILE \
|
||||
buildah bud \
|
||||
--tag $IMAGE_NAME:$CI_COMMIT_SHA \
|
||||
--file $CONTAINERFILE \
|
||||
--target $BUILDTARGET \
|
||||
--push \
|
||||
--build-arg SERVICE_NAME=${SERVICE_NAME} \
|
||||
--build-arg BUILDKIT_INLINE_CACHE=1 \
|
||||
--cache-from type=registry,ref=$IMAGE_NAME-cache \
|
||||
--cache-to type=registry,ref=$IMAGE_NAME-cache,mode=max,oci-mediatypes=true,image-manifest=true,compression=zstd
|
||||
--build-arg SERVICE=${SERVICE_NAME} \
|
||||
--layers \
|
||||
--cache-from $IMAGE_NAME-cache \
|
||||
--cache-to $IMAGE_NAME-cache \
|
||||
.
|
||||
- buildah push $IMAGE_NAME:$CI_COMMIT_SHA
|
||||
rules:
|
||||
- if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
|
||||
when: always
|
||||
@@ -147,26 +153,26 @@ cache:
|
||||
allow_failure: true
|
||||
|
||||
.tag-template: &tag-config
|
||||
<<: *docker-job
|
||||
<<: *buildah-job
|
||||
stage: tag
|
||||
script:
|
||||
- |
|
||||
set -euo pipefail
|
||||
|
||||
docker pull "$IMAGE_NAME:$CI_COMMIT_SHA"
|
||||
buildah pull $IMAGE_NAME:$CI_COMMIT_SHA
|
||||
|
||||
if [ -n "${CI_COMMIT_TAG:-}" ]; then
|
||||
docker tag "$IMAGE_NAME:$CI_COMMIT_SHA" "$IMAGE_NAME:$CI_COMMIT_TAG"
|
||||
docker push "$IMAGE_NAME:$CI_COMMIT_TAG"
|
||||
buildah tag $IMAGE_NAME:$CI_COMMIT_SHA $IMAGE_NAME:$CI_COMMIT_TAG
|
||||
buildah push $IMAGE_NAME:$CI_COMMIT_TAG
|
||||
fi
|
||||
|
||||
if [ -n "${CI_COMMIT_BRANCH:-}" ]; then
|
||||
docker tag "$IMAGE_NAME:$CI_COMMIT_SHA" "$IMAGE_NAME:$CI_COMMIT_REF_SLUG"
|
||||
docker push "$IMAGE_NAME:$CI_COMMIT_REF_SLUG"
|
||||
buildah tag $IMAGE_NAME:$CI_COMMIT_SHA $IMAGE_NAME:$CI_COMMIT_REF_SLUG
|
||||
buildah push $IMAGE_NAME:$CI_COMMIT_REF_SLUG
|
||||
|
||||
if [ "$CI_COMMIT_BRANCH" = "$CI_DEFAULT_BRANCH" ]; then
|
||||
docker tag "$IMAGE_NAME:$CI_COMMIT_SHA" "$IMAGE_NAME:latest"
|
||||
docker push "$IMAGE_NAME:latest"
|
||||
buildah tag $IMAGE_NAME:$CI_COMMIT_SHA $IMAGE_NAME:latest
|
||||
buildah push $IMAGE_NAME:latest
|
||||
fi
|
||||
fi
|
||||
rules:
|
||||
|
||||
+1
-1
@@ -39,7 +39,7 @@ services:
|
||||
- default
|
||||
restart: unless-stopped
|
||||
shm_size: 4mb
|
||||
|
||||
|
||||
migrate:
|
||||
build:
|
||||
context: .
|
||||
|
||||
Reference in New Issue
Block a user