diff options
Diffstat (limited to 'roles/proxmox/system/tasks')
-rw-r--r-- | roles/proxmox/system/tasks/main.yml | 30 | ||||
-rw-r--r-- | roles/proxmox/system/tasks/proxmox_repo.yml | 8 | ||||
-rw-r--r-- | roles/proxmox/system/tasks/user.yml | 28 |
3 files changed, 66 insertions, 0 deletions
diff --git a/roles/proxmox/system/tasks/main.yml b/roles/proxmox/system/tasks/main.yml new file mode 100644 index 0000000..ac84900 --- /dev/null +++ b/roles/proxmox/system/tasks/main.yml | |||
@@ -0,0 +1,30 @@ | |||
1 | --- | ||
2 | - name: remove enterprise repo | ||
3 | file: | ||
4 | path: /etc/apt/sources.list.d/pve-enterprise.list | ||
5 | state: absent | ||
6 | |||
7 | - name: add proxmox no subscription repo | ||
8 | apt_repository: | ||
9 | repo: deb http://download.proxmox.com/debian/pve bookworm pve-no-subscription | ||
10 | |||
11 | - name: create non-root user | ||
12 | user: | ||
13 | name: "{{ proxmox_username }}" | ||
14 | groups: | ||
15 | - sudo | ||
16 | shell: /bin/bash | ||
17 | |||
18 | - name: give passwordless sudo to sudo group | ||
19 | lineinfile: | ||
20 | path: /etc/sudoers | ||
21 | state: present | ||
22 | regexp: '^%sudo' | ||
23 | line: '%sudo ALL=(ALL) NOPASSWD: ALL' | ||
24 | validate: '/usr/sbin/visudo -cf %s' | ||
25 | |||
26 | - name: deploy ssh public key | ||
27 | authorized_key: | ||
28 | user: "{{ proxmox_username }}" | ||
29 | state: present | ||
30 | key: "{{ lookup('file', 'data/common/id_rsa.pub') }}" | ||
diff --git a/roles/proxmox/system/tasks/proxmox_repo.yml b/roles/proxmox/system/tasks/proxmox_repo.yml new file mode 100644 index 0000000..bf2508d --- /dev/null +++ b/roles/proxmox/system/tasks/proxmox_repo.yml | |||
@@ -0,0 +1,8 @@ | |||
1 | - name: remove enterprise repo | ||
2 | file: | ||
3 | path: /etc/apt/sources.list.d/pve-enterprise.list | ||
4 | state: absent | ||
5 | |||
6 | - name: add proxmox no subscription repo | ||
7 | apt_repository: | ||
8 | repo: deb http://download.proxmox.com/debian/pve bookworm pve-no-subscription | ||
diff --git a/roles/proxmox/system/tasks/user.yml b/roles/proxmox/system/tasks/user.yml new file mode 100644 index 0000000..2ba337a --- /dev/null +++ b/roles/proxmox/system/tasks/user.yml | |||
@@ -0,0 +1,28 @@ | |||
1 | - name: create non-root user | ||
2 | user: | ||
3 | name: "{{ username }}" | ||
4 | password: "{{ password | password_hash('sha512') }}" | ||
5 | groups: | ||
6 | - sudo | ||
7 | shell: /bin/bash | ||
8 | update_password: on_create | ||
9 | register: newuser | ||
10 | |||
11 | - name: ensure primary user group exists | ||
12 | group: | ||
13 | name: "{{ username }}" | ||
14 | state: present | ||
15 | |||
16 | - name: give passwordless sudo to sudo group | ||
17 | lineinfile: | ||
18 | path: /etc/sudoers | ||
19 | state: present | ||
20 | regexp: '^%sudo' | ||
21 | line: '%sudo ALL=(ALL) NOPASSWD: ALL' | ||
22 | validate: '/usr/sbin/visudo -cf %s' | ||
23 | |||
24 | - name: deploy ssh public key | ||
25 | authorized_key: | ||
26 | user: "{{ username }}" | ||
27 | state: present | ||
28 | key: "{{ ssh_public_key }}" | ||