# Copyright 2022 Dell Inc. or its subsidiaries. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. --- - name: Start tftp and dhcp hosts: localhost connection: local gather_facts: true tasks: - name: Configure tftp for leap block: - name: Stop the tftp.socket command: systemctl stop tftp.socket - name: Modify tftp.socket to listsen on IPv4 replace: path: "/usr/lib/systemd/system/tftp.socket" regexp: 'ListenDatagram=69' replace: 'ListenDatagram=0.0.0.0:69' - name: Reload the configurations command: systemctl daemon-reload - name: Enable tftp.socket command: systemctl enable tftp.socket - name: Start tftp.socket command: systemctl start tftp.socket when: ("leap" in ansible_facts['distribution'] | lower) - name: Fetch tftp status command: systemctl is-active tftp args: warn: no register: tftp_status ignore_errors: yes changed_when: false - name: Start tftp if inactive state command: systemctl start tftp.service args: warn: no when: "('inactive' in tftp_status.stdout) or ('unknown' in tftp_status.stdout)" - name: Fetch dhcp status command: systemctl is-active dhcpd args: warn: no register: dhcp_status ignore_errors: yes changed_when: false - name: Start dhcp if inactive state command: systemctl start dhcpd.service args: warn: no when: "('inactive' in dhcp_status.stdout) or ('unknown' in dhcp_status.stdout)"