feat: dind
This commit is contained in:
@@ -13,29 +13,33 @@ generate:
|
||||
- pip install -r requirements.txt
|
||||
- ./update.py > tags.txt
|
||||
artifacts:
|
||||
expire_in: 1 hour
|
||||
paths:
|
||||
- tags.txt
|
||||
|
||||
|
||||
build:
|
||||
stage: build
|
||||
needs:
|
||||
- job: generate
|
||||
artifacts: true
|
||||
image: docker:latest
|
||||
stage: build
|
||||
services:
|
||||
- docker:dind
|
||||
variables:
|
||||
KANIKO_ARGS: "--cache=true --cache-repo $CI_REGISTRY_IMAGE --cache-ttl $CACHE_TTL"
|
||||
KANIKO_BUILD_CONTEXT: $CI_PROJECT_DIR
|
||||
image:
|
||||
name: gcr.io/kaniko-project/executor:debug
|
||||
entrypoint: [""]
|
||||
DOCKER_HOST: tcp://docker:2376
|
||||
DOCKER_TLS_CERTDIR: "/certs"
|
||||
DOCKER_TLS_VERIFY: 1
|
||||
DOCKER_CERT_PATH: "$DOCKER_TLS_CERTDIR/client"
|
||||
before_script:
|
||||
- docker login -u "$CI_REGISTRY_USER" -p "$CI_REGISTRY_PASSWORD" $CI_REGISTRY
|
||||
- docker info
|
||||
script:
|
||||
- echo "{\"auths\":{\"$CI_REGISTRY\":{\"auth\":\"$(echo -n ${CI_REGISTRY_USER}:${CI_REGISTRY_PASSWORD} | base64 | tr -d '\n')\"}}}" > /kaniko/.docker/config.json
|
||||
- mkdir -p /kaniko/.docker
|
||||
- |
|
||||
for tag in $(cat tags.txt); do
|
||||
export IMAGE_TAG=$CI_REGISTRY_IMAGE:$tag
|
||||
echo $IMAGE_TAG
|
||||
DOCKERFILE_PATH=$KANIKO_BUILD_CONTEXT/Dockerfile
|
||||
sed "s/latest/$tag/g" $DOCKERFILE_PATH > $DOCKERFILE_PATH.tmp
|
||||
/kaniko/executor --context $KANIKO_BUILD_CONTEXT --dockerfile $DOCKERFILE_PATH.tmp --destination $IMAGE_TAG $KANIKO_ARGS
|
||||
sed "s/latest/$tag/g" Dockerfile > Dockerfile.tmp
|
||||
docker build . --pull -f Dockerfile.tmp -t $IMAGE_TAG
|
||||
docker push $IMAGE_TAG
|
||||
done
|
||||
|
||||
Reference in New Issue
Block a user