mirror of
https://github.com/kevinveenbirkenbach/computer-playbook.git
synced 2025-11-10 15:16:31 +00:00
Add Joomla CLI paths and implement non-interactive admin password reset via CLI
Ref: https://chatgpt.com/share/69039c22-f530-800f-a641-fd2636d5b6af
This commit is contained in:
@@ -11,7 +11,7 @@
|
|||||||
# (Optional) specifically wait for the CLI installer script
|
# (Optional) specifically wait for the CLI installer script
|
||||||
- name: "Check for CLI installer"
|
- name: "Check for CLI installer"
|
||||||
command:
|
command:
|
||||||
argv: [ docker, exec, "{{ JOOMLA_CONTAINER }}", test, -f, /var/www/html/installation/joomla.php ]
|
argv: [ docker, exec, "{{ JOOMLA_CONTAINER }}", test, -f, "{{ JOOMLA_INSTALLER_CLI_FILE }}" ]
|
||||||
register: has_installer
|
register: has_installer
|
||||||
changed_when: false
|
changed_when: false
|
||||||
failed_when: false
|
failed_when: false
|
||||||
@@ -32,7 +32,7 @@
|
|||||||
- exec
|
- exec
|
||||||
- "{{ JOOMLA_CONTAINER }}"
|
- "{{ JOOMLA_CONTAINER }}"
|
||||||
- php
|
- php
|
||||||
- /var/www/html/installation/joomla.php
|
- "{{ JOOMLA_INSTALLER_CLI_FILE }}"
|
||||||
- install
|
- install
|
||||||
- "--db-type={{ JOOMLA_DB_CONNECTOR }}"
|
- "--db-type={{ JOOMLA_DB_CONNECTOR }}"
|
||||||
- "--db-host={{ database_host }}"
|
- "--db-host={{ database_host }}"
|
||||||
|
|||||||
18
roles/web-app-joomla/tasks/05_reset_admin_password.yml
Normal file
18
roles/web-app-joomla/tasks/05_reset_admin_password.yml
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
---
|
||||||
|
# Reset Joomla admin password via CLI (inside the container)
|
||||||
|
- name: "Reset Joomla admin password (non-interactive CLI)"
|
||||||
|
command:
|
||||||
|
argv:
|
||||||
|
- docker
|
||||||
|
- exec
|
||||||
|
- "{{ JOOMLA_CONTAINER }}"
|
||||||
|
- php
|
||||||
|
- "{{ JOOMLA_CLI_FILE }}"
|
||||||
|
- user:reset-password
|
||||||
|
- "--username"
|
||||||
|
- "{{ JOOMLA_USER_NAME }}"
|
||||||
|
- "--password"
|
||||||
|
- "{{ JOOMLA_USER_PASSWORD }}"
|
||||||
|
register: j_password_reset
|
||||||
|
no_log: "{{ MASK_CREDENTIALS_IN_LOGS | bool }}"
|
||||||
|
changed_when: j_password_reset.rc == 0
|
||||||
@@ -24,3 +24,7 @@
|
|||||||
- name: Include assert routines
|
- name: Include assert routines
|
||||||
include_tasks: "04_assert.yml"
|
include_tasks: "04_assert.yml"
|
||||||
when: MODE_ASSERT | bool
|
when: MODE_ASSERT | bool
|
||||||
|
|
||||||
|
- name: Reset Admin Password
|
||||||
|
include_tasks: 05_reset_admin_password.yml
|
||||||
|
|
||||||
|
|||||||
@@ -13,6 +13,8 @@ JOOMLA_DOMAINS: "{{ applications | get_app_conf(application_id
|
|||||||
JOOMLA_SITE_NAME: "{{ SOFTWARE_NAME }} Joomla - CMS"
|
JOOMLA_SITE_NAME: "{{ SOFTWARE_NAME }} Joomla - CMS"
|
||||||
JOOMLA_DB_CONNECTOR: "{{ 'pgsql' if database_type == 'postgres' else 'mysqli' }}"
|
JOOMLA_DB_CONNECTOR: "{{ 'pgsql' if database_type == 'postgres' else 'mysqli' }}"
|
||||||
JOOMLA_CONFIG_FILE: "/var/www/html/configuration.php"
|
JOOMLA_CONFIG_FILE: "/var/www/html/configuration.php"
|
||||||
|
JOOMLA_INSTALLER_CLI_FILE: "/var/www/html/installation/joomla.php"
|
||||||
|
JOOMLA_CLI_FILE: "/var/www/html/cli/joomla.php"
|
||||||
|
|
||||||
# User
|
# User
|
||||||
JOOMLA_USER_NAME: "{{ users.administrator.username }}"
|
JOOMLA_USER_NAME: "{{ users.administrator.username }}"
|
||||||
|
|||||||
Reference in New Issue
Block a user