Skip to content
Snippets Groups Projects
Unverified Commit db4f44bd authored by Michael Kriese's avatar Michael Kriese Committed by GitHub
Browse files

chore(ci): fix docker release (#5462)

parent 0f47f1ac
No related branches found
No related tags found
No related merge requests found
#!/bin/bash
set -e
PLATFORM=${PLATFORM-linux/amd64}
DOCKER_REPO=${DOCKER_REPO-renovate/cache-test}
DOCKER_TAG=${DOCKER_TAG-slim}
# Strip git ref prefix from version
VERSION=${REF#refs/tags/}
SEMVER_REGEX="^(0|[1-9][0-9]*)\.(0|[1-9][0-9]*)\.(0|[1-9][0-9]*)?$"
if ! [[ "$VERSION" =~ $SEMVER_REGEX ]]; then
echo Not a semver tag - skipping: ${REF#refs/tags/}
exit 1
fi
major=${BASH_REMATCH[1]}
minor=${BASH_REMATCH[2]}
patch=${BASH_REMATCH[3]}
slim=${DOCKER_TAG#latest}
slim=${slim:+-}${slim}
ARGS=(--platform=${PLATFORM} --cache-from=${DOCKER_REPO}:cache-${DOCKER_TAG} --push --tag=${DOCKER_REPO}:${DOCKER_TAG})
# Tag for versions additional
for tag in {"${major}${slim}","${major}.${minor}${slim}","${major}.${minor}.${patch}${slim}"}; do
ARGS+=(--tag ${DOCKER_REPO}:${tag})
done
ARGS+=(--file=./${DOCKER_FILE} .)
set -x
docker buildx build "${ARGS[@]}"
...@@ -41,8 +41,8 @@ jobs: ...@@ -41,8 +41,8 @@ jobs:
- name: Build the Docker image - name: Build the Docker image
run: | run: |
docker buildx build \ docker buildx build \
--platform ${PLATFORM} \ --platform=${PLATFORM} \
--output=type=docker \ --load \
--cache-from=${DOCKER_REPO}:cache-${DOCKER_TAG} \ --cache-from=${DOCKER_REPO}:cache-${DOCKER_TAG} \
--tag=renovate \ --tag=renovate \
--file=./${DOCKER_FILE} . --file=./${DOCKER_FILE} .
...@@ -56,44 +56,10 @@ jobs: ...@@ -56,44 +56,10 @@ jobs:
- name: Image size - name: Image size
run: docker image ls | grep renovate run: docker image ls | grep renovate
- name: Generate tags - name: Docker registry login
run: | run: echo "${{ secrets.DOCKER_RENOVATERELEASE_TOKEN }}" | docker login -u renovaterelease --password-stdin
# Strip git ref prefix from version
VERSION=$(echo "${{ github.ref }}" | sed -e 's,.*/\(.*\),\1,')
# Tag base
tags="${DOCKER_REPO}:${DOCKER_TAG}"
echo "Tagging ${DOCKER_REPO}:${DOCKER_TAG}"
SEMVER_REGEX="^(0|[1-9][0-9]*)\.(0|[1-9][0-9]*)\.(0|[1-9][0-9]*)?$"
if ! [[ "$VERSION" =~ $SEMVER_REGEX ]]; then
echo Not a semver tag - skipping
exit 1
fi
major=${BASH_REMATCH[1]}
minor=${BASH_REMATCH[2]}
patch=${BASH_REMATCH[3]}
slim=${DOCKER_TAG#latest}
slim=${slim:+-}${slim}
# Tag for versions additional - name: Generate tags
for tag in {"${major}${slim}","${major}.${minor}${slim}","${major}.${minor}.${patch}${slim}"}; do env:
echo "Tagging ${DOCKER_REPO}:${tag}" REF: ${{ github.ref }}
tags+=",${DOCKER_REPO}:${tag}" run: ./.github/workflows/docker-release.sh
done
echo "::set-env name=TAGS::${tags}"
- name: Push the Docker image
run: |
echo "${{ secrets.DOCKER_RENOVATERELEASE_TOKEN }}" | docker login -u renovaterelease --password-stdin
docker buildx build \
--platform ${PLATFORM} \
--output=type=registry \
--cache-from=${DOCKER_REPO}:cache-${DOCKER_TAG} \
--tag=${TAGS} \
--file=./${DOCKER_FILE} .
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment