diff --git a/roles/web-app-xwiki/tasks/03_administrator.yml b/roles/web-app-xwiki/tasks/03_administrator.yml index 4b4d1704..e1da5a4b 100644 --- a/roles/web-app-xwiki/tasks/03_administrator.yml +++ b/roles/web-app-xwiki/tasks/03_administrator.yml @@ -1,7 +1,7 @@ # 1) Create page XWiki. (PUT is idempotent) - name: "XWIKI | Ensure user page exists: XWiki.{{ XWIKI_ADMIN_USER }}" uri: - url: "{{ XWIKI_REST_BASE }}wikis/xwiki/spaces/XWiki/pages/{{ XWIKI_ADMIN_USER | urlencode }}" + url: "{{ [XWIKI_REST_XWIKI_PAGES, XWIKI_ADMIN_USER | urlencode] | url_join }}" method: PUT user: "{{ XWIKI_SUPERADMIN_USERNAME }}" password: "{{ XWIKI_SUPERADMIN_PASSWORD }}" @@ -19,7 +19,7 @@ # 2) Add XWiki.XWikiUsers object (only if it does not already exist) - name: "XWIKI | Check if XWikiUsers object exists" uri: - url: "{{ XWIKI_REST_BASE }}wikis/xwiki/spaces/XWiki/pages/{{ XWIKI_ADMIN_USER | urlencode }}/objects?classname=XWiki.XWikiUsers" + url: "{{ [XWIKI_REST_XWIKI_PAGES, XWIKI_ADMIN_USER | urlencode, 'objects'] | url_join }}?classname=XWiki.XWikiUsers" method: GET user: "{{ XWIKI_SUPERADMIN_USERNAME }}" password: "{{ XWIKI_SUPERADMIN_PASSWORD }}" @@ -29,7 +29,7 @@ - name: "XWIKI | Add XWiki.XWikiUsers object" uri: - url: "{{ XWIKI_REST_BASE }}wikis/xwiki/spaces/XWiki/pages/{{ XWIKI_ADMIN_USER | urlencode }}/objects" + url: "{{ [XWIKI_REST_XWIKI_PAGES, XWIKI_ADMIN_USER | urlencode, 'objects'] | url_join }}" method: POST user: "{{ XWIKI_SUPERADMIN_USERNAME }}" password: "{{ XWIKI_SUPERADMIN_PASSWORD }}" @@ -54,7 +54,7 @@ # 3) (Optional) Assign admin rights by adding the user to XWikiAdminGroup - name: "XWIKI | Ensure user is in XWikiAdminGroup" uri: - url: "{{ XWIKI_REST_BASE }}wikis/xwiki/spaces/XWiki/pages/XWikiAdminGroup/objects" + url: "{{ [XWIKI_REST_XWIKI_PAGES, 'XWikiAdminGroup/objects'] | url_join }}" method: POST user: "{{ XWIKI_SUPERADMIN_USERNAME }}" password: "{{ XWIKI_SUPERADMIN_PASSWORD }}" diff --git a/roles/web-app-xwiki/vars/main.yml b/roles/web-app-xwiki/vars/main.yml index 8b9d3ab2..f574f4da 100644 --- a/roles/web-app-xwiki/vars/main.yml +++ b/roles/web-app-xwiki/vars/main.yml @@ -41,6 +41,7 @@ XWIKI_SUPERADMIN_USERNAME: "superadmin" # REST endpoint (local inside container) XWIKI_REST_BASE: "{{ ['http://127.0.0.1:'~ XWIKI_HOST_PORT, '/rest/'] | url_join }}" XWIKI_REST_XWIKI: "{{ [XWIKI_REST_BASE, 'wikis/xwiki'] | url_join }}" +XWIKI_REST_XWIKI_PAGES: "{{ [XWIKI_REST_BASE, 'wikis/xwiki/spaces/XWiki/pages'] | url_join }}" XWIKI_REST_EXTENSION_INSTALL: "{{ [XWIKI_REST_BASE, 'jobs'] | url_join }}" # Extension IDs + Versions (pin versions explicitly)