mirror of
https://github.com/systemd/systemd.git
synced 2024-11-01 00:51:24 +03:00
5e8deb94c6
Allow to setup new bind mounts for a service at runtime (via either DBUS or a new 'systemctl bind' verb) with a new helper that forks into the unit's mount namespace. Add a new integration test to cover this. Useful for zero-downtime addition to services that are running inside mount namespaces, especially when using RootImage/RootDirectory. If a service runs with a read-only root, a tmpfs is added on /run to ensure we can create the airlock directory for incoming mounts under /run/host/incoming.
13 lines
554 B
Desktop File
13 lines
554 B
Desktop File
[Service]
|
|
RuntimeMaxSec=300
|
|
# Adding a new mounts at runtime works if the unit is in the active state,
|
|
# so use Type=notify to make sure there's no race condition in the test
|
|
Type=notify
|
|
RemainAfterExit=yes
|
|
MountAPIVFS=yes
|
|
PrivateTmp=yes
|
|
BindPaths=/run/testservice-57-fixed:/tmp/testfile_fixed
|
|
InaccessiblePaths=/run/inaccessible
|
|
ExecStartPre=grep -q -F MARKER_FIXED /tmp/testfile_fixed
|
|
ExecStart=/bin/sh -c 'systemd-notify --ready; while ! grep -q -F MARKER_RUNTIME /tmp/testfile_runtime; do sleep 0.1; done; test ! -f /run/inaccessible/testfile_fixed'
|