tripleo-ansible/tripleo_ansible/roles/tripleo_module_load/tasks/main.yml

77 lines
2.3 KiB
YAML

---
# Copyright 2019 Red Hat, Inc.
# 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.
# "tripleo_module_load" will search for and load any operating system variable file
- name: Kernel module block
become: true
block:
- name: Ensure /etc/modules-load.d exists
file:
path: /etc/modules-load.d
state: directory
setype: etc_t
selevel: s0
- name: "Load modules"
modprobe:
name: "{{ item.name }}"
params: "{{ item.params | default(omit) }}"
state: "{{ item.state | default('present') }}"
loop: "{{ tripleo_modules }}"
loop_control:
label: "{{ item.name }}"
- name: "Persist modules via modules-load.d"
template:
dest: "/etc/modules-load.d/{{ item.name }}.conf"
src: module-load.conf.j2
loop: "{{ tripleo_modules }}"
loop_control:
label: "{{ item.name }}"
register: _tripleo_modules_add
when:
- (item.state | default('present')) == 'present'
- name: "Drop module persistence"
file:
path: "/etc/modules-load.d/{{ item.name }}.conf"
state: absent
loop: "{{ tripleo_modules }}"
loop_control:
label: "{{ item.name }}"
register: _tripleo_modules_remove
when:
- (item.state | default('present')) == 'absent'
- name: "Set modules persistence via /etc/modules"
lineinfile:
dest: /etc/modules
line: "{{ item.name }} {{ item.params | default('') }}"
state: "{{ item.state | default('present') }}"
create: true
loop: "{{ tripleo_modules }}"
loop_control:
label: "{{ item.name }}"
- name: Modules reload
systemd:
name: systemd-modules-load.service
state: restarted
when:
- _tripleo_modules_add.changed or _tripleo_modules_remove.changed