From 85f3c0d8274ef32865d00bf670277dcc69563f43 Mon Sep 17 00:00:00 2001 From: Corentin LABBE Date: Mon, 1 Jun 2020 13:36:38 +0200 Subject: Support 2020.05 LAVA has changed the place of DB password from instance.conf to a yaml file. --- lava-master/entrypoint.d/01_setup.sh | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) 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 $? -- cgit From e3f6e56904164003d00833b26a3d6486afcd55e1 Mon Sep 17 00:00:00 2001 From: Corentin LABBE Date: Mon, 1 Jun 2020 13:37:45 +0200 Subject: Support docker docker need some more bind mounts. --- lavalab-gen.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/lavalab-gen.py b/lavalab-gen.py index 96d25c1..a0cb89d 100755 --- a/lavalab-gen.py +++ b/lavalab-gen.py @@ -564,6 +564,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: @@ -582,8 +583,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 -- cgit From 9918419127bbace972725ced88984ad2129ae5cb Mon Sep 17 00:00:00 2001 From: Corentin LABBE Date: Mon, 1 Jun 2020 13:47:53 +0200 Subject: Handle the change of device-type storage device-types are now in /usr/share/lava-server/device-types/ and so device-type-patch does not work anymore. This patch support both location --- lava-master/Dockerfile | 3 +-- lava-master/device-types-patch/patch-device-type.sh | 14 ++++++++++++++ 2 files changed, 15 insertions(+), 2 deletions(-) create mode 100644 lava-master/device-types-patch/patch-device-type.sh 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 -- cgit