mirror of
				https://github.com/kevinveenbirkenbach/computer-playbook.git
				synced 2025-10-31 18:29:21 +00:00 
			
		
		
		
	web-app-mediawiki: template-driven LocalSettings.php + admin automation; compose & config tweaks
Config & features:
- roles/web-app-mediawiki/config/main.yml:
  - Add sitename ('Wiki on {{ PRIMARY_DOMAIN | upper }}') and meta_namespace ('Meta')
  - Enable central_database feature and database service
  - Move volumes under docker.volumes (correct indentation)
Tasks & automation:
- roles/web-app-mediawiki/tasks/main.yml:
  - Avoid immediate compose handler flush (docker_compose_flush_handlers: false), then explicit meta: flush_handlers
  - Deploy templated LocalSettings.php to host path
  - Create admin via maintenance/createAndPromote.php (docker exec, idempotent changed_when/failed_when)
Templates:
- roles/web-app-mediawiki/templates/LocalSettings.php.j2:
  - Set $wgSitename, $wgMetaNamespace, $wgServer from MEDIAWIKI_*
  - DB settings (mysql, host:port, name, user, password)
  - Mail settings (EmergencyContact/PasswordSender)
  - Default skin: vector
  - Load basic extensions (ParserFunctions, Cite)
- roles/web-app-mediawiki/templates/docker-compose.yml.j2:
  - Switch to MEDIAWIKI_* vars, mount LocalSettings.php (ro)
  - Use container_port, include curl healthcheck
  - Fix volumes name to MEDIAWIKI_VOLUME
Vars:
- roles/web-app-mediawiki/vars/main.yml:
  - Restructure with MEDIAWIKI_* (sitename, meta_namespace, URL, image/version/container/volume)
  - Define SETTINGS host/dock paths, container_port, default user (www-data)
  - Admin bootstrap vars (name/password/email)
Misc:
- Add empty schema/main.yml placeholder for future validation
Refs: ChatGPT conversation (2025-08-28, Europe/Berlin). Link: https://chatgpt.com/share/68b0ace6-f8f4-800f-b7a7-a51a6c5260f1
			
			
This commit is contained in:
		| @@ -1,16 +1,21 @@ | ||||
| sitename:       "Wiki on {{ PRIMARY_DOMAIN | upper }}" | ||||
| meta_namespace: "Meta" | ||||
| server: | ||||
|   domains: | ||||
|     canonical: | ||||
|       - "wiki.{{ PRIMARY_DOMAIN }}" | ||||
| docker: | ||||
|   services: | ||||
|     database: | ||||
|       enabled:  true | ||||
|     mediawiki:  | ||||
|       image:    mediawiki | ||||
|       version:  latest | ||||
|       backup: | ||||
|         no_stop_required: true | ||||
|       name:     mediawiki | ||||
|     volumes: | ||||
|       data:     mediawiki_data | ||||
|   volumes: | ||||
|     data:     mediawiki_data | ||||
| features: | ||||
|   logout: true | ||||
|   central_database: true | ||||
|   | ||||
		Reference in New Issue
	
	Block a user