
Improve logic for making systemd mount dependent on
network-online.target when network filesystem is being used.
This change improves feature implemented in commit [1].
Currently when device is specified by UUID or LABEL, dependency for
network-online.target is added even it's not a network filesystem.
We should be careful with this as it may create circular dependency.
In my case, circular dependency looked like this:
network.target ->
network-pre.target ->
netfilter-persistent.service ->
local-fs.target ->
var-lib-nova.mount ->
network-online.target ->
network.target
Additionally, this commit was originally supposed to add dependency also
for CIFS mounts(these ones starting from '//') but it never worked in my
opinion. It was also fixed by this change.
[1] 6a9dcb6886
Change-Id: I5d2d9c074aa0390a6f8b7c8c0ba1c839fe26f6c5
Ansible systemd_mount
This Ansible role configures systemd mount files.
This role requires the ansible-config_template
collection to be available
on your local system.
To get collection you can use use the ansible-galaxy
command on the
requirements.yml
file.. You need to install collection before
running this role.
# ansible-galaxy install -r requirements.yml
Release notes for the project can be found at: https://docs.openstack.org/releasenotes/ansible-role-systemd_mount
Example playbook
See the "defaults.yml" file for a full list of all available options.
- name: Create a systemd mount file for Mount1 and 2
hosts: localhost
become: true
roles:
- role: "systemd_mount"
systemd_mounts:
- what: '/var/lib/machines.raw'
where: '/var/lib/machines'
type: 'btrfs'
options: 'loop'
unit:
ConditionPathExists:
- '/var/lib/machines.raw'
state: 'started'
enabled: true
- config_overrides: {}
what: "10.1.10.1:/srv/nfs"
where: "/var/lib/glance/images"
type: "nfs"
options: "_netdev,auto"
unit:
After:
- network.target
Description
Languages
Python
91.2%
Jinja
8.8%