Skip to content

Commit c446a5b

Browse files
committed
Improvements for psql wait script.
* support: Move to shared directory to avoid code drift. * feat: Make DB name configurable
1 parent 0daa6ed commit c446a5b

File tree

4 files changed

+22
-13
lines changed

4 files changed

+22
-13
lines changed

15.0/wait-for-psql.py

+7-4
Original file line numberDiff line numberDiff line change
@@ -10,21 +10,24 @@
1010
arg_parser.add_argument('--db_host', required=True)
1111
arg_parser.add_argument('--db_port', required=True)
1212
arg_parser.add_argument('--db_user', required=True)
13+
arg_parser.add_argument('--db_name', required=True)
1314
arg_parser.add_argument('--db_password', required=True)
1415
arg_parser.add_argument('--timeout', type=int, default=5)
1516

1617
args = arg_parser.parse_args()
1718

19+
conn = None
1820
start_time = time.time()
21+
error = ''
22+
1923
while (time.time() - start_time) < args.timeout:
2024
try:
21-
conn = psycopg2.connect(user=args.db_user, host=args.db_host, port=args.db_port, password=args.db_password, dbname='postgres')
22-
error = ''
25+
conn = psycopg2.connect(user=args.db_user, host=args.db_host, port=args.db_port, password=args.db_password, dbname=args.db_name)
26+
conn.close()
2327
break
2428
except psycopg2.OperationalError as e:
2529
error = e
26-
else:
27-
conn.close()
30+
2831
time.sleep(1)
2932

3033
if error:

16.0/Dockerfile

+1-1
Original file line numberDiff line numberDiff line change
@@ -93,7 +93,7 @@ EXPOSE 8069 8071 8072
9393
# Set the default config file
9494
ENV ODOO_RC /etc/odoo/odoo.conf
9595

96-
COPY wait-for-psql.py /usr/local/bin/wait-for-psql.py
96+
COPY ../shared/wait-for-psql.py /usr/local/bin/wait-for-psql.py
9797

9898
# Set default user when running the container
9999
USER odoo

16.0/wait-for-psql.py

+7-4
Original file line numberDiff line numberDiff line change
@@ -10,21 +10,24 @@
1010
arg_parser.add_argument('--db_host', required=True)
1111
arg_parser.add_argument('--db_port', required=True)
1212
arg_parser.add_argument('--db_user', required=True)
13+
arg_parser.add_argument('--db_name', required=True)
1314
arg_parser.add_argument('--db_password', required=True)
1415
arg_parser.add_argument('--timeout', type=int, default=5)
1516

1617
args = arg_parser.parse_args()
1718

19+
conn = None
1820
start_time = time.time()
21+
error = ''
22+
1923
while (time.time() - start_time) < args.timeout:
2024
try:
21-
conn = psycopg2.connect(user=args.db_user, host=args.db_host, port=args.db_port, password=args.db_password, dbname='postgres')
22-
error = ''
25+
conn = psycopg2.connect(user=args.db_user, host=args.db_host, port=args.db_port, password=args.db_password, dbname=args.db_name)
26+
conn.close()
2327
break
2428
except psycopg2.OperationalError as e:
2529
error = e
26-
else:
27-
conn.close()
30+
2831
time.sleep(1)
2932

3033
if error:

17.0/wait-for-psql.py

+7-4
Original file line numberDiff line numberDiff line change
@@ -10,21 +10,24 @@
1010
arg_parser.add_argument('--db_host', required=True)
1111
arg_parser.add_argument('--db_port', required=True)
1212
arg_parser.add_argument('--db_user', required=True)
13+
arg_parser.add_argument('--db_name', required=True)
1314
arg_parser.add_argument('--db_password', required=True)
1415
arg_parser.add_argument('--timeout', type=int, default=5)
1516

1617
args = arg_parser.parse_args()
1718

19+
conn = None
1820
start_time = time.time()
21+
error = ''
22+
1923
while (time.time() - start_time) < args.timeout:
2024
try:
21-
conn = psycopg2.connect(user=args.db_user, host=args.db_host, port=args.db_port, password=args.db_password, dbname='postgres')
22-
error = ''
25+
conn = psycopg2.connect(user=args.db_user, host=args.db_host, port=args.db_port, password=args.db_password, dbname=args.db_name)
26+
conn.close()
2327
break
2428
except psycopg2.OperationalError as e:
2529
error = e
26-
else:
27-
conn.close()
30+
2831
time.sleep(1)
2932

3033
if error:

0 commit comments

Comments
 (0)