mirror of
https://github.com/systemd/systemd.git
synced 2024-11-27 04:03:36 +08:00
test: make sure our tests get exclusive TTY access
This sould make our test suite a bit more robust if it is slow running. A few of our test services use StandardOutput=tty or StandardError=tty in the tests in order to connect test services to the container console. This gets into conflict with the container getty which wants exclusive access to the console. Since the container getty is started with Type=idle it typically gets started after a timeout only if the TTY is already used, which hence introduces a race: if the test finishes earlier all is good, if not, then the test gets kicked off the TTY which then causes bash to abort since it cannot write any error messages anymore. Let's fix this hence: all tests that connect to the tty are now synchronized to getty-pre.target, so they finish before any getty is started.
This commit is contained in:
parent
faf1bb8244
commit
b82e818f5c
@ -18,6 +18,8 @@ test_setup() {
|
||||
cat >$initdir/etc/systemd/system/testsuite.service <<EOF
|
||||
[Unit]
|
||||
Description=Testsuite service
|
||||
Before=getty-pre.target
|
||||
Wants=getty-pre.target
|
||||
|
||||
[Service]
|
||||
ExecStart=/bin/bash -x /testsuite.sh
|
||||
|
@ -1,6 +1,8 @@
|
||||
[Unit]
|
||||
Description=Testsuite service
|
||||
After=systemd-tmpfiles-setup.service
|
||||
Before=getty-pre.target
|
||||
Wants=getty-pre.target
|
||||
|
||||
[Service]
|
||||
WorkingDirectory=/testsuite
|
||||
|
@ -32,6 +32,8 @@ EOF
|
||||
cat >$initdir/etc/systemd/system/testsuite.service <<EOF
|
||||
[Unit]
|
||||
Description=Testsuite service
|
||||
Before=getty-pre.target
|
||||
Wants=getty-pre.target
|
||||
|
||||
[Service]
|
||||
ExecStart=/testsuite.sh
|
||||
|
Loading…
Reference in New Issue
Block a user