65 lines
2.1 KiB
YAML
65 lines
2.1 KiB
YAML
---
|
|
# Don't replace current driver until it's not a *-ct one
|
|
- name: Set default extroot status fact to false
|
|
ansible.builtin.set_fact:
|
|
replace_ath10k_ct_driver: false
|
|
|
|
# Check current driver release
|
|
- name: Check current ath10k firmware release
|
|
ansible.builtin.command:
|
|
cmd: "opkg list-installed | grep ath10k-firmware | awk '{print $1}'"
|
|
uses_shell: true
|
|
register: ath10k_firmware_current_release
|
|
changed_when: ath10k_firmware_current_release.rc != 0
|
|
|
|
# Enable reinstall if installed driver contain *-ct postfix
|
|
- name: Enable replacement of current driver
|
|
ansible.builtin.set_fact:
|
|
replace_ath10k_ct_driver: true
|
|
when: "'-ct' in ath10k_firmware_current_release.stdout"
|
|
|
|
# Replace current driver with new one
|
|
- name: Replace ath10k-ct firmware and module
|
|
when: replace_ath10k_ct_driver
|
|
block:
|
|
# Get current ath10k module package name
|
|
- name: Check current ath10k module release
|
|
ansible.builtin.command:
|
|
cmd: "opkg list-installed | grep kmod-ath10k | awk '{print $1}'"
|
|
uses_shell: true
|
|
register: ath10k_kmod_current_release
|
|
|
|
# Set current ath10k module package name fact
|
|
- name: Set current ath10k module release fact
|
|
ansible.builtin.set_fact:
|
|
ath10k_kmod_pkg_name: "{{ ath10k_kmod_current_release.stdout }}"
|
|
|
|
# Set current driver release name fact
|
|
- name: Set current driver release name fact
|
|
ansible.builtin.set_fact:
|
|
ath10k_driver_pkg_name: "{{ ath10k_firmware_current_release.stdout }}"
|
|
|
|
# Remove current driver
|
|
- name: Remove current driver
|
|
opkg:
|
|
name: "{{ item }}"
|
|
state: "absent"
|
|
loop: ["{{ ath10k_kmod_pkg_name }}", "{{ ath10k_driver_pkg_name }}"]
|
|
|
|
# Update opkg cache
|
|
- name: Update opkg cache
|
|
ansible.builtin.command:
|
|
cmd: "opkg update"
|
|
changed_when: false
|
|
|
|
# Install new driver
|
|
- name: Install new driver
|
|
opkg:
|
|
name: "{{ item }}"
|
|
state: "present"
|
|
loop:
|
|
[
|
|
"{{ ath10k_kmod_pkg_name | regex_replace('-?ct', '') }}",
|
|
"{{ ath10k_driver_pkg_name | regex_replace('-?ct', '') }}",
|
|
]
|