From bb9f3af1e09e9417aaf6c2c34b1b25cff6229236 Mon Sep 17 00:00:00 2001 From: Georg Ledermann Date: Thu, 21 Dec 2023 22:47:10 +0100 Subject: [PATCH] Add support for PostgreSQL 16, drop 11 (#39) * Add support for PostgreSQL 16 This requires Alpine 3.19 * Drop support for PostgreSQL 11 Version 11 has reached end-of-life (EOL) https://www.postgresql.org/support/versioning/ * Install aws-cli via apk instead of pip3 This removes python3 and py3-pip as explicit dependencies. Python is still installed as a derived dependency. This fixes building on Alpine 3.19 --- .github/workflows/build-and-push-images.yml | 2 +- README.md | 6 +++--- src/install.sh | 4 +--- 3 files changed, 5 insertions(+), 7 deletions(-) diff --git a/.github/workflows/build-and-push-images.yml b/.github/workflows/build-and-push-images.yml index 90d1101..6b89df2 100644 --- a/.github/workflows/build-and-push-images.yml +++ b/.github/workflows/build-and-push-images.yml @@ -11,11 +11,11 @@ jobs: strategy: matrix: include: - - { postgres: 11, alpine: '3.10' } - { postgres: 12, alpine: '3.12' } - { postgres: 13, alpine: '3.14' } - { postgres: 14, alpine: '3.16' } - { postgres: 15, alpine: '3.17' } + - { postgres: 16, alpine: '3.19' } steps: - name: Checkout repository diff --git a/README.md b/README.md index 0164acf..9830a6c 100644 --- a/README.md +++ b/README.md @@ -6,13 +6,13 @@ This project provides Docker images to periodically back up a PostgreSQL databas ```yaml services: postgres: - image: postgres:13 + image: postgres:16 environment: POSTGRES_USER: user POSTGRES_PASSWORD: password backup: - image: eeshugerman/postgres-backup-s3:15 + image: eeshugerman/postgres-backup-s3:16 environment: SCHEDULE: '@weekly' # optional BACKUP_KEEP_DAYS: 7 # optional @@ -28,7 +28,7 @@ services: POSTGRES_PASSWORD: password ``` -- Images are tagged by the major PostgreSQL version supported: `11`, `12`, `13`, `14`, or `15`. +- Images are tagged by the major PostgreSQL version supported: `12`, `13`, `14`, `15` or `16`. - The `SCHEDULE` variable determines backup frequency. See go-cron schedules documentation [here](http://godoc.org/github.com/robfig/cron#hdr-Predefined_schedules). Omit to run the backup immediately and then exit. - If `PASSPHRASE` is provided, the backup will be encrypted using GPG. - Run `docker exec sh backup.sh` to trigger a backup ad-hoc. diff --git a/src/install.sh b/src/install.sh index d25fe05..5077ee2 100644 --- a/src/install.sh +++ b/src/install.sh @@ -11,9 +11,7 @@ apk add postgresql-client # install gpg apk add gnupg -apk add python3 -apk add py3-pip # separate package on edge only -pip3 install awscli +apk add aws-cli # install go-cron apk add curl