refactor ♻️: Refactor shell commands for better error handling and consistency
Some checks failed
ansible-lint / Ansible Lint (push) Failing after 10s
Some checks failed
ansible-lint / Ansible Lint (push) Failing after 10s
Updated shell commands to use `ansible.builtin.shell` with `executable: /bin/bash`, added `set -o pipefail` for improved error propagation, and refactored variable registration for clarity.
This commit is contained in:
@@ -41,19 +41,26 @@
|
||||
{{ en_interfaces }}
|
||||
|
||||
- name: Check supported Wake-on-LAN modes
|
||||
ansible.builtin.shell: "ethtool {{ item }} | grep 'Supports Wake-on' | tail -1 | awk '{print $3}'"
|
||||
ansible.builtin.shell: |
|
||||
set -o pipefail
|
||||
ethtool {{ item }} | grep 'Supports Wake-on' | tail -1 | awk '{print $3}'
|
||||
args:
|
||||
executable: /bin/bash
|
||||
changed_when: false
|
||||
loop: "{{ en_interfaces }}"
|
||||
register: wol_supported
|
||||
changed_when: false
|
||||
when: en_interfaces | length > 0
|
||||
|
||||
- name: WOL | Check if enabled
|
||||
shell: >
|
||||
ansible.builtin.shell: |
|
||||
set -o pipefail
|
||||
ethtool {{ item }} | grep 'Wake-on' | tail -1 | awk '{print substr($0,length,1)}'
|
||||
register: wol_enabled
|
||||
args:
|
||||
executable: /bin/bash
|
||||
changed_when: false
|
||||
failed_when: false
|
||||
loop: "{{ en_interfaces }}"
|
||||
register: wol_enabled
|
||||
when: en_interfaces | length > 0
|
||||
|
||||
- name: "Set Wake-on-LAN to {{ wol_mode }}"
|
||||
@@ -90,7 +97,7 @@
|
||||
loop: "{{ en_interfaces }}"
|
||||
when: en_interfaces | length > 0
|
||||
|
||||
- name: Get MAC addresses
|
||||
- name: Get MAC addresses
|
||||
ansible.builtin.set_fact:
|
||||
wol_mac_addresses: >-
|
||||
{{ wol_mac_addresses | default([]) + [ hostvars[inventory_hostname]['ansible_' ~ item].macaddress ] }}
|
||||
@@ -105,4 +112,3 @@
|
||||
Physical Interfaces: {{ en_interfaces | join(', ') }}
|
||||
WOL Mode: {{ wol_mode }}
|
||||
MAC Addresses: {{ wol_mac_addresses | join(', ') }}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user