---
- name: "π¦ bench new-site --install-app erpnext '{{ ERPNEXT_SITE_NAME }}'"
no_log: "{{ MASK_CREDENTIALS_IN_LOGS | bool }}"
ansible.builtin.shell: |
set -euo pipefail
# nocheck: container-exec-resolver runtime-resolved CID, delegated to the hosting node
container exec -i \
-e DB_ROOT_USER -e DB_ROOT_PASSWORD -e ADMIN_PASSWORD \
{{ ERPNEXT_BACKEND_LOCAL_CID | quote }} bash -c '
bench new-site \
--no-mariadb-socket \
--db-host="{{ ERPNEXT_DB_HOST }}" \
--db-port="{{ ERPNEXT_DB_PORT }}" \
--mariadb-user-host-login-scope=% \
--db-root-username="$DB_ROOT_USER" \
--db-root-password="$DB_ROOT_PASSWORD" \
--admin-password="$ADMIN_PASSWORD" \
--install-app erpnext \
--set-default \
{{ ERPNEXT_SITE_NAME }}
'
delegate_to: "{{ ERPNEXT_BACKEND_HOST_NODE }}"
environment:
DB_ROOT_USER: "{{ ERPNEXT_DB_ROOT_USER }}"
DB_ROOT_PASSWORD: "{{ ERPNEXT_DB_ROOT_PASSWORD }}"
ADMIN_PASSWORD: "{{ ERPNEXT_INITIAL_ADMIN_PASSWORD }}"
register: erpnext_new_site
changed_when: true
timeout: "{{ lookup('timeout', 1800) | int }}"
- name: "π Restart Frappe to pick up the newly-installed app"
ansible.builtin.include_tasks: restart_frappe.yml