#!/usr/bin/env bash
set -euo pipefail
old_db_home=/usr/bin/postgres17/
new_db_home=/usr/bin/postgres18/
old_db=/var/lib/postgres/17
new_db=/var/lib/postgres/18
sudo -u postgres ${old_db_home}/bin/pg_ctl start -D $old_db -o "-p 5433 -k /tmp" -l /tmp/old-pg.log
sudo -u postgres ${old_db_home}/bin/pg_dumpall -D $old_db -p 5433 -h /tmp > /tmp/all.sql
sudo -u postgres ${old_db_home}/bin/pg_ctl -D $old_db stop
sudo -u postgres ${new_db_home}/bin/initdb -D $new_db
sudo -u postgres ${new_db_home}/bin/pg_ctl start -D $new_db -o "-p 5432 -k /tmp" -l /tmp/new-pg.log
sudo -u postgres ${new_db_home}/bin/psql -p 5432 -f /tmp/all.sql postgres
sudo -u postgres ${new_db_home}/bin/vacuumdb -h /tmp -p 5432 --all --analyze-in-stages
sudo -u postgres ${new_db_home}/bin/pg_ctl -D $old_db stop