mirror of
https://github.com/kevinveenbirkenbach/computer-playbook.git
synced 2025-08-26 21:45:20 +02:00
- Improved get_service_name filter plugin (clearer suffix handling, consistent var names). - Added MODE_ASSERT flag to optionally execute validation/assertion tasks. - Fixed systemd unit handling: consistent use of %I instead of %i, correct escaping of instance names. - Unified on_failure behavior and alarm composer scripts. - Cleaned up redundant logging, handlers, and debug config. - Strengthened sys-service template resolution with assert (only active when MODE_ASSERT). - Simplified timer and suffix handling with get_service_name filter. - Hardened sensitive tasks with no_log. - Added conditional asserts across roles (Keycloak, DNS, Mailu, Discourse, etc.). These changes improve consistency, safety, and validation across the automation stack. Conversation: https://chatgpt.com/share/68a4ae28-483c-800f-b2f7-f64c7124c274
52 lines
1.2 KiB
YAML
52 lines
1.2 KiB
YAML
- name: Include dependencies
|
|
include_role:
|
|
name: '{{ item }}'
|
|
loop:
|
|
- dev-git
|
|
- dev-make
|
|
- dev-python-yaml
|
|
|
|
- name: Ensure GitHub host key is in known_hosts
|
|
known_hosts:
|
|
path: "~/.ssh/known_hosts"
|
|
name: github.com
|
|
key: "{{ lookup('pipe', 'ssh-keyscan -t ed25519 github.com | grep -v \"^#\"') }}"
|
|
become: true
|
|
no_log: "{{ MASK_CREDENTIALS_IN_LOGS | bool }}"
|
|
|
|
- name: Create installation directory for Kevin's Package Manager
|
|
file:
|
|
path: "{{ pkgmgr_install_path }}"
|
|
state: directory
|
|
mode: '0755'
|
|
become: true
|
|
|
|
- name: Clone Kevin's Package Manager repository
|
|
git:
|
|
repo: "{{ pkgmgr_repo_url }}"
|
|
dest: "{{ pkgmgr_install_path }}"
|
|
version: "HEAD"
|
|
force: yes
|
|
become: true
|
|
|
|
- name: Ensure main.py is executable
|
|
file:
|
|
path: "{{ pkgmgr_install_path }}/main.py"
|
|
mode: '0755'
|
|
become: true
|
|
|
|
- name: create config.yaml
|
|
template:
|
|
src: config.yaml.j2
|
|
dest: "{{ pkgmgr_config_path }}"
|
|
become: true
|
|
|
|
- name: Run the Package Manager install command to create an alias for Kevins package manager
|
|
shell: |
|
|
source ~/.venvs/pkgmgr/bin/activate
|
|
make setup
|
|
args:
|
|
chdir: "{{ pkgmgr_install_path }}"
|
|
executable: /bin/bash
|
|
become: true
|