Merge pull request #7532 from yuwata/test-execute
test-execute: add test for that DynamicUser= migrates StateDirectory=
This commit is contained in:
+13
-11
@@ -45,7 +45,7 @@ test_data_files = '''
|
||||
sockets.target
|
||||
son.service
|
||||
sysinit.target
|
||||
test-execute/exec-bind-paths.service
|
||||
test-execute/exec-bindpaths.service
|
||||
test-execute/exec-capabilityambientset-merge-nfsnobody.service
|
||||
test-execute/exec-capabilityambientset-merge.service
|
||||
test-execute/exec-capabilityambientset-nfsnobody.service
|
||||
@@ -56,7 +56,9 @@ test_data_files = '''
|
||||
test-execute/exec-capabilityboundingset-simple.service
|
||||
test-execute/exec-dynamicuser-fixeduser-one-supplementarygroup.service
|
||||
test-execute/exec-dynamicuser-fixeduser.service
|
||||
test-execute/exec-dynamicuser-state-dir.service
|
||||
test-execute/exec-dynamicuser-statedir-migrate-step1.service
|
||||
test-execute/exec-dynamicuser-statedir-migrate-step2.service
|
||||
test-execute/exec-dynamicuser-statedir.service
|
||||
test-execute/exec-dynamicuser-supplementarygroups.service
|
||||
test-execute/exec-environment-empty.service
|
||||
test-execute/exec-environment-multiple.service
|
||||
@@ -96,24 +98,24 @@ test_data_files = '''
|
||||
test-execute/exec-protectkernelmodules-no-capabilities.service
|
||||
test-execute/exec-protectkernelmodules-yes-capabilities.service
|
||||
test-execute/exec-protectkernelmodules-yes-mount-propagation.service
|
||||
test-execute/exec-read-only-path-succeed.service
|
||||
test-execute/exec-readonlypaths-mount-propagation.service
|
||||
test-execute/exec-readonlypaths-simple.service
|
||||
test-execute/exec-readonlypaths-with-bindpaths.service
|
||||
test-execute/exec-readonlypaths.service
|
||||
test-execute/exec-readwritepaths-mount-propagation.service
|
||||
test-execute/exec-restrict-namespaces-mnt-blacklist.service
|
||||
test-execute/exec-restrict-namespaces-mnt.service
|
||||
test-execute/exec-restrict-namespaces-no.service
|
||||
test-execute/exec-restrict-namespaces-yes.service
|
||||
test-execute/exec-restrictnamespaces-mnt-blacklist.service
|
||||
test-execute/exec-restrictnamespaces-mnt.service
|
||||
test-execute/exec-restrictnamespaces-no.service
|
||||
test-execute/exec-restrictnamespaces-yes.service
|
||||
test-execute/exec-runtimedirectory-mode.service
|
||||
test-execute/exec-runtimedirectory-owner-nfsnobody.service
|
||||
test-execute/exec-runtimedirectory-owner.service
|
||||
test-execute/exec-runtimedirectory.service
|
||||
test-execute/exec-spec-interpolation.service
|
||||
test-execute/exec-specifier-interpolation.service
|
||||
test-execute/exec-specifier.service
|
||||
test-execute/exec-specifier@.service
|
||||
test-execute/exec-stdin-data.service
|
||||
test-execute/exec-stdio-file.service
|
||||
test-execute/exec-standardinput-data.service
|
||||
test-execute/exec-standardinput-file.service
|
||||
test-execute/exec-supplementarygroups-multiple-groups-default-group-user.service
|
||||
test-execute/exec-supplementarygroups-multiple-groups-withgid.service
|
||||
test-execute/exec-supplementarygroups-multiple-groups-withuid.service
|
||||
@@ -132,7 +134,7 @@ test_data_files = '''
|
||||
test-execute/exec-systemcallfilter-with-errno-number.service
|
||||
test-execute/exec-umask-0177.service
|
||||
test-execute/exec-umask-default.service
|
||||
test-execute/exec-unset-environment.service
|
||||
test-execute/exec-unsetenvironment.service
|
||||
test-execute/exec-user-nfsnobody.service
|
||||
test-execute/exec-user.service
|
||||
test-execute/exec-workingdirectory.service
|
||||
|
||||
@@ -1,14 +0,0 @@
|
||||
[Service]
|
||||
Type=oneshot
|
||||
# Create a file in /tmp/test-exec_bind_paths
|
||||
ExecStart=/bin/sh -c 'touch /tmp/test-exec_bind_paths/thisisasimpletest'
|
||||
# Then, the file can be access through /tmp
|
||||
ExecStart=/bin/sh -c 'test -f /tmp/thisisasimpletest'
|
||||
# Also, through /tmp/test-exec_bind_readonly_paths
|
||||
ExecStart=/bin/sh -c 'test -f /tmp/test-exec_bind_readonly_paths/thisisasimpletest'
|
||||
# The file cannot modify through /tmp/test-exec_bind_readonly_paths
|
||||
ExecStart=/bin/sh -x -c '! touch /tmp/test-exec_bind_readonly_paths/thisisasimpletest'
|
||||
# Cleanup
|
||||
ExecStart=/bin/sh -c 'rm /tmp/thisisasimpletest'
|
||||
BindPaths=/tmp:/tmp/test-exec_bind_paths
|
||||
BindReadOnlyPaths=/tmp:/tmp/test-exec_bind_readonly_paths
|
||||
@@ -0,0 +1,17 @@
|
||||
[Unit]
|
||||
Description=Test for BindPaths= and BindReadOnlyPaths=
|
||||
|
||||
[Service]
|
||||
Type=oneshot
|
||||
# Create a file in /tmp/test-exec-bindpaths
|
||||
ExecStart=/bin/sh -c 'touch /tmp/test-exec-bindpaths/thisisasimpletest'
|
||||
# Then, the file can be access through /tmp
|
||||
ExecStart=/bin/sh -c 'test -f /tmp/thisisasimpletest'
|
||||
# Also, through /tmp/test-exec-bindreadonlypaths
|
||||
ExecStart=/bin/sh -c 'test -f /tmp/test-exec-bindreadonlypaths/thisisasimpletest'
|
||||
# The file cannot modify through /tmp/test-exec-bindreadonlypaths
|
||||
ExecStart=/bin/sh -x -c '! touch /tmp/test-exec-bindreadonlypaths/thisisasimpletest'
|
||||
# Cleanup
|
||||
ExecStart=/bin/sh -c 'rm /tmp/thisisasimpletest'
|
||||
BindPaths=/tmp:/tmp/test-exec-bindpaths
|
||||
BindReadOnlyPaths=/tmp:/tmp/test-exec-bindreadonlypaths
|
||||
@@ -0,0 +1,16 @@
|
||||
[Unit]
|
||||
Description=Test DynamicUser= migrate StateDirectory= (preparation)
|
||||
|
||||
[Service]
|
||||
ExecStart=/bin/sh -c 'test -w /var/lib/test-dynamicuser-migrate'
|
||||
ExecStart=/bin/sh -c 'test -w /var/lib/test-dynamicuser-migrate2/hoge'
|
||||
ExecStart=/bin/sh -c 'test ! -L /var/lib/test-dynamicuser-migrate'
|
||||
ExecStart=/bin/sh -c 'test ! -L /var/lib/test-dynamicuser-migrate2/hoge'
|
||||
ExecStart=/bin/sh -c 'test -d /var/lib/test-dynamicuser-migrate'
|
||||
ExecStart=/bin/sh -c 'test -d /var/lib/test-dynamicuser-migrate2/hoge'
|
||||
ExecStart=/bin/sh -c 'touch /var/lib/test-dynamicuser-migrate/yay'
|
||||
ExecStart=/bin/sh -c 'touch /var/lib/test-dynamicuser-migrate2/hoge/yayyay'
|
||||
|
||||
Type=oneshot
|
||||
DynamicUser=no
|
||||
StateDirectory=test-dynamicuser-migrate test-dynamicuser-migrate2/hoge
|
||||
@@ -0,0 +1,24 @@
|
||||
[Unit]
|
||||
Description=Test DynamicUser= migrate StateDirectory= (preparation)
|
||||
|
||||
[Service]
|
||||
ExecStart=/bin/sh -c 'test -w /var/lib/test-dynamicuser-migrate'
|
||||
ExecStart=/bin/sh -c 'test -w /var/lib/test-dynamicuser-migrate2/hoge'
|
||||
ExecStart=/bin/sh -c 'test -L /var/lib/test-dynamicuser-migrate'
|
||||
ExecStart=/bin/sh -c 'test -L /var/lib/test-dynamicuser-migrate2/hoge'
|
||||
ExecStart=/bin/sh -c 'test -d /var/lib/test-dynamicuser-migrate'
|
||||
ExecStart=/bin/sh -c 'test -d /var/lib/test-dynamicuser-migrate2/hoge'
|
||||
ExecStart=/bin/sh -c 'test -f /var/lib/test-dynamicuser-migrate/yay'
|
||||
ExecStart=/bin/sh -c 'test -f /var/lib/test-dynamicuser-migrate2/hoge/yayyay'
|
||||
ExecStart=/bin/sh -c 'test -d /var/lib/private/test-dynamicuser-migrate'
|
||||
ExecStart=/bin/sh -c 'test -d /var/lib/private/test-dynamicuser-migrate2/hoge'
|
||||
ExecStart=/bin/sh -c 'test -f /var/lib/private/test-dynamicuser-migrate/yay'
|
||||
ExecStart=/bin/sh -c 'test -f /var/lib/private/test-dynamicuser-migrate2/hoge/yayyay'
|
||||
ExecStart=/bin/sh -c 'touch /var/lib/test-dynamicuser-migrate/yay'
|
||||
ExecStart=/bin/sh -c 'touch /var/lib/test-dynamicuser-migrate2/hoge/yayyay'
|
||||
ExecStart=/bin/sh -c 'touch /var/lib/private/test-dynamicuser-migrate/yay'
|
||||
ExecStart=/bin/sh -c 'touch /var/lib/private/test-dynamicuser-migrate2/hoge/yayyay'
|
||||
|
||||
Type=oneshot
|
||||
DynamicUser=yes
|
||||
StateDirectory=test-dynamicuser-migrate test-dynamicuser-migrate2/hoge
|
||||
+3
@@ -1,3 +1,6 @@
|
||||
[Unit]
|
||||
Description=Test for ReadOnlyPaths=
|
||||
|
||||
[Service]
|
||||
Type=oneshot
|
||||
# This should work, as we explicitly disable the effect of ReadOnlyPaths=
|
||||
@@ -1,3 +1,6 @@
|
||||
[Unit]
|
||||
Description=Test for specifiers
|
||||
|
||||
[Service]
|
||||
Type=oneshot
|
||||
ExecStart=/usr/bin/test %n = exec-specifier.service
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
[Unit]
|
||||
Description=Test for specifiers (template unit)
|
||||
|
||||
[Service]
|
||||
Type=oneshot
|
||||
ExecStart=/usr/bin/test %n = exec-specifier@foo-bar.service
|
||||
|
||||
Reference in New Issue
Block a user