diff --git a/10/alpine/docker-entrypoint.sh b/10/alpine/docker-entrypoint.sh index 4bc72cb6b4..ffd2ed501c 100755 --- a/10/alpine/docker-entrypoint.sh +++ b/10/alpine/docker-entrypoint.sh @@ -38,10 +38,10 @@ if [ "$1" = 'postgres' ] && [ "$(id -u)" = '0' ]; then chmod 775 /var/run/postgresql # Create the transaction log directory before initdb is run (below) so the directory is owned by the correct user - if [ "$POSTGRES_INITDB_XLOGDIR" ]; then - mkdir -p "$POSTGRES_INITDB_XLOGDIR" - chown -R postgres "$POSTGRES_INITDB_XLOGDIR" - chmod 700 "$POSTGRES_INITDB_XLOGDIR" + if [ "$POSTGRES_INITDB_WALDIR" ]; then + mkdir -p "$POSTGRES_INITDB_WALDIR" + chown -R postgres "$POSTGRES_INITDB_WALDIR" + chmod 700 "$POSTGRES_INITDB_WALDIR" fi exec su-exec postgres "$BASH_SOURCE" "$@" @@ -55,8 +55,8 @@ if [ "$1" = 'postgres' ]; then # look specifically for PG_VERSION, as it is expected in the DB dir if [ ! -s "$PGDATA/PG_VERSION" ]; then file_env 'POSTGRES_INITDB_ARGS' - if [ "$POSTGRES_INITDB_XLOGDIR" ]; then - export POSTGRES_INITDB_ARGS="$POSTGRES_INITDB_ARGS --xlogdir $POSTGRES_INITDB_XLOGDIR" + if [ "$POSTGRES_INITDB_WALDIR" ]; then + export POSTGRES_INITDB_ARGS="$POSTGRES_INITDB_ARGS --waldir $POSTGRES_INITDB_WALDIR" fi eval "initdb --username=postgres $POSTGRES_INITDB_ARGS" diff --git a/10/docker-entrypoint.sh b/10/docker-entrypoint.sh index c96fea538d..a30e6f759a 100755 --- a/10/docker-entrypoint.sh +++ b/10/docker-entrypoint.sh @@ -38,10 +38,10 @@ if [ "$1" = 'postgres' ] && [ "$(id -u)" = '0' ]; then chmod 775 /var/run/postgresql # Create the transaction log directory before initdb is run (below) so the directory is owned by the correct user - if [ "$POSTGRES_INITDB_XLOGDIR" ]; then - mkdir -p "$POSTGRES_INITDB_XLOGDIR" - chown -R postgres "$POSTGRES_INITDB_XLOGDIR" - chmod 700 "$POSTGRES_INITDB_XLOGDIR" + if [ "$POSTGRES_INITDB_WALDIR" ]; then + mkdir -p "$POSTGRES_INITDB_WALDIR" + chown -R postgres "$POSTGRES_INITDB_WALDIR" + chmod 700 "$POSTGRES_INITDB_WALDIR" fi exec gosu postgres "$BASH_SOURCE" "$@" @@ -55,8 +55,8 @@ if [ "$1" = 'postgres' ]; then # look specifically for PG_VERSION, as it is expected in the DB dir if [ ! -s "$PGDATA/PG_VERSION" ]; then file_env 'POSTGRES_INITDB_ARGS' - if [ "$POSTGRES_INITDB_XLOGDIR" ]; then - export POSTGRES_INITDB_ARGS="$POSTGRES_INITDB_ARGS --xlogdir $POSTGRES_INITDB_XLOGDIR" + if [ "$POSTGRES_INITDB_WALDIR" ]; then + export POSTGRES_INITDB_ARGS="$POSTGRES_INITDB_ARGS --waldir $POSTGRES_INITDB_WALDIR" fi eval "initdb --username=postgres $POSTGRES_INITDB_ARGS" diff --git a/docker-entrypoint.sh b/docker-entrypoint.sh index c96fea538d..a30e6f759a 100755 --- a/docker-entrypoint.sh +++ b/docker-entrypoint.sh @@ -38,10 +38,10 @@ if [ "$1" = 'postgres' ] && [ "$(id -u)" = '0' ]; then chmod 775 /var/run/postgresql # Create the transaction log directory before initdb is run (below) so the directory is owned by the correct user - if [ "$POSTGRES_INITDB_XLOGDIR" ]; then - mkdir -p "$POSTGRES_INITDB_XLOGDIR" - chown -R postgres "$POSTGRES_INITDB_XLOGDIR" - chmod 700 "$POSTGRES_INITDB_XLOGDIR" + if [ "$POSTGRES_INITDB_WALDIR" ]; then + mkdir -p "$POSTGRES_INITDB_WALDIR" + chown -R postgres "$POSTGRES_INITDB_WALDIR" + chmod 700 "$POSTGRES_INITDB_WALDIR" fi exec gosu postgres "$BASH_SOURCE" "$@" @@ -55,8 +55,8 @@ if [ "$1" = 'postgres' ]; then # look specifically for PG_VERSION, as it is expected in the DB dir if [ ! -s "$PGDATA/PG_VERSION" ]; then file_env 'POSTGRES_INITDB_ARGS' - if [ "$POSTGRES_INITDB_XLOGDIR" ]; then - export POSTGRES_INITDB_ARGS="$POSTGRES_INITDB_ARGS --xlogdir $POSTGRES_INITDB_XLOGDIR" + if [ "$POSTGRES_INITDB_WALDIR" ]; then + export POSTGRES_INITDB_ARGS="$POSTGRES_INITDB_ARGS --waldir $POSTGRES_INITDB_WALDIR" fi eval "initdb --username=postgres $POSTGRES_INITDB_ARGS" diff --git a/update.sh b/update.sh index 1257ea796c..e953ab1c7f 100755 --- a/update.sh +++ b/update.sh @@ -43,6 +43,8 @@ for version in "${versions[@]}"; do versionList="$(echo "${suitePackageList["$suite"]}"; curl -fsSL "${packagesBase}/${suite}-pgdg/${version}/binary-amd64/Packages.bz2" | bunzip2)" fullVersion="$(echo "$versionList" | awk -F ': ' '$1 == "Package" { pkg = $2 } $1 == "Version" && pkg == "postgresql-'"$version"'" { print $2; exit }' || true)" + majorVersion="${version%%.*}" + ( set -x cp docker-entrypoint.sh "$version/" @@ -51,7 +53,11 @@ for version in "${versions[@]}"; do -e 's/%%DEBIAN_SUITE%%/'"$suite"'/g' \ -e 's/%%ARCH_LIST%%/'"${suiteArches["$suite"]}"'/g' \ Dockerfile-debian.template > "$version/Dockerfile" - if [ "$version" = '10' ]; then + if [ "$majorVersion" = '9' ]; then + sed -i -e 's/WALDIR/XLOGDIR/g' \ + -e 's/waldir/xlogdir/g' \ + "$version/docker-entrypoint.sh" + else # postgresql-contrib-10 package does not exist, but is provided by postgresql-10 # Packages.gz: # Package: postgresql-10 @@ -84,6 +90,11 @@ for version in "${versions[@]}"; do # https://pkgs.alpinelinux.org/contents?file=prove&path=&name=&branch=&repo=&arch=x86_64 sed -ri 's/(\s+perl)(\s+)/\1-utils\2/' "$version/$variant/Dockerfile" fi + if [ "$majorVersion" = '9' ]; then + sed -i -e 's/WALDIR/XLOGDIR/g' \ + -e 's/waldir/xlogdir/g' \ + "$version/$variant/docker-entrypoint.sh" + fi # TODO remove all this when 9.3 is EOL (2018-10-01 -- from http://www.postgresql.org/support/versioning/) case "$version" in