openstack-ansible-os_ironic/tasks/ironic_conductor_post_install.yml
Dmitriy Rabotyagov 9ad3fd7681 Auto-fix usage of modules via FQCN
Since ansible-core 2.10 it is recommended to use modules via FQCN
In order to align with recommendation, we perform migration
by applying suggestions made by `ansible-lint --fix=fqcn`

Change-Id: Ib3dafb476992c0c75ae1b3cc84024463641a0775
2025-02-12 12:45:21 +01:00

166 lines
4.5 KiB
YAML

---
# Copyright 2015, Rackspace US, Inc.
#
# 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: Copy in sample dhcpd.conf file
ansible.builtin.copy:
src: "dhcpd.conf"
dest: "/etc/dhcp/"
mode: "0644"
when: ironic_standalone
notify:
- Restart isc-dhcp-server
- name: Create tftpboot path
ansible.builtin.file:
path: "{{ ironic_tftpd_root }}"
state: directory
owner: "{{ ironic_system_user_name }}"
group: "{{ ironic_system_group_name }}"
mode: "0755"
- name: Copy in tftpd-hpa config file
ansible.builtin.template:
src: "tftpd-hpa.j2"
dest: "/etc/default/tftpd-hpa"
mode: "0644"
when:
- ansible_facts['os_family'] == 'Debian'
notify:
- Restart tftpd
- name: Copy in tftpd map file
ansible.builtin.template:
src: "map-file"
dest: "{{ ironic_tftpd_root }}/map-file"
mode: "0644"
notify:
- Restart tftpd
- name: Copy library modules into tftpboot
ansible.builtin.copy:
src: "{{ item }}"
dest: "{{ ironic_tftpd_root }}/"
remote_src: true
mode: "0644"
with_items: "{{ ironic_library_modules_paths }}"
- name: Ensure grub directory exists in tftpboot
ansible.builtin.file:
path: "{{ ironic_grub_dir }}"
state: directory
recurse: true
- name: Copy PXE grub config into tftpboot
ansible.builtin.copy:
src: "grub.conf"
dest: "{{ ironic_grub_dir }}/grub.cfg"
mode: "0644"
owner: "ironic"
group: "ironic"
- name: Copy content into tftpboot (files)
ansible.builtin.copy:
src: "{{ item.path }}"
dest: "{{ ironic_tftpd_root }}/{{ item.name }}"
remote_src: true
mode: "0644"
with_items: "{{ (ironic_uefi_modules + ironic_tftp_extra_content) | selectattr('path', 'defined') | list }}"
- name: Copy content into tftpboot (urls)
ansible.builtin.get_url:
url: "{{ item.url }}"
dest: "{{ ironic_tftpd_root }}/{{ item.name }}"
mode: "0644"
with_items: "{{ (ironic_uefi_modules + ironic_tftp_extra_content) | selectattr('url', 'defined') | list }}"
- name: Start up tftp
ansible.builtin.service:
name: "{{ ironic_tftpd_service_name }}"
state: started
enabled: true
- name: Disable default nginx configuration
ansible.builtin.file:
path: /etc/nginx/sites-enabled/default
state: absent
when: "ironic_ipxe_enabled | bool"
notify:
- Restart web server
- name: Remove default nginx config
ansible.builtin.file:
path: /etc/nginx/conf.d/default.conf
state: absent
when: "ironic_ipxe_enabled | bool"
notify:
- Restart web server
- name: Ensure nginx configuration directories exist
ansible.builtin.file:
path: "{{ item }}"
state: directory
mode: "0755"
when: "ironic_ipxe_enabled | bool"
with_items:
- "/etc/nginx/{{ ironic_nginx_conf_path }}"
- name: Write alternate nginx.conf for rh like systems
ansible.builtin.template:
src: nginx-nodefault.conf.j2
dest: "/etc/nginx/nginx-nodefault.conf"
mode: "0644"
when:
- ansible_facts['pkg_mgr'] == 'dnf'
notify:
- Restart web server
- name: Create systemd dropin for rh like systems
ansible.builtin.import_role:
name: systemd_service
when:
- ansible_facts['pkg_mgr'] == 'dnf'
vars:
systemd_services:
- service_name: "nginx"
systemd_overrides_only: true
load: false
systemd_overrides:
Service:
ExecStart:
- ""
- "/usr/sbin/nginx -c /etc/nginx/nginx-nodefault.conf"
notify:
- Restart web server
- name: Configure nginx virtual hosts
ansible.builtin.template:
src: ironic-ipxe.conf.j2
dest: "/etc/nginx/{{ ironic_nginx_conf_path }}/ironic-ipxe.conf"
mode: "0644"
when: "ironic_ipxe_enabled | bool"
notify:
- Restart web server
- name: Link to enable nginx virtual hosts
ansible.builtin.file:
src: "/etc/nginx/sites-available/ironic-ipxe.conf"
path: "/etc/nginx/sites-enabled/ironic-ipxe.conf"
state: link
when:
- ansible_facts['os_family'] == "Debian"
- "ironic_ipxe_enabled | bool"
notify:
- Restart web server