test: add tests for JoinsNamespaceOf=
To illustrate the current behavior of the dependency.
This commit is contained in:
@@ -0,0 +1,7 @@
|
||||
# SPDX-License-Identifier: LGPL-2.1-or-later
|
||||
[Service]
|
||||
Type=notify
|
||||
NotifyAccess=all
|
||||
MountAPIVFS=yes
|
||||
PrivateTmp=yes
|
||||
ExecStart=/bin/bash -c 'touch /tmp/shared-private-file && systemd-notify --ready && sleep infinity'
|
||||
@@ -0,0 +1,10 @@
|
||||
# SPDX-License-Identifier: LGPL-2.1-or-later
|
||||
[Unit]
|
||||
JoinsNamespaceOf=testsuite-23-joins-namespace-of-1.service
|
||||
|
||||
[Service]
|
||||
Type=oneshot
|
||||
MountAPIVFS=yes
|
||||
PrivateTmp=yes
|
||||
ExecStart=test -e /tmp/shared-private-file
|
||||
ExecStart=touch /tmp/hoge
|
||||
@@ -0,0 +1,10 @@
|
||||
# SPDX-License-Identifier: LGPL-2.1-or-later
|
||||
[Unit]
|
||||
JoinsNamespaceOf=testsuite-23-joins-namespace-of-1.service
|
||||
|
||||
[Service]
|
||||
Type=oneshot
|
||||
MountAPIVFS=yes
|
||||
PrivateTmp=yes
|
||||
ExecStart=test -e /tmp/shared-private-file
|
||||
ExecStart=test -e /tmp/hoge
|
||||
@@ -0,0 +1,10 @@
|
||||
# SPDX-License-Identifier: LGPL-2.1-or-later
|
||||
[Unit]
|
||||
JoinsNamespaceOf=testsuite-23-joins-namespace-of-5.service
|
||||
|
||||
[Service]
|
||||
Type=notify
|
||||
NotifyAccess=all
|
||||
MountAPIVFS=yes
|
||||
PrivateTmp=yes
|
||||
ExecStart=/bin/bash -c 'touch /tmp/shared-private-file && systemd-notify --ready && sleep infinity'
|
||||
@@ -0,0 +1,6 @@
|
||||
# SPDX-License-Identifier: LGPL-2.1-or-later
|
||||
[Service]
|
||||
Type=oneshot
|
||||
MountAPIVFS=yes
|
||||
PrivateTmp=yes
|
||||
ExecStart=test ! -e /tmp/shared-private-file
|
||||
@@ -0,0 +1,10 @@
|
||||
# SPDX-License-Identifier: LGPL-2.1-or-later
|
||||
[Unit]
|
||||
JoinsNamespaceOf=testsuite-23-joins-namespace-of-8.service
|
||||
|
||||
[Service]
|
||||
Type=notify
|
||||
NotifyAccess=all
|
||||
MountAPIVFS=yes
|
||||
PrivateTmp=yes
|
||||
ExecStart=/bin/bash -c 'touch /tmp/shared-private-file-x && systemd-notify --ready && sleep infinity'
|
||||
@@ -0,0 +1,11 @@
|
||||
# SPDX-License-Identifier: LGPL-2.1-or-later
|
||||
[Unit]
|
||||
JoinsNamespaceOf=testsuite-23-joins-namespace-of-8.service
|
||||
|
||||
[Service]
|
||||
Type=oneshot
|
||||
MountAPIVFS=yes
|
||||
PrivateTmp=yes
|
||||
ExecStart=test ! -e /tmp/shared-private-file-x
|
||||
ExecStart=test ! -e /tmp/shared-private-file-y
|
||||
ExecStart=touch /tmp/hoge
|
||||
@@ -0,0 +1,9 @@
|
||||
# SPDX-License-Identifier: LGPL-2.1-or-later
|
||||
[Service]
|
||||
Type=notify
|
||||
NotifyAccess=all
|
||||
MountAPIVFS=yes
|
||||
PrivateTmp=yes
|
||||
ExecStartPre=test ! -e /tmp/shared-private-file-x
|
||||
ExecStartPre=test ! -e /tmp/hoge
|
||||
ExecStart=/bin/bash -c 'touch /tmp/shared-private-file-y && systemd-notify --ready && sleep infinity'
|
||||
@@ -0,0 +1,11 @@
|
||||
# SPDX-License-Identifier: LGPL-2.1-or-later
|
||||
[Unit]
|
||||
JoinsNamespaceOf=testsuite-23-joins-namespace-of-8.service
|
||||
|
||||
[Service]
|
||||
Type=oneshot
|
||||
MountAPIVFS=yes
|
||||
PrivateTmp=yes
|
||||
ExecStart=test ! -e /tmp/shared-private-file-x
|
||||
ExecStart=test -e /tmp/shared-private-file-y
|
||||
ExecStart=test ! -e /tmp/hoge
|
||||
Executable
+31
@@ -0,0 +1,31 @@
|
||||
#!/usr/bin/env bash
|
||||
# SPDX-License-Identifier: LGPL-2.1-or-later
|
||||
|
||||
set -eux
|
||||
set -o pipefail
|
||||
|
||||
# Test JoinsNamespaceOf= with PrivateTmp=yes
|
||||
|
||||
systemd-analyze log-level debug
|
||||
systemd-analyze log-target journal
|
||||
|
||||
# simple case
|
||||
systemctl start testsuite-23-joins-namespace-of-1.service
|
||||
systemctl start testsuite-23-joins-namespace-of-2.service
|
||||
systemctl start testsuite-23-joins-namespace-of-3.service
|
||||
systemctl stop testsuite-23-joins-namespace-of-1.service
|
||||
|
||||
# inverse dependency
|
||||
systemctl start testsuite-23-joins-namespace-of-4.service
|
||||
systemctl start testsuite-23-joins-namespace-of-5.service
|
||||
systemctl stop testsuite-23-joins-namespace-of-4.service
|
||||
|
||||
# transitive dependency
|
||||
systemctl start testsuite-23-joins-namespace-of-6.service
|
||||
systemctl start testsuite-23-joins-namespace-of-7.service
|
||||
systemctl start testsuite-23-joins-namespace-of-8.service
|
||||
systemctl start testsuite-23-joins-namespace-of-9.service
|
||||
systemctl stop testsuite-23-joins-namespace-of-6.service
|
||||
systemctl stop testsuite-23-joins-namespace-of-8.service
|
||||
|
||||
systemd-analyze log-level info
|
||||
Reference in New Issue
Block a user