docker-scripts/.github/workflows/epicmorg.ecosystem.images.postgresql.yml
2025-04-25 02:22:27 +03:00

88 lines
2.3 KiB
YAML

name: EpicMorg EcoSystem PostgreSQL Images
on:
workflow_dispatch:
schedule:
- cron: '5 5 * * 1,3,5'
jobs:
build-pgsql-images:
name: Build PostgreSQL ${{ matrix.version }}
runs-on: [ ubuntu-24.04 ]
strategy:
matrix:
version: [
'8.2', '8.3', '8.4',
'9.0', '9.1', '9.2', '9.3', '9.4', '9.5', '9.6',
'10', '11', '12', '13', '14', '15', '16'
# '17', '18'
]
steps:
- uses: actions/checkout@v4
with:
clean: true
show-progress: true
submodules: true
- name: Log into docker registry
uses: nick-fields/retry@v3
with:
retry_wait_seconds: 45
timeout_minutes: 600
max_attempts: 15
command: echo "${{ secrets.DOCKER_SERVER_KEY }}" | docker login -u "${{ secrets.DOCKER_SERVER_LOGIN }}" --password-stdin
- name: Log into Quay.IO registry
uses: nick-fields/retry@v3
with:
retry_wait_seconds: 45
timeout_minutes: 600
max_attempts: 15
command: echo "${{ secrets.QUAY_SERVER_KEY }}" | docker login -u "${{ secrets.QUAY_SERVER_LOGIN }}" --password-stdin "${{ secrets.QUAY_SERVER_URL }}"
- name: Check buildah
uses: nick-fields/retry@v3
with:
retry_wait_seconds: 45
timeout_minutes: 600
max_attempts: 15
command: buildah --version
- name: Test Make
uses: nick-fields/retry@v3
with:
retry_wait_seconds: 45
timeout_minutes: 600
max_attempts: 15
command: make
- name: Install requirements.txt
uses: nick-fields/retry@v3
with:
retry_wait_seconds: 45
timeout_minutes: 600
max_attempts: 15
command: make pip
- name: Build and Deploy PostgreSQL ${{ matrix.version }}
uses: nick-fields/retry@v3
with:
retry_wait_seconds: 45
timeout_minutes: 600
max_attempts: 15
command: cd linux/ecosystem/postgres/${{ matrix.version }} && pwd && make build && make deploy
- name: Cleanup
uses: nick-fields/retry@v3
with:
retry_wait_seconds: 45
timeout_minutes: 600
max_attempts: 15
command: make clean