diff options
-rw-r--r-- | lava-master/Dockerfile | 3 | ||||
-rw-r--r-- | lava-master/device-types-patch/patch-device-type.sh | 14 | ||||
-rwxr-xr-x | lava-master/entrypoint.d/01_setup.sh | 8 | ||||
-rwxr-xr-x | lavalab-gen.py | 4 |
4 files changed, 25 insertions, 4 deletions
diff --git a/lava-master/Dockerfile b/lava-master/Dockerfile index 5b99ac5..5bf989a 100644 --- a/lava-master/Dockerfile +++ b/lava-master/Dockerfile @@ -25,8 +25,7 @@ COPY lava-patch/ /root/lava-patch RUN cd /usr/lib/python3/dist-packages && for patch in $(ls /root/lava-patch/*patch| sort) ; do echo $patch && patch -p1 < $patch || exit $?;done COPY device-types-patch/ /root/device-types-patch/ -RUN cd /etc/lava-server/dispatcher-config/device-types/ && for patch in $(ls /root/device-types-patch/*patch) ; do sed -i 's,lava_scheduler_app/tests/device-types/,,' $patch && echo $patch && patch < $patch || exit $?; done -RUN chown -R lavaserver:lavaserver /etc/lava-server/dispatcher-config/device-types/ +RUN sh root/device-types-patch/patch-device-type.sh COPY zmq_auth/ /etc/lava-dispatcher/certificates.d/ diff --git a/lava-master/device-types-patch/patch-device-type.sh b/lava-master/device-types-patch/patch-device-type.sh new file mode 100644 index 0000000..eb7da43 --- /dev/null +++ b/lava-master/device-types-patch/patch-device-type.sh @@ -0,0 +1,14 @@ +#!/bin/sh + +DEVTYPE_PATH=/etc/lava-server/dispatcher-config/device-types/ +if [ -e /usr/share/lava-server/device-types/ ];then + DEVTYPE_PATH=/usr/share/lava-server/device-types/ +fi + +cd $DEVTYPE_PATH +for patch in $(ls /root/device-types-patch/*patch) +do + echo "DEBUG: patch with $patch" + sed -i 's,lava_scheduler_app/tests/device-types/,,' $patch +done +chown -R lavaserver:lavaserver $DEVTYPE_PATH diff --git a/lava-master/entrypoint.d/01_setup.sh b/lava-master/entrypoint.d/01_setup.sh index 5e437ef..53db47e 100755 --- a/lava-master/entrypoint.d/01_setup.sh +++ b/lava-master/entrypoint.d/01_setup.sh @@ -5,7 +5,13 @@ if [ ! -e /root/pg_lava_password ];then < /dev/urandom tr -dc A-Za-z0-9 | head -c16 > /root/pg_lava_password fi sudo -u postgres psql -c "ALTER USER lavaserver WITH PASSWORD '$(cat /root/pg_lava_password)';" || exit $? -sed -i "s,^LAVA_DB_PASSWORD=.*,LAVA_DB_PASSWORD='$(cat /root/pg_lava_password)'," /etc/lava-server/instance.conf || exit $? +if [ -e /etc/lava-server/instance.conf ];then + # pre 2020.05 + sed -i "s,^LAVA_DB_PASSWORD=.*,LAVA_DB_PASSWORD='$(cat /root/pg_lava_password)'," /etc/lava-server/instance.conf || exit $? +else + # 2020.05+ + sed -i "s,PASSWORD:.*,PASSWORD: '$(cat /root/pg_lava_password)'," /etc/lava-server/settings.d/00-database.yaml || exit $? +fi if [ -e /root/backup/db_lavaserver.gz ];then gunzip /root/backup/db_lavaserver.gz || exit $? diff --git a/lavalab-gen.py b/lavalab-gen.py index 19f76c0..fa1d38f 100755 --- a/lavalab-gen.py +++ b/lavalab-gen.py @@ -567,6 +567,7 @@ def main(): use_docker = worker["use_docker"] if use_docker: dockcomp["services"][worker_name]["volumes"].append("/var/run/docker.sock:/var/run/docker.sock") + dockcomp["services"][worker_name]["volumes"].append("/run/udev/data:/run/udev/data") # TODO permit to change the range of NBD ports use_nbd = True if "use_nbd" in worker: @@ -585,8 +586,9 @@ def main(): use_nfs = False if "use_nfs" in worker: use_nfs = worker["use_nfs"] - if use_nfs: + if use_nfs or use_docker: dockcomp["services"][worker_name]["volumes"].append("/var/lib/lava/dispatcher/tmp:/var/lib/lava/dispatcher/tmp") + if use_nfs: fp = open("%s/scripts/extra_actions" % workerdir, "a") # LAVA check if this package is installed when doing NFS jobs # So we need to install it, even if it is not used |