Age | Commit message (Collapse) | Author | Files | Lines |
|
LAVA 2020.09 dropped ZMQ and use now a token to authenticate worker
against master.
lava-docker already handle this by getting token via lavacli.
But we need to support to set token in boards.yaml, this patch permits
this.
Furthermore, the token was given to worker via --token, but this is bad
since token can be found by anyone running ps.
A better secure way is to use --token-file.
|
|
This patch fixes the warning:
SyntaxWarning: "is" with a literal. Did you mean "=="?
|
|
Add an helper to add caps
|
|
Since 2020.09, workers does not use ZMQ anymore but use a token.
This patch permit our setup to detecte when we use LAVA 2020.09+ and retrieve it from master.
|
|
If envdir already exists, lavalab-gen.py fail
|
|
When I have added screen support, it was a hack for made M3ulcb serial console works.
But for a long time ser2net works on m3ulcb.
So lava-docker discouraged usage of screen and now it is time to remove
it.
|
|
If version is specified, we can generate docker images with tags set to
it.
|
|
Currently, the public master key is references as $LAVA_MASTER.key in
e.g. scripts/setup.sh. If the key is named master.key it is copied to
$LAVA_MASTER.key by scripts/setup.sh. However, no nameing convention for the
public master key provided to lavalab-gen.py is documented, so the worker simply
will not start if the key is stored as e.g. master-public.key. Running into such
error scenarios could simply be prevented by copying the public master key to an
appropriatly named file in lavalab-gen.py. This is done here.
|
|
Postgres fix
|
|
Since the LAVA DB password is set in /etc/lava-server/, we need to keep
it accross restart.
So put /etc/lava-server on a volume.
This will also permit to keep some live configuration like dispatcher
IP.
|
|
By setting pg_lava_password, the final lavaserver password will be set
to this value.
|
|
The keyword list is too long, so split it in multiline, one letter per
line.
|
|
Fixes #29
Signed-off-by: Alice Ferrazzi <alice.ferrazzi@miraclelinux.com>
|
|
Add option to add docker build args
|
|
Make docker bind the TFTP server to the correct interface
|
|
Signed-off-by: Alice Ferrazzi <alice.ferrazzi@miraclelinux.com>
|
|
docker need some more bind mounts.
|
|
With UDP, docker sometimes can't route UDP packets to the correct
address because the source address gets mangled [1]. This happens
indeterministically because by default the kernel uses some heuristics
to decide which interface to use. But in some rare circumstances, those
can fail and a wrong source address is used. This can be worked around
by explicitly binding to a concrete interface instead of 0.0.0.0.
[1]: https://github.com/moby/libnetwork/issues/1729
Signed-off-by: Harald Seiler <hws@denx.de>
|
|
|
|
This patch permit to override the LAVA version in boards.yaml
For example with 'version: 2020.01'
the Dockerfile FROM lavasoftware/lava-server:2019.09
become FROM lavasoftware/lava-server:2020.01
|
|
For some case, we need to add custom volumes (like for
/var/lib/lxc/cache)
|
|
For some options we need to not have the space around them, like ones
needing "-%}" or coments.
Introduce raw_custom_option for such cases.
|
|
Permit to use docker commands in slave
|
|
When docker devices are needed, docker socket must be availlable in the
slave.
This is now possible via the new use_docker
|
|
The recent LAVA packages does not pull xnbd-server.
So we need to install it when use_nbd is set.
|
|
This patch enhance a bit the documentation
- On the reason of the install of nfs-kernel-server
- On how to upgrade
|
|
This patchs permits to have tags per slave.
All tags set on a slave will be added to each of its devices.
|
|
This patch permits to specify a SMTP server which LAVA will use for
report.
|
|
When doing a qemu-only slave, there are no need to export the overlay
server.
This patch adds a use_overlay_server option.
|
|
When doing a qemu-only slave, there are no need of NBD.
This patch adds a use_nbd option.
|
|
When doing a qemu-only slave, there are no need of TFTP.
This patch adds a use_tftp option.
|
|
On my gentoo, using yaml.load now give:
Traceback (most recent call last):
raise RuntimeError("Unsafe load() call disabled by Gentoo. See bug #659348")
RuntimeError: Unsafe load() call disabled by Gentoo. See bug #659348
Note that on recent ubuntu, a warning appears also.
YAMLLoadWarning: calling yaml.load() without Loader=... is deprecated, as the default Loader is unsafe. Please read https://msg.pyyaml.org/load for full details.
This is due to a security risk of using yaml.load()
Since we didnt rely on any behavour provided by load(), let's convert the call to safe_load().
|
|
This patch adds support for the device-type aliases.
|
|
This patch upgrade LAVA to 2019.07 via their official docker images.
Along with the change of the baseimage from our lava-xx-base to official
2019.07, some minor changes are needed:
- Activate the en_US.UTF-8 locale needed for postgresql
- chown to lavaserver all copied device-types
- Fix the start scripts for using the official entrypoints
|
|
When a custom way of getting serial is set, we should not defaulting to
ser2net.
This is the case for hsdk which use a spetial console handler via connection_command.
|
|
The README mentions using localhost in the quickstart guide, but it
doesn't work if only 127.0.0.1 is in that list.
|
|
This patch adds an optional container which host healthchecks images.
|
|
Since bind_dev could be set to false, just testing its presence is
wrong.
This patch made lavalab-gen.py check its value.
|
|
The NFS code produce a working docker-compose.yml but this file is
dumped before this modification.
This patch moves the docker-compose.yml dump after last modifications of
the dockcomp variable.
|
|
Enabling TAP devices is global to a whole worker.
So having the flag on devices is wrong.
This patchs move the flag "tap" at worker level.
|
|
|
|
This patchs adds a new flag "lava-coordinator" for slave which enables
the generation of a lava-coordinator.conf file.
|
|
This patch permit to adds extra devices (like a USB relay) in the slave
|
|
Currently arm64 workers need to modify at hand the from in the
dockerfile for using arm64 images.
This patch automate this;
|
|
This patch adds an helper for doing NFS jobs
|
|
Since 2019.03 , ALLOWED_HOSTS is mandatory in settings.conf.
Without it all requests are denied with code 500.
|
|
Misc
|
|
By default, all process use the DEBUG loglevel, this could be too much
for a production server.
This patch permits to tune the loglevel.
|
|
For full networking capacity, qemu need to access TAP devices.
This patch adds the choice of use it via the tap keyword.
|
|
If two qemu with KVM enabled are on the same node, the device map
"/dev/kvm:/dev/kvm" will be present twice.
This patch adds an helper for preventing this.
This will also clean the code later which adds serial device.
|