diff options
| -rw-r--r-- | ansible/README.md | 5 | ||||
| -rw-r--r-- | ansible/ansible.cfg | 5 | ||||
| -rw-r--r-- | ansible/inventory.proxmox.yaml | 2 | ||||
| -rw-r--r-- | ansible/requirements.yml | 7 | ||||
| -rw-r--r-- | ansible/roles/docker/tasks/install_docker.yml | 6 | ||||
| -rw-r--r-- | ansible/roles/k8s/tasks/install_k3s_worker.yml | 2 | ||||
| -rw-r--r-- | ansible/roles/update_system/tasks/main.yml | 4 |
7 files changed, 24 insertions, 7 deletions
diff --git a/ansible/README.md b/ansible/README.md index 2db4ee2..bddd6df 100644 --- a/ansible/README.md +++ b/ansible/README.md @@ -5,3 +5,8 @@ This folder contains Ansible playbooks and roles for configuration management. ## Structure - **roles/**: Reusable Ansible roles (e.g., Docker, Nginx). - **playbooks/**: Playbooks for orchestrating tasks. + +## Known Issue +- `community.proxmox` v1.4.0 shows deprecation warning about `_collections_compat` +- Fix is in PR #242, awaiting release +- Warning will disappear when collection is updated diff --git a/ansible/ansible.cfg b/ansible/ansible.cfg index 4c15ae0..9318edc 100644 --- a/ansible/ansible.cfg +++ b/ansible/ansible.cfg @@ -7,3 +7,8 @@ retry_files_enabled = False inventory = ./inventory.proxmox.yaml vault_password_file = ./.vault_password interpreter_python = auto_silent + +# INJECT_FACTS_AS_VARS default to `True` is deprecated, +# top-level facts will not be auto injected after the change. +# This feature will be removed from ansible-core version 2.24. +INJECT_FACTS_AS_VARS = False diff --git a/ansible/inventory.proxmox.yaml b/ansible/inventory.proxmox.yaml index cd0699b..1b4fb6f 100644 --- a/ansible/inventory.proxmox.yaml +++ b/ansible/inventory.proxmox.yaml @@ -1,5 +1,5 @@ --- -plugin: community.general.proxmox +plugin: community.proxmox.proxmox url: https://pve.vpn:8006 validate_certs: false want_facts: true diff --git a/ansible/requirements.yml b/ansible/requirements.yml new file mode 100644 index 0000000..bbb2a03 --- /dev/null +++ b/ansible/requirements.yml @@ -0,0 +1,7 @@ +--- +collections: + - name: community.general + version: ">=12.1.0" + - name: community.proxmox + version: ">=1.4.0" +... diff --git a/ansible/roles/docker/tasks/install_docker.yml b/ansible/roles/docker/tasks/install_docker.yml index 3179618..38c56c1 100644 --- a/ansible/roles/docker/tasks/install_docker.yml +++ b/ansible/roles/docker/tasks/install_docker.yml @@ -1,8 +1,8 @@ --- - name: Set Docker repository variables based on OS ansible.builtin.set_fact: - docker_repo: "{{ docker_repos[ansible_distribution] }}" - docker_gpg_key_url: "{{ docker_gpg_keys[ansible_distribution] }}" + docker_repo: "{{ docker_repos[ansible_facts['distribution']] }}" + docker_gpg_key_url: "{{ docker_gpg_keys[ansible_facts['distribution']] }}" - name: Install required dependencies ansible.builtin.apt: @@ -27,7 +27,7 @@ ansible.builtin.apt_repository: repo: >- deb [arch=amd64 signed-by=/etc/apt/keyrings/docker.asc] - {{ docker_repo }} {{ ansible_distribution_release }} stable + {{ docker_repo }} {{ ansible_facts['distribution_release'] }} stable state: present filename: docker diff --git a/ansible/roles/k8s/tasks/install_k3s_worker.yml b/ansible/roles/k8s/tasks/install_k3s_worker.yml index b550b88..eda028b 100644 --- a/ansible/roles/k8s/tasks/install_k3s_worker.yml +++ b/ansible/roles/k8s/tasks/install_k3s_worker.yml @@ -2,7 +2,7 @@ - name: Retrieve k3s token and master IP from master node ansible.builtin.set_fact: k3s_token: "{{ hostvars[groups['tag_k3s_master'][0]].k3s_token }}" - k3s_master_ip: "{{ hostvars[groups['tag_k3s_master'][0]].ansible_default_ipv4.address }}" + k3s_master_ip: "{{ hostvars[groups['tag_k3s_master'][0]].ansible_facts['default_ipv4']['address'] }}" when: hostvars[groups['tag_k3s_master'][0]].k3s_token is defined - name: Ensure /opt/k3s directory exists diff --git a/ansible/roles/update_system/tasks/main.yml b/ansible/roles/update_system/tasks/main.yml index 6195d64..b83dca4 100644 --- a/ansible/roles/update_system/tasks/main.yml +++ b/ansible/roles/update_system/tasks/main.yml @@ -4,7 +4,7 @@ update_cache: true upgrade: true autoremove: true - when: ansible_pkg_mgr == "apt" + when: ansible_facts['pkg_mgr'] == "apt" - name: Update and upgrade system packages (RedHat-based) ansible.builtin.dnf: @@ -12,5 +12,5 @@ name: "*" state: present autoremove: true - when: ansible_pkg_mgr == "dnf" + when: ansible_facts['pkg_mgr'] == "dnf" ... |
