Skip to content

Rebuild against updated base image #476

Rebuild against updated base image

Rebuild against updated base image #476

Workflow file for this run

name: Build docker image
on:
push:
branches:
- master
tags:
- '*'
env:
POSTGRES18: '18.3'
POSTGRES17: '17.9'
POSTGRES16: '16.13'
POSTGRES15: '15.17'
POSTGRES14: '14.22'
jobs:
setup:
runs-on: ubuntu-latest
outputs:
pg-versions: ${{ steps.set-matrix.outputs.pg-versions }}
steps:
- id: set-matrix
run: |
cat << 'EOF' > versions.json
[
{"key": "postgres18", "version": "${{ env.POSTGRES18 }}", "latest": "1", "latest_major": "1"},
{"key": "postgres17", "version": "${{ env.POSTGRES17 }}", "latest": "", "latest_major": "1"},
{"key": "postgres16", "version": "${{ env.POSTGRES16 }}", "latest": "", "latest_major": "1"},
{"key": "postgres15", "version": "${{ env.POSTGRES15 }}", "latest": "", "latest_major": "1"},
{"key": "postgres14", "version": "${{ env.POSTGRES14 }}", "latest": "", "latest_major": "1"}
]
EOF
echo "pg-versions=$(cat versions.json | jq -c .)" >> $GITHUB_OUTPUT
build:
needs: setup
strategy:
matrix:
pg: ${{ fromJson(needs.setup.outputs.pg-versions) }}
arch:
- amd64
- arm64
include:
- arch: amd64
runner: ubuntu-24.04
- arch: arm64
runner: ubuntu-24.04-arm
runs-on: ${{ matrix.runner }}
steps:
- uses: actions/checkout@v5
- uses: docker/login-action@v3
with:
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}
- name: build and push
env:
POSTGRES_VER: ${{ matrix.pg.version }}
ARCH: ${{ matrix.arch }}
run: |
make
make test
make push
push:
runs-on: ubuntu-latest
needs:
- setup
- build
strategy:
matrix:
pg: ${{ fromJson(needs.setup.outputs.pg-versions) }}
steps:
- uses: actions/checkout@v5
- uses: docker/login-action@v3
with:
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}
- uses: ./.github/actions
with:
version: ${{ matrix.pg.version }}
latest: ${{ matrix.pg.latest }}
latest_major: ${{ matrix.pg.latest_major }}