Skip to content

Commit 48d6cd0

Browse files
committed
Merge pull request docker-library#131 from infosiftr/sql-gz
Refactor entrypoint to allow "sql.gz" files as well
2 parents c82348f + 6032cd3 commit 48d6cd0

6 files changed

+60
-60
lines changed

9.1/docker-entrypoint.sh

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -54,8 +54,10 @@ if [ "$1" = 'postgres' ]; then
5454
: ${POSTGRES_DB:=$POSTGRES_USER}
5555
export POSTGRES_USER POSTGRES_DB
5656

57+
psql=( psql -v ON_ERROR_STOP=1 )
58+
5759
if [ "$POSTGRES_DB" != 'postgres' ]; then
58-
psql --username postgres <<-EOSQL
60+
"${psql[@]}" --username postgres <<-EOSQL
5961
CREATE DATABASE "$POSTGRES_DB" ;
6062
EOSQL
6163
echo
@@ -66,22 +68,20 @@ if [ "$1" = 'postgres' ]; then
6668
else
6769
op='CREATE'
6870
fi
69-
70-
psql --username postgres <<-EOSQL
71+
"${psql[@]}" --username postgres <<-EOSQL
7172
$op USER "$POSTGRES_USER" WITH SUPERUSER $pass ;
7273
EOSQL
7374
echo
7475

76+
psql+=( --username "$POSTGRES_USER" --dbname "$POSTGRES_DB" )
77+
7578
echo
7679
for f in /docker-entrypoint-initdb.d/*; do
7780
case "$f" in
78-
*.sh) echo "$0: running $f"; . "$f" ;;
79-
*.sql)
80-
echo "$0: running $f";
81-
psql -v ON_ERROR_STOP=1 --username "$POSTGRES_USER" --dbname "$POSTGRES_DB" < "$f"
82-
echo
83-
;;
84-
*) echo "$0: ignoring $f" ;;
81+
*.sh) echo "$0: running $f"; . "$f" ;;
82+
*.sql) echo "$0: running $f"; "${psql[@]}" < "$f"; echo ;;
83+
*.sql.gz) echo "$0: running $f"; gunzip -c "$f" | "${psql[@]}"; echo ;;
84+
*) echo "$0: ignoring $f" ;;
8585
esac
8686
echo
8787
done

9.2/docker-entrypoint.sh

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -54,8 +54,10 @@ if [ "$1" = 'postgres' ]; then
5454
: ${POSTGRES_DB:=$POSTGRES_USER}
5555
export POSTGRES_USER POSTGRES_DB
5656

57+
psql=( psql -v ON_ERROR_STOP=1 )
58+
5759
if [ "$POSTGRES_DB" != 'postgres' ]; then
58-
psql --username postgres <<-EOSQL
60+
"${psql[@]}" --username postgres <<-EOSQL
5961
CREATE DATABASE "$POSTGRES_DB" ;
6062
EOSQL
6163
echo
@@ -66,22 +68,20 @@ if [ "$1" = 'postgres' ]; then
6668
else
6769
op='CREATE'
6870
fi
69-
70-
psql --username postgres <<-EOSQL
71+
"${psql[@]}" --username postgres <<-EOSQL
7172
$op USER "$POSTGRES_USER" WITH SUPERUSER $pass ;
7273
EOSQL
7374
echo
7475

76+
psql+=( --username "$POSTGRES_USER" --dbname "$POSTGRES_DB" )
77+
7578
echo
7679
for f in /docker-entrypoint-initdb.d/*; do
7780
case "$f" in
78-
*.sh) echo "$0: running $f"; . "$f" ;;
79-
*.sql)
80-
echo "$0: running $f";
81-
psql -v ON_ERROR_STOP=1 --username "$POSTGRES_USER" --dbname "$POSTGRES_DB" < "$f"
82-
echo
83-
;;
84-
*) echo "$0: ignoring $f" ;;
81+
*.sh) echo "$0: running $f"; . "$f" ;;
82+
*.sql) echo "$0: running $f"; "${psql[@]}" < "$f"; echo ;;
83+
*.sql.gz) echo "$0: running $f"; gunzip -c "$f" | "${psql[@]}"; echo ;;
84+
*) echo "$0: ignoring $f" ;;
8585
esac
8686
echo
8787
done

9.3/docker-entrypoint.sh

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -54,8 +54,10 @@ if [ "$1" = 'postgres' ]; then
5454
: ${POSTGRES_DB:=$POSTGRES_USER}
5555
export POSTGRES_USER POSTGRES_DB
5656

57+
psql=( psql -v ON_ERROR_STOP=1 )
58+
5759
if [ "$POSTGRES_DB" != 'postgres' ]; then
58-
psql --username postgres <<-EOSQL
60+
"${psql[@]}" --username postgres <<-EOSQL
5961
CREATE DATABASE "$POSTGRES_DB" ;
6062
EOSQL
6163
echo
@@ -66,22 +68,20 @@ if [ "$1" = 'postgres' ]; then
6668
else
6769
op='CREATE'
6870
fi
69-
70-
psql --username postgres <<-EOSQL
71+
"${psql[@]}" --username postgres <<-EOSQL
7172
$op USER "$POSTGRES_USER" WITH SUPERUSER $pass ;
7273
EOSQL
7374
echo
7475

76+
psql+=( --username "$POSTGRES_USER" --dbname "$POSTGRES_DB" )
77+
7578
echo
7679
for f in /docker-entrypoint-initdb.d/*; do
7780
case "$f" in
78-
*.sh) echo "$0: running $f"; . "$f" ;;
79-
*.sql)
80-
echo "$0: running $f";
81-
psql -v ON_ERROR_STOP=1 --username "$POSTGRES_USER" --dbname "$POSTGRES_DB" < "$f"
82-
echo
83-
;;
84-
*) echo "$0: ignoring $f" ;;
81+
*.sh) echo "$0: running $f"; . "$f" ;;
82+
*.sql) echo "$0: running $f"; "${psql[@]}" < "$f"; echo ;;
83+
*.sql.gz) echo "$0: running $f"; gunzip -c "$f" | "${psql[@]}"; echo ;;
84+
*) echo "$0: ignoring $f" ;;
8585
esac
8686
echo
8787
done

9.4/docker-entrypoint.sh

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -54,8 +54,10 @@ if [ "$1" = 'postgres' ]; then
5454
: ${POSTGRES_DB:=$POSTGRES_USER}
5555
export POSTGRES_USER POSTGRES_DB
5656

57+
psql=( psql -v ON_ERROR_STOP=1 )
58+
5759
if [ "$POSTGRES_DB" != 'postgres' ]; then
58-
psql --username postgres <<-EOSQL
60+
"${psql[@]}" --username postgres <<-EOSQL
5961
CREATE DATABASE "$POSTGRES_DB" ;
6062
EOSQL
6163
echo
@@ -66,22 +68,20 @@ if [ "$1" = 'postgres' ]; then
6668
else
6769
op='CREATE'
6870
fi
69-
70-
psql --username postgres <<-EOSQL
71+
"${psql[@]}" --username postgres <<-EOSQL
7172
$op USER "$POSTGRES_USER" WITH SUPERUSER $pass ;
7273
EOSQL
7374
echo
7475

76+
psql+=( --username "$POSTGRES_USER" --dbname "$POSTGRES_DB" )
77+
7578
echo
7679
for f in /docker-entrypoint-initdb.d/*; do
7780
case "$f" in
78-
*.sh) echo "$0: running $f"; . "$f" ;;
79-
*.sql)
80-
echo "$0: running $f";
81-
psql -v ON_ERROR_STOP=1 --username "$POSTGRES_USER" --dbname "$POSTGRES_DB" < "$f"
82-
echo
83-
;;
84-
*) echo "$0: ignoring $f" ;;
81+
*.sh) echo "$0: running $f"; . "$f" ;;
82+
*.sql) echo "$0: running $f"; "${psql[@]}" < "$f"; echo ;;
83+
*.sql.gz) echo "$0: running $f"; gunzip -c "$f" | "${psql[@]}"; echo ;;
84+
*) echo "$0: ignoring $f" ;;
8585
esac
8686
echo
8787
done

9.5/docker-entrypoint.sh

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -54,8 +54,10 @@ if [ "$1" = 'postgres' ]; then
5454
: ${POSTGRES_DB:=$POSTGRES_USER}
5555
export POSTGRES_USER POSTGRES_DB
5656

57+
psql=( psql -v ON_ERROR_STOP=1 )
58+
5759
if [ "$POSTGRES_DB" != 'postgres' ]; then
58-
psql --username postgres <<-EOSQL
60+
"${psql[@]}" --username postgres <<-EOSQL
5961
CREATE DATABASE "$POSTGRES_DB" ;
6062
EOSQL
6163
echo
@@ -66,22 +68,20 @@ if [ "$1" = 'postgres' ]; then
6668
else
6769
op='CREATE'
6870
fi
69-
70-
psql --username postgres <<-EOSQL
71+
"${psql[@]}" --username postgres <<-EOSQL
7172
$op USER "$POSTGRES_USER" WITH SUPERUSER $pass ;
7273
EOSQL
7374
echo
7475

76+
psql+=( --username "$POSTGRES_USER" --dbname "$POSTGRES_DB" )
77+
7578
echo
7679
for f in /docker-entrypoint-initdb.d/*; do
7780
case "$f" in
78-
*.sh) echo "$0: running $f"; . "$f" ;;
79-
*.sql)
80-
echo "$0: running $f";
81-
psql -v ON_ERROR_STOP=1 --username "$POSTGRES_USER" --dbname "$POSTGRES_DB" < "$f"
82-
echo
83-
;;
84-
*) echo "$0: ignoring $f" ;;
81+
*.sh) echo "$0: running $f"; . "$f" ;;
82+
*.sql) echo "$0: running $f"; "${psql[@]}" < "$f"; echo ;;
83+
*.sql.gz) echo "$0: running $f"; gunzip -c "$f" | "${psql[@]}"; echo ;;
84+
*) echo "$0: ignoring $f" ;;
8585
esac
8686
echo
8787
done

docker-entrypoint.sh

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -54,8 +54,10 @@ if [ "$1" = 'postgres' ]; then
5454
: ${POSTGRES_DB:=$POSTGRES_USER}
5555
export POSTGRES_USER POSTGRES_DB
5656

57+
psql=( psql -v ON_ERROR_STOP=1 )
58+
5759
if [ "$POSTGRES_DB" != 'postgres' ]; then
58-
psql --username postgres <<-EOSQL
60+
"${psql[@]}" --username postgres <<-EOSQL
5961
CREATE DATABASE "$POSTGRES_DB" ;
6062
EOSQL
6163
echo
@@ -66,22 +68,20 @@ if [ "$1" = 'postgres' ]; then
6668
else
6769
op='CREATE'
6870
fi
69-
70-
psql --username postgres <<-EOSQL
71+
"${psql[@]}" --username postgres <<-EOSQL
7172
$op USER "$POSTGRES_USER" WITH SUPERUSER $pass ;
7273
EOSQL
7374
echo
7475

76+
psql+=( --username "$POSTGRES_USER" --dbname "$POSTGRES_DB" )
77+
7578
echo
7679
for f in /docker-entrypoint-initdb.d/*; do
7780
case "$f" in
78-
*.sh) echo "$0: running $f"; . "$f" ;;
79-
*.sql)
80-
echo "$0: running $f";
81-
psql -v ON_ERROR_STOP=1 --username "$POSTGRES_USER" --dbname "$POSTGRES_DB" < "$f"
82-
echo
83-
;;
84-
*) echo "$0: ignoring $f" ;;
81+
*.sh) echo "$0: running $f"; . "$f" ;;
82+
*.sql) echo "$0: running $f"; "${psql[@]}" < "$f"; echo ;;
83+
*.sql.gz) echo "$0: running $f"; gunzip -c "$f" | "${psql[@]}"; echo ;;
84+
*) echo "$0: ignoring $f" ;;
8585
esac
8686
echo
8787
done

0 commit comments

Comments
 (0)