mirror of
https://github.com/systemd/systemd.git
synced 2025-02-23 13:57:33 +03:00
travis: wait for the container to fully boot up
This avoids nasty race conditions between dnf/apt-get and unfinished population of /tmp (among other things), as `docker exec` allows commands to run before the system is fully booted (i.e. initializing/starting state reported by `systemctl is-system-running`).
This commit is contained in:
parent
c695dcf929
commit
14157349db
@ -39,6 +39,10 @@ for phase in "${PHASES[@]}"; do
|
||||
-w /build --privileged=true --name $CONT_NAME \
|
||||
-dit --net=host debian-with-systemd/latest /bin/systemd
|
||||
$DOCKER_EXEC bash -c "echo deb-src http://deb.debian.org/debian $DEBIAN_RELEASE main >>/etc/apt/sources.list"
|
||||
# Wait for the container to properly boot up, otherwise we were
|
||||
# running following apt-get commands during the initializing/starting
|
||||
# (early/late bootup) phase, which caused nasty race conditions
|
||||
$DOCKER_EXEC bash -c 'systemctl is-system-running --wait || :'
|
||||
$DOCKER_EXEC apt-get -y update
|
||||
$DOCKER_EXEC apt-get -y build-dep systemd
|
||||
$DOCKER_EXEC apt-get -y install "${ADDITIONAL_DEPS[@]}"
|
||||
|
@ -44,8 +44,10 @@ for phase in "${PHASES[@]}"; do
|
||||
$DOCKER_RUN -v $REPO_ROOT:/build:rw \
|
||||
-w /build --privileged=true --name $CONT_NAME \
|
||||
-dit --net=host fedora:$FEDORA_RELEASE /sbin/init
|
||||
# Beautiful workaround for Fedora's version of Docker
|
||||
sleep 1
|
||||
# Wait for the container to properly boot up, otherwise we were
|
||||
# running following dnf commands during the initializing/starting
|
||||
# (early/late bootup) phase, which caused nasty race conditions
|
||||
$DOCKER_EXEC bash -c 'systemctl is-system-running --wait || :'
|
||||
$DOCKER_EXEC dnf makecache
|
||||
# Install necessary build/test requirements
|
||||
$DOCKER_EXEC dnf -y --exclude selinux-policy\* upgrade
|
||||
|
Loading…
x
Reference in New Issue
Block a user