diff options
author | heqnx <root@heqnx.com> | 2025-06-22 21:37:01 +0300 |
---|---|---|
committer | heqnx <root@heqnx.com> | 2025-06-22 21:37:01 +0300 |
commit | a75493e62c8bd5f1daee90e7ee55bcd67b4b95b8 (patch) | |
tree | 3f0f0568529f22a9e429359035dc7f4ecdb92bc4 /tasks/pve_setup.yaml | |
parent | a6ec8f8947e1d6e56d1c0af6b67af2e7468ef98f (diff) | |
download | ansible-pve-host-a75493e62c8bd5f1daee90e7ee55bcd67b4b95b8.tar.gz ansible-pve-host-a75493e62c8bd5f1daee90e7ee55bcd67b4b95b8.zip |
added preflight, renamed tasks, added local non-pam user
Diffstat (limited to 'tasks/pve_setup.yaml')
-rw-r--r-- | tasks/pve_setup.yaml | 93 |
1 files changed, 93 insertions, 0 deletions
diff --git a/tasks/pve_setup.yaml b/tasks/pve_setup.yaml new file mode 100644 index 0000000..7d04ff2 --- /dev/null +++ b/tasks/pve_setup.yaml @@ -0,0 +1,93 @@ +- name: generate /etc/hosts from template + template: + src: templates/hosts.j2 + dest: /etc/hosts + owner: root + group: root + mode: '0644' + +- name: create /etc/apt/sources.list.d directory + ansible.builtin.file: + path: /etc/apt/sources.list.d + state: directory + mode: '0755' + +- name: deploy proxmox apt sources list + copy: + src: files/pve-no-subscription.list + dest: /etc/apt/sources.list.d/pve-no-subscription.list + mode: '0644' + +- name: create /etc/apt/trusted.gpg.d directory + file: + path: /etc/apt/trusted.gpg.d + state: directory + mode: '0755' + +- name: download proxmox gpg key + get_url: + url: https://enterprise.proxmox.com/debian/proxmox-release-bookworm.gpg + dest: /etc/apt/trusted.gpg.d/proxmox-release-bookworm.gpg + mode: '0644' + +- name: verify proxmox gpg key hash + shell: echo "{{ gpg_key_hash }} /etc/apt/trusted.gpg.d/proxmox-release-bookworm.gpg" | sha512sum -c + vars: + gpg_key_hash: "7da6fe34168adc6e479327ba517796d4702fa2f8b4f0a9833f5ea6e6b48f6507a6da403a274fe201595edc86a84463d50383d07f64bdde2e3658108db7d6dc87" + register: gpg_hash_check + failed_when: gpg_hash_check.rc != 0 + changed_when: false + +- name: update apt packages + apt: + update_cache: true + +- name: upgrade apt packages + apt: + upgrade: dist + +- name: install apt packages + apt: + name: "{{ apt_packages }}" + state: present + update_cache: true + +- name: reboot to activate proxmox ve kernel + reboot: + msg: "rebooting to activate proxmox ve kernel" + connect_timeout: 10 + reboot_timeout: 600 + pre_reboot_delay: 5 + post_reboot_delay: 10 + +- name: install pve packages + apt: + name: "{{ pve_packages }}" + state: present + update_cache: true + +- name: get current running kernel version + command: uname -r + register: current_kernel + changed_when: false + +- name: list installed debian kernel images + shell: dpkg -l | awk '/linux-image-[0-9]/{ print $2 }' | grep -v "{{ current_kernel.stdout }}" + register: kernels_to_remove + changed_when: false + +- name: remove debian default kernels (excluding current) + apt: + name: "{{ kernels_to_remove.stdout_lines }}" + state: absent + when: kernels_to_remove.stdout_lines | length > 0 + +- name: update grub bootloader + command: update-grub + register: grub_update + changed_when: "'Generating grub configuration file' in grub_update.stdout" + +- name: remove problematic apt packages for pve + apt: + name: "{{ apt_packages_to_remove }}" + state: absent |