104 Commits

Author SHA1 Message Date
185f37af52
Refactor systemctl service handling with @ support
- Unified variable naming: system_service_id → systemctl_id
- Added automatic removal of trailing '@' for role directory resolution
- Improved first_found search: prefer target role, fallback to sys-systemctl defaults
- Split template resolution logic to avoid undefined variable errors
- Added assertion in sys-timer to forbid '@' in systemctl_id
- Corrected default systemctl.service.j2 template description
- Cleaned up path handling and script directory generation

Context: conversation about fixing template resolution and @ handling
https://chatgpt.com/share/68a39994-1bb0-800f-a219-109e643c3efb
2025-08-18 23:22:46 +02:00
b9461026a6
refactor: improve get_service_name suffix handling and handler usage
- Updated filter_plugins/get_service_name.py:
  * Default suffix handling: auto-select .service (no '@') or .timer (with '@')
  * Explicit False disables suffix entirely
  * Explicit string suffix still supported
- Updated sys-systemctl handler to use new filter instead of SYS_SERVICE_SUFFIX
- Extended unit tests to cover new suffix behavior

Ref: https://chat.openai.com/share/8c2de9e6-daa0-44dd-ae13-d7a7d8d8b6d9
2025-08-18 22:36:31 +02:00
bf63e01b98
refactor(systemd-services): migrate SYS_SERVICE_SUFFIX usage to get_service_name filter
Replaced all hardcoded service name concatenations with the new get_service_name filter.
This ensures consistency, proper lowercase formatting, and correct handling of '@' suffixed units.

Added unittests for the filter (normal, custom suffix, '@'-units, and lowercase normalization).

Context: see ChatGPT discussion https://chatgpt.com/share/68a38beb-b9bc-800f-b7ed-cdd2b64b2604
2025-08-18 22:24:33 +02:00
4a600ac531
Added get_service_name 2025-08-18 22:10:52 +02:00
2569abc0be
Refactor systemctl services and timers
- Unified service templates into generic systemctl templates
- Introduced reusable filter plugins for script path handling
- Updated path variables and service/timer definitions
- Migrated roles (backup, cleanup, repair, etc.) to use systemctl role
- Added sys-daemon role for core systemd cleanup
- Simplified timer handling via sys-timer role

Note: This is a large refactor and some errors may still exist. Further testing and adjustments will be needed.
2025-08-18 21:22:16 +02:00
29f50da226
Add custom Ansible filter plugin get_category_entries
This commit introduces a new Ansible filter plugin named
'get_category_entries', which returns all role names under the
roles/ directory that start with a given prefix.

Additionally, unit tests (unittest framework) have been added under
tests/unit/filterplugins/ to ensure correct behavior, including:

- Returns empty list when roles/ directory is missing
- Correctly filters and sorts by prefix
- Ignores non-directory entries
- Supports custom roles_path argument
- Returns all roles when prefix is empty

Reference: https://chatgpt.com/share/68a2f1ab-1fe8-800f-b22a-28c1c95802c2
2025-08-18 11:27:26 +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
4a65a254ae
replaced port-ui-desktop with desktop to make it more speakable 2025-08-14 11:45:08 +02:00
5e00deea19
Implemented desktop csp policies 2025-08-14 11:40:09 +02:00
bf7b24c3ee
Implemented get_app_conf 2025-08-14 11:14:15 +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
6e8ae793e3
Added auto setting for redirect urls for keycloak clients. Element and Synapse still need to be mapped 2025-08-11 00:17:18 +02:00
9f865dd215
Removed catetory domain präfix from redirect domains 2025-08-08 09:47:31 +02:00
5a0684fa2d
Adapted CSP to new server dict structure 2025-08-07 13:00:52 +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
3549f4de32
Activated domains creation for svc-db- due to that the domains are used for certificate creation and they need it to use secure communication 2025-07-25 21:12:45 +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
4b9e7dd3b7
Implemented universal logout 2025-07-22 13:14:06 +02:00
16c1a5d834
Refactored get_app_conf 2025-07-22 10:08:47 +02:00
257d0c4673
Set entity name as default domain instead of application_id 2025-07-20 15:44:28 +02:00
1882fcfef5
Changed lam to web-app-lam 2025-07-20 09:59:31 +02:00
d86ca6cc0e
Adapted discourse version to new code after the big refactoring 2025-07-20 09:29:56 +02:00
8ccfb1dfbe
Added icon to mig 2025-07-19 16:26:10 +02:00
6a1a83432f
Different optimations and mig integration. test will fail due to strickter validation checks. need to be cleaned up tomorrow 2025-07-18 20:08:20 +02:00
85195e01f9
Activated loading of env depending on if it exist 2025-07-18 19:40:34 +02:00
409e659143
Overall optimations for application id naming 2025-07-17 17:41:52 +02:00
562603a8cd
Restructured libraries 2025-07-17 16:38:20 +02:00
ad449c3b6a
Adapted roles to new architecture 2025-07-17 15:39:31 +02:00
725fea1169
Solved database credentials bug 2025-07-17 06:32:53 +02:00
c8054ffbc3
Optimized get paths and applications generation 2025-07-15 22:48:59 +02:00
e90c9a18b0
Added get_cymais_path (Rename it later) 2025-07-15 11:58:21 +02:00
56f6a2dc3b
Solved default variable bug 2025-07-14 00:04:13 +02:00
77b3ca5fa2
Allowed key entries with - 2025-07-13 21:20:52 +02:00
e1d090ce04
Removed is_feature_enabled entry 2025-07-13 18:32:50 +02:00
56caecc5d8
Restored get_docker_image functionality 2025-07-13 18:27:24 +02:00
63bf7f7640
Removed legacy code function 2025-07-13 18:02:44 +02:00
ad60f5fb37
Rmeoved is_feature_enabled function 2025-07-13 17:54:09 +02:00
5340d580ce
Optimized filter functions 2025-07-13 14:20:22 +02:00
c8669e19cf
Implemented new get_app_conf function 2025-07-13 13:36:52 +02:00
a18e888044
Implemented new matomo setup 2025-07-13 12:58:10 +02:00
4f5afa1220
Finished portfolio implementation 2025-07-12 22:06:57 +02:00
ead60dab84
Fail safed more parts of the code 2025-07-12 21:35:33 +02:00
33276263b0
Another bulk of refaktoring cleanup 2025-07-11 18:57:40 +02:00
6780950257
Added run_after integration test 2025-07-11 13:53:12 +02:00
74ebb375d0
Added invokable paths for role categories 2025-07-10 18:28:39 +02:00
bafd9e0f23
REmoved dep because they get included via task 2025-07-10 12:45:59 +02:00
f3939661e4
Implemented filter functions to get roles by application_id 2025-07-09 14:52:51 +02:00
1f43536018
Little tweaks :) 2025-07-09 03:55:42 +02:00