matrix-docker-ansible-deploy/roles/matrix-postgres/tasks/util/create_additional_databases.yml
Slavi Pantaleev c765ceb270 Prevent weird loop error
> Invalid data passed to 'loop', it requires a list, got this instead: matrix_postgres_additional_databases. Hint: If you passed a list/dict of just one element, try adding wantlist=True to your lookup invocation or use q/query instead of lookup.

Well, or working around it, as I've done in this commit (which seems
more sane than `wantlist=True` stuff).
2020-12-13 22:56:56 +02:00

29 lines
1.1 KiB
YAML

---
- name: Retrieve IP of postgres container
command: "{{ matrix_host_command_docker }} inspect matrix-postgres --format='{% raw %}{{ .NetworkSettings.Networks.{% endraw %}{{ matrix_docker_network }}{% raw %}.IPAddress }}{% endraw %}'"
register: matrix_postgres_container_ip
- name: Create additional users in postgres
postgresql_user:
name: "{{ item.username }}"
password: "{{ item.pass }}"
login_host: "{{ matrix_postgres_container_ip.stdout }}"
login_port: 5432
login_user: "{{ matrix_postgres_connection_username }}"
login_password: "{{ matrix_postgres_connection_password }}"
login_db: "{{ matrix_postgres_db_name }}"
loop: "{{ matrix_postgres_additional_databases }}"
- name: Create additional users in postgres
postgresql_db:
name: "{{ item.name }}"
owner: "{{ item.username }}"
lc_ctype: 'C'
lc_collate: 'C'
login_host: "{{ matrix_postgres_container_ip.stdout }}"
login_port: 5432
login_user: "{{ matrix_postgres_connection_username }}"
login_password: "{{ matrix_postgres_connection_password }}"
loop: "{{ matrix_postgres_additional_databases }}"