Skip to content

fix: syntax

fix: syntax #87

Workflow file for this run

name: Build
on:
push:
workflow_dispatch:
concurrency:
group: ${{ github.workflow }}-${{ github.head_ref || github.ref }}
cancel-in-progress: true
jobs:
Build:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4
- name: Set up QEMU
uses: docker/setup-qemu-action@49b3bc8e6bdd4a60e6116a5414239cba5943d3cf # v3
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@c47758b77c9736f4b2ef4073d4d51994fabfe349 # v3
- name: Log in to the Container registry
uses: docker/login-action@9780b0c442fbb1117ed29e0efdff1e18412f7567 # v3
with:
registry: docker.io
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_TOKEN }}
#we totally ignore the docker tag in the Dockerfile, since the autoupgrader may be skipping version
- name: Fetch recent tags from source
id: fetch_source_tags
run: |
curl -s "https://hub.docker.com/v2/repositories/bitnami/mariadb/tags/?page_size=100" | \
jq -r '.results | sort_by(.last_updated) | reverse | map(select(.name | test("^[0-9]+\\.[0-9]+\\.[0-9]+-debian-12"))) | .[].name' > source_tags.txt
- name: Fetch destination tags
id: fetch_dest_tags
run: |
curl -s "https://hub.docker.com/v2/repositories/catglobe/mariadb/tags/?page_size=100" | \
jq -r '.results[].name' > dest_tags.txt
- name: Show fetched source tags
run: |
echo "Source tags fetched:"
cat source_tags.txt
echo "Destination tags fetched:"
cat dest_tags.txt
- name: Check if source tags list is empty
id: check_source_tags
run: |
if [ ! -s source_tags.txt ]; then
echo "No tags matching debian-12 found, skipping build."
exit 0
fi
- name: Find missing tags
id: find_missing_tags
run: |
missing_tags=$(comm -23 <(sort source_tags.txt) <(sort dest_tags.txt))
echo "missing_tags=$missing_tags" >> $GITHUB_ENV
echo "Missing tags: $missing_tags"
- name: Build and Push Missing Tags
if: env.missing_tags != ''
run: |
for tag in $missing_tags; do
echo "Updating Dockerfile with tag: $tag"
sed -i "s|^FROM bitnami/mariadb:.*|FROM bitnami/mariadb:$tag|" Dockerfile
echo "Building and pushing tag: $tag"
docker build --platform linux/amd64,linux/arm64 \
--tag ${{ secrets.DOCKER_USERNAME }}/mariadb:$tag \
--push .
done