summaryrefslogtreecommitdiffstats
path: root/test/test-path
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-27 13:00:47 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-27 13:00:47 +0000
commit2cb7e0aaedad73b076ea18c6900b0e86c5760d79 (patch)
treeda68ca54bb79f4080079bf0828acda937593a4e1 /test/test-path
parentInitial commit. (diff)
downloadsystemd-upstream.tar.xz
systemd-upstream.zip
Adding upstream version 247.3.upstream/247.3upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'test/test-path')
-rw-r--r--test/test-path/basic.target22
-rw-r--r--test/test-path/path-changed.path8
-rw-r--r--test/test-path/path-changed.service7
-rw-r--r--test/test-path/path-directorynotempty.path8
-rw-r--r--test/test-path/path-directorynotempty.service7
-rw-r--r--test/test-path/path-exists.path8
-rw-r--r--test/test-path/path-exists.service7
-rw-r--r--test/test-path/path-existsglob.path8
-rw-r--r--test/test-path/path-existsglob.service7
-rw-r--r--test/test-path/path-makedirectory.path10
-rw-r--r--test/test-path/path-makedirectory.service7
-rw-r--r--test/test-path/path-modified.path8
-rw-r--r--test/test-path/path-modified.service7
-rw-r--r--test/test-path/path-mycustomunit.service7
-rw-r--r--test/test-path/path-unit.path9
-rw-r--r--test/test-path/paths.target12
-rw-r--r--test/test-path/sysinit.target15
17 files changed, 157 insertions, 0 deletions
diff --git a/test/test-path/basic.target b/test/test-path/basic.target
new file mode 100644
index 0000000..d8cdd5a
--- /dev/null
+++ b/test/test-path/basic.target
@@ -0,0 +1,22 @@
+# SPDX-License-Identifier: LGPL-2.1-or-later
+#
+# This file is part of systemd.
+#
+# systemd is free software; you can redistribute it and/or modify it
+# under the terms of the GNU Lesser General Public License as published by
+# the Free Software Foundation; either version 2.1 of the License, or
+# (at your option) any later version.
+
+[Unit]
+Description=Basic System
+Documentation=man:systemd.special(7)
+Requires=sysinit.target
+Wants=sockets.target timers.target paths.target slices.target
+After=sysinit.target sockets.target paths.target slices.target tmp.mount
+
+# We support /var, /tmp, /var/tmp, being on NFS, but we don't pull in
+# remote-fs.target by default, hence pull them in explicitly here. Note that we
+# require /var and /var/tmp, but only add a Wants= type dependency on /tmp, as
+# we support that unit being masked, and this should not be considered an error.
+RequiresMountsFor=/var /var/tmp
+Wants=tmp.mount
diff --git a/test/test-path/path-changed.path b/test/test-path/path-changed.path
new file mode 100644
index 0000000..e58bdd9
--- /dev/null
+++ b/test/test-path/path-changed.path
@@ -0,0 +1,8 @@
+[Unit]
+Description=Test PathChanged
+
+[Path]
+PathChanged=/tmp/test-path_changed
+
+[Install]
+WantedBy=multi-user.target
diff --git a/test/test-path/path-changed.service b/test/test-path/path-changed.service
new file mode 100644
index 0000000..1246ec2
--- /dev/null
+++ b/test/test-path/path-changed.service
@@ -0,0 +1,7 @@
+[Unit]
+Description=Service Test for Path units
+
+[Service]
+ExecStart=sleep infinity
+Type=exec
+RemainAfterExit=true
diff --git a/test/test-path/path-directorynotempty.path b/test/test-path/path-directorynotempty.path
new file mode 100644
index 0000000..17e599f
--- /dev/null
+++ b/test/test-path/path-directorynotempty.path
@@ -0,0 +1,8 @@
+[Unit]
+Description=Test DirectoryNotEmpty
+
+[Path]
+DirectoryNotEmpty=/tmp/test-path_directorynotempty/
+
+[Install]
+WantedBy=multi-user.target
diff --git a/test/test-path/path-directorynotempty.service b/test/test-path/path-directorynotempty.service
new file mode 100644
index 0000000..1246ec2
--- /dev/null
+++ b/test/test-path/path-directorynotempty.service
@@ -0,0 +1,7 @@
+[Unit]
+Description=Service Test for Path units
+
+[Service]
+ExecStart=sleep infinity
+Type=exec
+RemainAfterExit=true
diff --git a/test/test-path/path-exists.path b/test/test-path/path-exists.path
new file mode 100644
index 0000000..c4c9105
--- /dev/null
+++ b/test/test-path/path-exists.path
@@ -0,0 +1,8 @@
+[Unit]
+Description=Test PathExists
+
+[Path]
+PathExists=/tmp/test-path_exists
+
+[Install]
+WantedBy=multi-user.target
diff --git a/test/test-path/path-exists.service b/test/test-path/path-exists.service
new file mode 100644
index 0000000..1246ec2
--- /dev/null
+++ b/test/test-path/path-exists.service
@@ -0,0 +1,7 @@
+[Unit]
+Description=Service Test for Path units
+
+[Service]
+ExecStart=sleep infinity
+Type=exec
+RemainAfterExit=true
diff --git a/test/test-path/path-existsglob.path b/test/test-path/path-existsglob.path
new file mode 100644
index 0000000..a058599
--- /dev/null
+++ b/test/test-path/path-existsglob.path
@@ -0,0 +1,8 @@
+[Unit]
+Description=Test PathExistsGlob
+
+[Path]
+PathExistsGlob=/tmp/test-path_existsglob*
+
+[Install]
+WantedBy=multi-user.target
diff --git a/test/test-path/path-existsglob.service b/test/test-path/path-existsglob.service
new file mode 100644
index 0000000..1246ec2
--- /dev/null
+++ b/test/test-path/path-existsglob.service
@@ -0,0 +1,7 @@
+[Unit]
+Description=Service Test for Path units
+
+[Service]
+ExecStart=sleep infinity
+Type=exec
+RemainAfterExit=true
diff --git a/test/test-path/path-makedirectory.path b/test/test-path/path-makedirectory.path
new file mode 100644
index 0000000..9408479
--- /dev/null
+++ b/test/test-path/path-makedirectory.path
@@ -0,0 +1,10 @@
+[Unit]
+Description=Test MakeDirectory & DirectoryMode
+
+[Path]
+DirectoryNotEmpty=/tmp/test-path_makedirectory/
+MakeDirectory=yes
+DirectoryMode=0744
+
+[Install]
+WantedBy=multi-user.target
diff --git a/test/test-path/path-makedirectory.service b/test/test-path/path-makedirectory.service
new file mode 100644
index 0000000..1246ec2
--- /dev/null
+++ b/test/test-path/path-makedirectory.service
@@ -0,0 +1,7 @@
+[Unit]
+Description=Service Test for Path units
+
+[Service]
+ExecStart=sleep infinity
+Type=exec
+RemainAfterExit=true
diff --git a/test/test-path/path-modified.path b/test/test-path/path-modified.path
new file mode 100644
index 0000000..1836322
--- /dev/null
+++ b/test/test-path/path-modified.path
@@ -0,0 +1,8 @@
+[Unit]
+Description=Test PathModified
+
+[Path]
+PathModified=/tmp/test-path_modified
+
+[Install]
+WantedBy=multi-user.target
diff --git a/test/test-path/path-modified.service b/test/test-path/path-modified.service
new file mode 100644
index 0000000..1246ec2
--- /dev/null
+++ b/test/test-path/path-modified.service
@@ -0,0 +1,7 @@
+[Unit]
+Description=Service Test for Path units
+
+[Service]
+ExecStart=sleep infinity
+Type=exec
+RemainAfterExit=true
diff --git a/test/test-path/path-mycustomunit.service b/test/test-path/path-mycustomunit.service
new file mode 100644
index 0000000..6a9bac0
--- /dev/null
+++ b/test/test-path/path-mycustomunit.service
@@ -0,0 +1,7 @@
+[Unit]
+Description=Service Test Path Unit
+
+[Service]
+ExecStart=sleep infinity
+Type=exec
+RemainAfterExit=true
diff --git a/test/test-path/path-unit.path b/test/test-path/path-unit.path
new file mode 100644
index 0000000..95e572d
--- /dev/null
+++ b/test/test-path/path-unit.path
@@ -0,0 +1,9 @@
+[Unit]
+Description=Test Path Unit=
+
+[Path]
+PathExists=/tmp/test-path_unit
+Unit=path-mycustomunit.service
+
+[Install]
+WantedBy=multi-user.target
diff --git a/test/test-path/paths.target b/test/test-path/paths.target
new file mode 100644
index 0000000..1bec148
--- /dev/null
+++ b/test/test-path/paths.target
@@ -0,0 +1,12 @@
+# SPDX-License-Identifier: LGPL-2.1-or-later
+#
+# This file is part of systemd.
+#
+# systemd is free software; you can redistribute it and/or modify it
+# under the terms of the GNU Lesser General Public License as published by
+# the Free Software Foundation; either version 2.1 of the License, or
+# (at your option) any later version.
+
+[Unit]
+Description=Paths
+Documentation=man:systemd.special(7)
diff --git a/test/test-path/sysinit.target b/test/test-path/sysinit.target
new file mode 100644
index 0000000..eed3d16
--- /dev/null
+++ b/test/test-path/sysinit.target
@@ -0,0 +1,15 @@
+# SPDX-License-Identifier: LGPL-2.1-or-later
+#
+# This file is part of systemd.
+#
+# systemd is free software; you can redistribute it and/or modify it
+# under the terms of the GNU Lesser General Public License as published by
+# the Free Software Foundation; either version 2.1 of the License, or
+# (at your option) any later version.
+
+[Unit]
+Description=System Initialization
+Documentation=man:systemd.special(7)
+Conflicts=emergency.service emergency.target
+Wants=local-fs.target swap.target
+After=local-fs.target swap.target emergency.service emergency.target