diff --git a/playbooks/roles/mailman3/tasks/main.yaml b/playbooks/roles/mailman3/tasks/main.yaml index b15ef26d50..d408e13d1f 100644 --- a/playbooks/roles/mailman3/tasks/main.yaml +++ b/playbooks/roles/mailman3/tasks/main.yaml @@ -223,8 +223,8 @@ # can identify a single method that is reliable this list can be trimmed. - name: Wait for DB to be populated command: > - docker exec mailman-compose_database_1 bash -c - 'mysql -u mailman -p"$MYSQL_PASSWORD" -D mailmandb -e + /usr/local/bin/docker-compose -f /etc/mailman-compose/docker-compose.yaml exec -T database + bash -c 'mysql -u mailman -p"$MYSQL_PASSWORD" -D mailmandb -e "SHOW TABLES LIKE \"auth_user\";"' register: django_db_exists delay: 1 @@ -233,7 +233,8 @@ - name: Wait for DB to be populated second approach command: > - docker exec mailman-core sh -c 'alembic -c /usr/lib/python*/site-packages/mailman/config/alembic.cfg current' + /usr/local/bin/docker-compose -f /etc/mailman-compose/docker-compose.yaml exec -T mailman-core + sh -c 'alembic -c /usr/lib/python*/site-packages/mailman/config/alembic.cfg current' register: alembic_version delay: 1 retries: 300 @@ -241,9 +242,8 @@ - name: Wait for DB to be populated third approach shell: > - docker exec mailman-web bash -c - 'python3 manage.py showmigrations' | - grep -q '^ \[ \] [0-9]\+_.*' + /usr/local/bin/docker-compose -f /etc/mailman-compose/docker-compose.yaml exec -T mailman-web + bash -c 'python3 manage.py showmigrations' | grep -q '^ \[ \] [0-9]\+_.*' register: django_db_migrations delay: 1 retries: 300 @@ -255,16 +255,16 @@ - name: Check if django admin user exists command: > - docker exec mailman-compose_database_1 bash -c - 'mysql -u mailman -p"$MYSQL_PASSWORD" -D mailmandb -e + /usr/local/bin/docker-compose -f /etc/mailman-compose/docker-compose.yaml exec -T database + bash -c 'mysql -u mailman -p"$MYSQL_PASSWORD" -D mailmandb -e "SELECT COUNT(id) FROM auth_user WHERE id = 1 AND is_superuser = 1;"' register: django_admin_exists - name: Create django admin user when: django_admin_exists.stdout_lines[1] == "0" command: > - docker exec mailman-web bash -c - "DJANGO_SUPERUSER_PASSWORD={{ mailman3_admin_password }} + /usr/local/bin/docker-compose -f /etc/mailman-compose/docker-compose.yaml exec -T mailman-web + bash -c "DJANGO_SUPERUSER_PASSWORD={{ mailman3_admin_password }} python3 manage.py createsuperuser --no-input --username {{ mailman3_admin_user }} --email '{{ mailman3_admin_email }}'"