network/tests/tasks/get_profile_stat.yml
Noriko Hosoi 77214cbda4 Fingerprint RHEL System Role managed config files
- Add role name to the generated config files.
  # system_role:network

Signed-off-by: Noriko Hosoi <nhosoi@redhat.com>
2023-03-30 13:38:19 -06:00

73 lines
2.3 KiB
YAML

# SPDX-License-Identifier: BSD-3-Clause
---
- name: Initialize NM profile exist and ansible_managed comment flag
set_fact:
lsr_net_profile_exists: false
lsr_net_profile_ansible_managed: false
lsr_net_profile_fingerprint: false
- name: Stat profile file
stat:
get_attributes: false
get_checksum: false
get_mime: false
path: /etc/sysconfig/network-scripts/ifcfg-{{ profile }}
register: profile_stat
- name: Set NM profile exist flag based on the profile files
set_fact:
lsr_net_profile_exists: true
when: profile_stat.stat.exists
# When certain profile is marked as absent but still up, the `nmcli connection`
# still show it with FILENAME starting with /run. Only consider profile exists
# when its FILENAME is in /etc folder
- name: Get NM profile info
shell: nmcli -f NAME,FILENAME connection show |grep {{ profile }} | grep /etc
register: nm_profile_exists
ignore_errors: true
changed_when: false
# lsr_net_profile_ansible_managed:
# lsr_net_profile_fingerprint:
# under NetworkManager's control, the comment is not added by design.
# Thus, set it always to true.
- name: >-
Set NM profile exist flag and ansible_managed flag true
based on the nmcli output
set_fact:
lsr_net_profile_exists: true
lsr_net_profile_ansible_managed: true
lsr_net_profile_fingerprint: true
when: nm_profile_exists.rc == 0
- name: Check ansible_managed comment for the initscripts case
when:
- profile_stat.stat.exists
- nm_profile_exists.rc != 0
block:
- name: Get the ansible_managed comment in ifcfg-{{ profile }}
command: >-
grep "^# Ansible managed"
/etc/sysconfig/network-scripts/ifcfg-{{ profile }}
register: _result
changed_when: false
- name: Verify the ansible_managed comment in ifcfg-{{ profile }}
set_fact:
lsr_net_profile_ansible_managed: true
when:
- _result.stdout_lines | length == 1
- name: Get the fingerprint comment in ifcfg-{{ profile }}
command: >-
grep "^# system_role:network"
/etc/sysconfig/network-scripts/ifcfg-{{ profile }}
register: _result
changed_when: false
- name: Verify the fingerprint comment in ifcfg-{{ profile }}
set_fact:
lsr_net_profile_fingerprint: true
when:
- _result.stdout_lines | length == 1