From 27a1a6560881508610ebd18bd9c8284d39972faf Mon Sep 17 00:00:00 2001 From: mg Date: Mon, 10 May 2021 14:26:39 +0200 Subject: [PATCH] Rolle: r8152 (#88) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit at für alle at entfernt aufräumen when aktiviert aufräumen entferne reboot job aufgeräumt script durch reboot ersetzt reboot script für safekeeping doku depmod noch nhotwendig rolle nur mit explizit gesetzten parameter doku reboot vars angepasst doku aufgeräumt nur wenn nicht schon da funktiiniert grundlegend Co-authored-by: Michael Grote Reviewed-on: https://git.mgrote.net/mg/ansible/pulls/88 Co-Authored-By: mg Co-Committed-By: mg --- group_vars/all.yml | 1 + host_vars/pve3.grote.lan.yml | 2 + host_vars/pve4.grote.lan.yml | 2 + playbooks/base/1_bootstrap.yml | 2 +- playbooks/on-off/r8152.yml | 5 ++ roles/mgrote.musterrolle/meta/main.yml | 2 + roles/mgrote.r8152_kernel_module/README.md | 16 ++++ .../defaults/main.yml | 11 +++ .../files/r8152.53.56-2.15.0.tar.bz2 | Bin 0 -> 70602 bytes .../mgrote.r8152_kernel_module/meta/main.yml | 3 + .../tasks/doing.yml | 83 ++++++++++++++++++ .../mgrote.r8152_kernel_module/tasks/main.yml | 16 ++++ 12 files changed, 142 insertions(+), 1 deletion(-) create mode 100644 playbooks/on-off/r8152.yml create mode 100644 roles/mgrote.r8152_kernel_module/README.md create mode 100644 roles/mgrote.r8152_kernel_module/defaults/main.yml create mode 100644 roles/mgrote.r8152_kernel_module/files/r8152.53.56-2.15.0.tar.bz2 create mode 100644 roles/mgrote.r8152_kernel_module/meta/main.yml create mode 100644 roles/mgrote.r8152_kernel_module/tasks/doing.yml create mode 100644 roles/mgrote.r8152_kernel_module/tasks/main.yml diff --git a/group_vars/all.yml b/group_vars/all.yml index 79d70c42..082a744a 100644 --- a/group_vars/all.yml +++ b/group_vars/all.yml @@ -122,6 +122,7 @@ - acl - vim - rsync + - at programs_only_physical: - hddtemp - ipmitool diff --git a/host_vars/pve3.grote.lan.yml b/host_vars/pve3.grote.lan.yml index 2e72ebde..05c73cf6 100644 --- a/host_vars/pve3.grote.lan.yml +++ b/host_vars/pve3.grote.lan.yml @@ -46,3 +46,5 @@ ### mgrote.apcupsd apcupsd_nis_master: false apcupsd_nis_master_hostname: pve2.grote.lan + ### mgrote.r8152_kernel_module + r8152_module_needed: true diff --git a/host_vars/pve4.grote.lan.yml b/host_vars/pve4.grote.lan.yml index 7894c888..2e0e2ddd 100644 --- a/host_vars/pve4.grote.lan.yml +++ b/host_vars/pve4.grote.lan.yml @@ -46,3 +46,5 @@ ### mgrote.apcupsd apcupsd_nis_master: false apcupsd_nis_master_hostname: pve2.grote.lan + ### mgrote.r8152_kernel_module + r8152_module_needed: true diff --git a/playbooks/base/1_bootstrap.yml b/playbooks/base/1_bootstrap.yml index 30293fcd..5c203396 100644 --- a/playbooks/base/1_bootstrap.yml +++ b/playbooks/base/1_bootstrap.yml @@ -5,7 +5,7 @@ roles: - { role: robertdebock.bootstrap, tags: "bootstrap", become: yes} - { role: ryandaniels.create_users, tags: "user", become: yes} - + - { role: mgrote.r8152_kernel_module } vars: ### reobertdebock.bootstrap bootstrap_user: mg diff --git a/playbooks/on-off/r8152.yml b/playbooks/on-off/r8152.yml new file mode 100644 index 00000000..b1a25a38 --- /dev/null +++ b/playbooks/on-off/r8152.yml @@ -0,0 +1,5 @@ +--- +- hosts: all + become: yes + roles: + - { role: mgrote.r8152_kernel_module } diff --git a/roles/mgrote.musterrolle/meta/main.yml b/roles/mgrote.musterrolle/meta/main.yml index 2e3baa88..4d3701d4 100644 --- a/roles/mgrote.musterrolle/meta/main.yml +++ b/roles/mgrote.musterrolle/meta/main.yml @@ -15,3 +15,5 @@ - all galaxy_tags: - system + collections: + - community.general diff --git a/roles/mgrote.r8152_kernel_module/README.md b/roles/mgrote.r8152_kernel_module/README.md new file mode 100644 index 00000000..982e8da6 --- /dev/null +++ b/roles/mgrote.r8152_kernel_module/README.md @@ -0,0 +1,16 @@ +## mgrote.r8152_kernel_module + +### Beschreibung +Installiert das Module r8152 für die 2.5G USB-C Ethernetkarte DN3025 von Digitus. +Startet den PC neu. + +### Funktioniert auf +- [x] ProxMox 6.1 + +### Variablen + Defaults +see [defaults](./defaults/main.yml) + +``r8152_module_needed`` muss pro Host gesetzt werden. + +### Siehe auch + * [Link zum Treiber](https://www.realtek.com/en/component/zoo/category/network-interface-controllers-10-100-1000m-gigabit-ethernet-usb-3-0-software) diff --git a/roles/mgrote.r8152_kernel_module/defaults/main.yml b/roles/mgrote.r8152_kernel_module/defaults/main.yml new file mode 100644 index 00000000..d4f0dee8 --- /dev/null +++ b/roles/mgrote.r8152_kernel_module/defaults/main.yml @@ -0,0 +1,11 @@ +--- + r8152_filename: r8152.53.56-2.15.0 + r8152_packages: + - pve-headers + - build-essential + - make + r8152_reboot_timeout: 90 + r8152_pre_reboot_delay: 120 + r8152_post_reboot_delay: 60 + r8152_module_needed: false + r8152_safekeeping_reboot_delay: 12 diff --git a/roles/mgrote.r8152_kernel_module/files/r8152.53.56-2.15.0.tar.bz2 b/roles/mgrote.r8152_kernel_module/files/r8152.53.56-2.15.0.tar.bz2 new file mode 100644 index 0000000000000000000000000000000000000000..6a85f32a438e758a01c9d4ce0c2010977107d9ce GIT binary patch literal 70602 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

$UM{=PkuTlAyY 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 QAN`BDBAh5l1Seiu01bpY^#A|> literal 0 HcmV?d00001 diff --git a/roles/mgrote.r8152_kernel_module/meta/main.yml b/roles/mgrote.r8152_kernel_module/meta/main.yml new file mode 100644 index 00000000..b4b6cedb --- /dev/null +++ b/roles/mgrote.r8152_kernel_module/meta/main.yml @@ -0,0 +1,3 @@ +--- + collections: + - community.general diff --git a/roles/mgrote.r8152_kernel_module/tasks/doing.yml b/roles/mgrote.r8152_kernel_module/tasks/doing.yml new file mode 100644 index 00000000..640f7baf --- /dev/null +++ b/roles/mgrote.r8152_kernel_module/tasks/doing.yml @@ -0,0 +1,83 @@ +--- + - name: install needed packages + become: yes + ansible.builtin.package: + name: "{{ r8152_packages }}" + state: present + register: aptp + + + - name: add reboot(for safekeeping) + become: yes + ansible.builtin.shell: shutdown -r "{{ r8152_safekeeping_reboot_delay }}" + + - name: update apt cache + become: yes + ansible.builtin.apt: + update_cache: yes + register: aptc + + - name: updated installed packages + become: yes + ansible.builtin.package: + upgrade: dist + register: apti + + - name: reboot - 1 + ansible.builtin.reboot: + reboot_timeout: "{{ r8152_reboot_timeout }}" + pre_reboot_delay: "{{ r8152_reboot_timeout }}" + post_reboot_delay: "{{ r8152_post_reboot_delay }}" + when: + - aptp.changed + - apti.changed + - aptc.changed + + - name: create dirs + ansible.builtin.file: + path: "{{ item }}" + state: directory + loop: + - "/tmp/r8152/" + - "/lib/modules/r8152/{{ r8152_filename }}" + + - name: copy archive + become: yes + ansible.builtin.copy: + src: "files/{{ r8152_filename }}.tar.bz2" + dest: "/tmp/r8152/{{ r8152_filename }}.tar.bz2" + mode: '0775' + + - name: extract archive + become: yes + ansible.builtin.unarchive: + src: "/tmp/r8152/{{ r8152_filename }}.tar.bz2" + dest: "/lib/modules/r8152/{{ r8152_filename }}" + mode: a+x + extra_opts: [--strip-components=1] # entfernt die erste Ebene des Archives + remote_src: yes #datei liegt also auf dem zielsystem + + - name: make + community.general.make: + chdir: "/lib/modules/r8152/{{ r8152_filename }}" + become: yes + + - name: make install + community.general.make: + chdir: "/lib/modules/r8152/{{ r8152_filename }}" + target: install + become: yes + + - name: depmod -a + become: yes + ansible.builtin.shell: depmod -a + + - name: reboot - 2 + ansible.builtin.reboot: + reboot_timeout: "{{ r8152_reboot_timeout }}" + pre_reboot_delay: "{{ r8152_reboot_timeout }}" + post_reboot_delay: "{{ r8152_post_reboot_delay }}" + + - name: cancel reboot(for safekeeping) + become: yes + ansible.builtin.shell: shutdown -c diff --git a/roles/mgrote.r8152_kernel_module/tasks/main.yml b/roles/mgrote.r8152_kernel_module/tasks/main.yml new file mode 100644 index 00000000..0b1522b6 --- /dev/null +++ b/roles/mgrote.r8152_kernel_module/tasks/main.yml @@ -0,0 +1,16 @@ +--- + - name: check if module is installed - folder + become: yes + stat: + path: "/lib/modules/r8152/{{ r8152_filename }}" + register: folder_exists + + - name: check if module is installed - lsmod + become: yes + ansible.builtin.shell: lsmod + register: module_in_lsmod + changed_when: False # sorgt dafür das der Task nie als "changed" angezeigt wird + + - name: include tasks (taks get skipped if the folder or the module exists or r8152_module_needed == false) + include_tasks: doing.yml + when: ((folder_exists.stat.exists == False) or (module_in_lsmod.stdout.find('r8152') == -1)) and (r8152_module_needed == true)