9082443753 
					 
					
						
						
							
							Refactor docker compose exec usage  
						
						... 
						
						
						
						Introduce centralized variables:
- docker_compose_command_base
- docker_compose_command_exec
Replaced hardcoded 'docker compose exec' with '{{ docker_compose_command_exec }}'
across multiple roles (BigBlueButton, EspoCRM, Friendica, Listmonk, Mailu, Matrix, OpenProject).
Ensures consistent environment file loading and reduces duplicated code.
Details: https://chatgpt.com/share/68d6a276-19d0-800f-839d-d191d97f7c41  
						
						
					 
					
						2025-09-26 16:26:17 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						fa6bb67a66 
					 
					
						
						
							
							Removed whitespaces in templates:  
						
						
						
						
					 
					
						2025-09-22 16:28:57 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						e6803e5614 
					 
					
						
						
							
							refactor(ansible): normalize include_role syntax and unify host config paths via path_join  
						
						... 
						
						
						
						- Remove stray spaces after include_role: across many roles to ensure clean YAML and
  consistent linting/formatting.
- Listmonk:
  - Introduce LISTMONK_CONFIG_HOST = [ docker_compose.directories.config, 'config.toml' ] | path_join
  - Use that var in the template task (dest) and the docker-compose volume mount
- Matrix:
  - Build MATRIX_SYNAPSE_CONFIG_PATH_HOST, MATRIX_SYNAPSE_LOG_PATH_HOST, and
    MATRIX_ELEMENT_CONFIG_PATH_HOST via path_join
- Mobilizon:
  - Build mobilizon_host_conf_exs_file via path_join
  - Keep get_app_conf strictness unchanged (defaults to True in our filter), so behavior
    remains strict even though the explicit third arg was dropped
- Simpleicons:
  - Build server.js and package.json host paths via path_join
- Numerous web-app roles (Confluence, Discourse, EspoCRM, Friendica, Funkwhale, Gitea,
  GitLab, Jenkins, Joomla, Listmonk, Mailu, Mastodon, Matomo, Matrix, MediaWiki,
  Mobilizon, Moodle, Nextcloud, OpenProject, Peertube, Pixelfed, Pretix, Roulette Wheel,
  Snipe-IT, Syncope, Taiga, WordPress, XWiki, Yourls) and web-svc roles (coturn,
  libretranslate, simpleicons) updated for consistent include_role formatting
Why:
- path_join avoids double slashes and missing separators across different config roots
- Consistent include_role: formatting improves readability and prevents linter noise
Ref:
- Conversation: https://chatgpt.com/share/68d14711-727c-800f-b454-7dc4c3c1f4cb  
						
						
					 
					
						2025-09-22 14:55:25 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						dcd1545093 
					 
					
						
						
							
							Merge branch 'master' of github.com:kevinveenbirkenbach/infinito-nexus  
						
						
						
						
					 
					
						2025-09-11 14:17:49 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						cbfb096cdb 
					 
					
						
						
							
							Refactor web health checker & domain expectations (filter-based)  
						
						... 
						
						
						
						- Move all domain→expected-status mapping to filter `web_health_expectations`.
- Require explicit app selection via non-empty `group_names`; only those apps are included.
- Add `www_enabled` flag (wired via `WWW_REDIRECT_ENABLED`) to generate/force www.* → 301.
- Support `redirect_maps` to include manual redirects (sources forced to 301), independent of app selection.
- Aliases always 301; canonicals use per-key override or `server.status_codes.default`, else [200,302,301].
- Remove legacy fallbacks (`server.status_codes.home` / `landingpage`).
- Wire filter output into systemd ExecStart script as JSON expectations.
- Normalize various templates to use `to_json` and minor spacing fixes.
- Update app configs (e.g., YOURLS default=301; Confluence default=302; Bluesky web=405; MediaWiki/Confluence canonical/aliases).
- Constructor now uses `WWW_REDIRECT_ENABLED` for domain generation.
Tests:
- Add comprehensive unit tests for filter: selection by group, keyed/default codes, aliases, www handling, redirect_maps, input sanitization.
- Add unit tests for the standalone checker script (JSON parsing, OK/mismatch counting, sanitization).
See conversation: https://chatgpt.com/share/68c2b93e-de58-800f-8c16-ea05755ba776  
						
						
					 
					
						2025-09-11 13:58:16 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						aac9704e8b 
					 
					
						
						
							
							Refactor: remove legacy update-docker role and references  
						
						... 
						
						
						
						Details:
- Removed update-docker role (README, meta, vars, tasks, script)
- Cleaned references from group_vars, update-compose, and docs
- Adjusted web-app-matrix role (removed @todo pointing to update-docker)
- Updated administrator guide (update-docker no longer mentioned)
Ref: https://chatgpt.com/share/68bbeff1-27a0-800f-bef3-03ab597595fd  
						
						
					 
					
						2025-09-06 10:32:33 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						7ca8b7c71d 
					 
					
						
						
							
							feat(nextcloud): integrate Talk & Whiteboard; refactor to NEXTCLOUD_* vars; full-stack setup  
						
						... 
						
						
						
						config(ports): add Nextcloud websocket port (4003); canonical domains (nextcloud/talk/whiteboard)
refactor: unify get_app_conf usage & Jinja spacing; migrate paths/handlers to new NEXTCLOUD_* vars
feat(plugins): split plugin routines; configure Whiteboard via occ (URL + JWT)
fix(oidc): use NEXTCLOUD_URL for logout; correct LDAP attribute mappings; add OIDC flavor switch
feat: Whiteboard container & reverse-proxy location; Talk STUN/WS ports; Redis URL for Whiteboard
chore: drop obsolete TODO; minor cleanups in oauth2-proxy, matrix, peertube, pgadmin, phpldapadmin, pixelfed, phpmyadmin
security(schema): Bluesky jwt_secret now base64_prefixed_32; add Nextcloud whiteboard_jwt_secret
db: normalize postgres image tag templating; central DB host checks spacing fixes
ops: add full-stack bootstrap (certs, proxy, volumes); internal nginx config reload handler update
refs: https://chatgpt.com/share/68b5f5b7-8d64-800f-b001-1241f818dc0e  
						
						
					 
					
						2025-09-01 21:37:02 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						b02d88adc0 
					 
					
						
						
							
							Refactored server roles for better readability  
						
						
						
						
					 
					
						2025-09-01 18:08:35 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						5f66c1a622 
					 
					
						
						
							
							feat(postgres): add split_postgres_connections filter and average pool fact  
						
						... 
						
						
						
						Compute POSTGRES_ALLOWED_AVG_CONNECTIONS once and propagate to app roles (gitlab, mastodon, listmonk, matrix, pretix, mobilizon, openproject, discourse). Fix docker-compose postgres command (-c flags split). Add unit tests. Minor env/locale tweaks and includes.
Conversation: https://chatgpt.com/share/68b48e72-cc28-800f-9c21-270cbc17d82a  
						
						
					 
					
						2025-08-31 20:04:14 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						2fccebbd1f 
					 
					
						
						
							
							Enforce uppercase README.md and TODO.md filenames  
						
						... 
						
						
						
						- Renamed all Readme.md → README.md
- Renamed all Todo.md → TODO.md
- Added integration test (tests/integration/test_filename_conventions.py) to automatically check naming convention.
Background:
Consistency in file naming (uppercase README.md and TODO.md) avoids issues with case-sensitive filesystems and ensures desktop cards (e.g. Pretix) are properly included.
Ref: https://chatgpt.com/share/68b1d135-c688-800f-9441-46a3cbfee175  
						
						
					 
					
						2025-08-29 18:11:53 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						009bee531b 
					 
					
						
						
							
							Refactor role naming for TLS and proxy stack  
						
						... 
						
						
						
						- Renamed role `srv-tls-core` → `sys-svc-certs`
- Renamed role `srv-https-stack` → `sys-stk-front-pure`
- Renamed role `sys-stk-front` → `sys-stk-front-proxy`
- Updated all includes, READMEs, meta, and dependent roles accordingly
This improves clarity and consistency of naming conventions for certificate management and proxy orchestration.
See: https://chatgpt.com/share/68b19f2c-22b0-800f-ba9b-3f2c8fd427b0  
						
						
					 
					
						2025-08-29 14:38:20 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						6ea8301364 
					 
					
						
						
							
							Refactor: migrate cmp/* and srv/* roles into sys-stk/* and sys-svc/* namespaces  
						
						... 
						
						
						
						- Removed obsolete 'cmp' category, introduced 'stk' category (fa-bars-staggered icon).
- Renamed roles:
  * cmp-db-docker → sys-stk-back-stateful
  * cmp-docker-oauth2 → sys-stk-back-stateless
  * srv-domain-provision → sys-stk-front
  * cmp-db-docker-proxy → sys-stk-full-stateful
  * cmp-docker-proxy → sys-stk-full-stateless
  * cmp-rdbms → sys-svc-rdbms
- Updated all include_role references, vars, templates and README.md files.
- Adjusted run_once comments and variable paths accordingly.
- Updated all web-app roles to use new sys-stk/* and sys-svc/* roles.
Conversation: https://chatgpt.com/share/68b0ba66-09f8-800f-86fc-76c47009d431  
						
						
					 
					
						2025-08-28 22:23:09 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						12a267827d 
					 
					
						
						
							
							Refactor websocket and Taiga variables  
						
						... 
						
						
						
						- Introduce WEBSOCKET_PROTOCOL derived from WEB_PROTOCOL (wss if https, else ws).
- Replace hardcoded websocket URLs in EspoCRM, Nextcloud and Taiga with {{ WEBSOCKET_PROTOCOL }}.
- Fix mautrix-imessage to use ws:// for internal synapse:8008.
- Standardize Pixelfed OIDC env spacing.
- Refactor Taiga variables to TAIGA_* naming convention and clean up EMAIL_BACKEND definition.
See: https://chatgpt.com/share/68af62fa-4dcc-800f-9aaf-cff746daab1e  
						
						
					 
					
						2025-08-27 21:57:04 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						9180182d5b 
					 
					
						
						
							
							Optimized variables  
						
						
						
						
					 
					
						2025-08-21 16:27:10 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						7a6e273ea4 
					 
					
						
						
							
							In between commit, updated matrix and optimized mailu  
						
						
						
						
					 
					
						2025-08-20 17:51:17 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						a4f39ac732 
					 
					
						
						
							
							Renamed webserver roles to more speakable names  
						
						
						
						
					 
					
						2025-08-20 08:54:17 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						a57fe718de 
					 
					
						
						
							
							Optimized spacinbg  
						
						
						
						
					 
					
						2025-08-20 05:49:35 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						d3cc187c3b 
					 
					
						
						
							
							Made System Email Variables UPPER  
						
						
						
						
					 
					
						2025-08-19 09:34:18 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						3a839cfe37 
					 
					
						
						
							
							Refactor systemctl services and categories due to alarm bugs  
						
						... 
						
						
						
						This commit restructures systemctl service definitions and category mappings.
Motivation: Alarm-related bugs revealed inconsistencies in service and role handling.
Preparation step: lays the groundwork for fixing the alarm issues by aligning categories, roles, and service templates. 
						
						
					 
					
						2025-08-18 13:35:43 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						a5941763ff 
					 
					
						
						
							
							refactor: normalize Jinja2 spacing in volume paths and add async support in backup task  
						
						... 
						
						
						
						- Standardized spacing in {{ docker_compose.directories.volumes }} across multiple roles
- Added async and poll support to sys-bkp-docker-2-loc database seeding and file permission tasks
- Moved Installation.md for web-app-matrix into docs/ for better structure 
						
						
					 
					
						2025-08-18 01:05:01 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						5c9ca20e04 
					 
					
						
						
							
							Optimized keycloak variables  
						
						
						
						
					 
					
						2025-08-17 11:40:15 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						0de26fa6c7 
					 
					
						
						
							
							Solved bug existed due to difference between mailu domain and hostname difference. also refactored during this to find the bug  
						
						
						
						
					 
					
						2025-08-16 14:29:07 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						cc2c1dc730 
					 
					
						
						
							
							Renamed injection services  
						
						
						
						
					 
					
						2025-08-16 00:01:46 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						3ac9bd9f90 
					 
					
						
						
							
							Optimized variable typos  
						
						
						
						
					 
					
						2025-08-15 18:43:42 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						85a2f4b3d2 
					 
					
						
						
							
							Solved matrix federation port bug  
						
						
						
						
					 
					
						2025-08-15 18:37:18 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						012426cf3b 
					 
					
						
						
							
							Added more matrix constants  for easier debugging and readability  
						
						
						
						
					 
					
						2025-08-15 18:15:58 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						022800425d 
					 
					
						
						
							
							THE HUGE REFACTORING CALENDER WEEK 33; Optimized Matrix and during this updated variables, and implemented better reset and cleanup mode handling, also solved some initial setup bugs  
						
						
						
						
					 
					
						2025-08-15 15:15:48 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						0228014d34 
					 
					
						
						
							
							Replaced .infinito.service and .infinito.timer by SOFTWARE_NAME suffix, optimized LICENSE link and update OIDC Realm and ID conf  
						
						
						
						
					 
					
						2025-08-14 14:39:18 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						4a65a254ae 
					 
					
						
						
							
							replaced port-ui-desktop with desktop to make it more speakable  
						
						
						
						
					 
					
						2025-08-14 11:45:08 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						db0e030900 
					 
					
						
						
							
							Renamed general and mode constants and implemented a check to verify that constants are just defined ones over the whole repository  
						
						
						
						
					 
					
						2025-08-13 19:11:14 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						004507e233 
					 
					
						
						
							
							Optimized handler flushing  
						
						
						
						
					 
					
						2025-08-13 18:17:05 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						4fa1c6cfbd 
					 
					
						
						
							
							ansible: quote file modes; keycloak: robust LDAP bind update + config cleanup  
						
						... 
						
						
						
						Highlights
- Quote all file modes as strings ("0755"/"0770") across multiple roles to avoid YAML octal quirks and improve portability.
- Keycloak: introduce actions.{import_realm,update_ldap_bind} feature flags and wire them via vars/config.
- Implement idempotent LDAP bind updater (tasks/03_update-ldap-bind.yml):
  * kcadm login with no_log protection,
  * fetch LDAP UserStorage component by name,
  * compare current bindDn/bindCredential and update only when changed.
- Keycloak realm import template: keep providerId="ldap" and set name from keycloak_ldap_component_name.
- Centralize Keycloak readiness check in tasks/main.yml; remove duplicate waits from 02_update_client_redirects.yml and 04_ssh_public_key.yml.
- 01_import.yml: fix typo (keycloak), quote modes, tidy spacing, and replace Jinja-in-Jinja fileglob with concatenation.
- 02_update_client_redirects.yml: correct assert fail_msg filename; keep login-first flow.
- Minor template/vars tidy-ups (spacing, comments, consistent variable usage).
Files touched (excerpt)
- roles/*/*: replace 0755/0770 → "0755"/"0770"
- roles/web-app-keycloak/config/main.yml: add actions map
- roles/web-app-keycloak/vars/main.yml: unify Keycloak vars and feature flags
- roles/web-app-keycloak/tasks/{01_import,02_update_client_redirects,03_update-ldap-bind,04_ssh_public_key,main}.yml
- roles/web-app-keycloak/templates/{docker-compose.yml.j2,import/realm.json.j2}
https://chatgpt.com/share/689bda16-b138-800f-8258-e13f6d7d8239  
						
						
					 
					
						2025-08-13 02:20:38 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						f31565e4c5 
					 
					
						
						
							
							Optimized URLS  
						
						
						
						
					 
					
						2025-08-13 00:33:47 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						84de85d905 
					 
					
						
						
							
							Solved matrix flush handler bug  
						
						
						
						
					 
					
						2025-08-12 12:54:27 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						6e04ac58d2 
					 
					
						
						
							
							Moved blocks to include_tasks to raise performance. Deploy was really slow  
						
						
						
						
					 
					
						2025-08-11 12:28:31 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						149c563831 
					 
					
						
						
							
							Optimized logic for database backups and integrated test to verify that database feature is used correct  
						
						
						
						
					 
					
						2025-08-10 15:06:37 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						aae69ea15b 
					 
					
						
						
							
							Ensure that keycloak is up  
						
						
						
						
					 
					
						2025-08-08 17:25:31 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						7f53cc3a12 
					 
					
						
						
							
							Replaced web_protocol by WEB_PROTOCOL  
						
						
						
						
					 
					
						2025-08-07 12:31:20 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						9228d51e86 
					 
					
						
						
							
							Restructured server config  
						
						
						
						
					 
					
						2025-08-07 11:31:06 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						44e0fea0b2 
					 
					
						
						
							
							Renamed cymais to infinito and did some other optimations and logout implementations  
						
						
						
						
					 
					
						2025-07-29 16:35:42 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						a9e7ed3605 
					 
					
						
						
							
							Implemented flexible upload limits for wordpress and matrix :)  
						
						
						
						
					 
					
						2025-07-26 11:22:01 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						27973c2773 
					 
					
						
						
							
							Optimized injection layer on lua base, as replace for nginx replace. Also optimized cloudflare cache deletion(no everytime for cleanup). Still CDN is required for logout mechanism via JS and Nextcloud deploy is buggy after changing from nginx to openresty. Propably some variable overwritte topic. Should be solved tomorrow.  
						
						
						
						
					 
					
						2025-07-24 19:13:13 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						f62355e490 
					 
					
						
						
							
							Replaced nginx native with openresty for logout injection. Right now still buggy on nextcloud and espocrm  
						
						
						
						
					 
					
						2025-07-24 03:19:16 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						3bc64023af 
					 
					
						
						
							
							Added logout pages to some applications  
						
						
						
						
					 
					
						2025-07-22 18:49:23 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						4b9e7dd3b7 
					 
					
						
						
							
							Implemented universal logout  
						
						
						
						
					 
					
						2025-07-22 13:14:06 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						6e2e3e45a7 
					 
					
						
						
							
							Solved matrix bug  
						
						
						
						
					 
					
						2025-07-21 01:36:10 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						f9426cfb74 
					 
					
						
						
							
							Optimized role structure in preparation for new backup script  
						
						
						
						
					 
					
						2025-07-16 12:31:01 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						af3ea9039c 
					 
					
						
						
							
							Restructure and cleaned up in preparation of new backup logic  
						
						
						
						
					 
					
						2025-07-15 23:51:51 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						bbabc58cf9 
					 
					
						
						
							
							Optimized webport and certbot_dns_api_token  
						
						
						
						
					 
					
						2025-07-15 15:04:27 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						f02ca50f88 
					 
					
						
						
							
							Renamed backup roles  
						
						
						
						
					 
					
						2025-07-14 19:04:30 +02:00