Ich glaube, ich habe die Ursache gefunden.
Das aktuelle Basisimage installiert den PostgreSQL 18-Server, aber postgres.15.template.yml geht immer noch davon aus, dass die PostgreSQL 15-Serverpakete bereits vorhanden sind. Es wird daher auf
/etc/postgresql/15/main/postgresql.conf
zugegriffen, bevor diese Datei existiert, was zu dem oben genannten ENOENT-Fehler führt.
Ich habe einen kleinen PR erstellt, der das PostgreSQL 15-Holdback-Template so anpasst, dass es die PostgreSQL 18-Serverpakete entfernt und die PostgreSQL 15-Serverpakete installiert, bevor PostgreSQL konfiguriert wird:
Dies sollte den beabsichtigten Pfad wiederherstellen, bei dem das Ändern von postgres.template.yml zu postgres.15.template.yml das Upgrade auf PostgreSQL 18 verzögert.