Hi folks,
The 2023.03 tag has been pushed to master on git.lavasoftware.org.
.deb packages have been built in GitLab CI and are published at
https://apt.lavasoftware.org/release
Docker images for amd64 and arm64 have been built in GitLab CI and
are available from
https://hub.lavasoftware.org/
and
https://hub.docker.com/u/lavasoftware
Changes in this release
==================
## New device-types
New supported devices:
* hp-14b-na0052xx-zork
* imx8mm-innocomm-wb15-evk
* rk3588-rock-5b
## Deploy
### Apply overlay
Fix applying overlay to a custom directory.
The test directory, which defaults to `/lava-%s` (where `%s` gets replaced
by the `job ID`), can be overridden like this:
```yaml
context:
lava_test_results_dir: /var/lib/lava-%s
```
### nbd
Handle `nbd-server` running as non-root.
On Debian, nbd-server is running as nbd by default, thus preventing the
image owned by root to be mounted as rw. So LAVA should detect the
nbd-server user and chown image to it.
## Boot
### Fastboot
LAVA is now raising `InfrastructureError` on `fastboot-boot-commands`
timeout.
Timeouts caused by the DUT not entering fastboot mode or by faults in the
connection to the DUT while running pre-boot fastboot commands should be
treated as infrastructure errors.
### Nodebooter
Add support for nodebooter service for booting grub based devices. In order
to enable the support, add to the device-type template:
```yaml
{% set has_nodebooter = True %}
```
Nodebooter action will start the nodebooter container, configure it, add
the DUT via API to nodebooter and reset the device to be netbooted by
nodebooter.
### uuu
Serial availability is now skipped when the first command is `bcu: reset
usb` or when uuu block contain only bcu protocol.
## Healthz
Add a new endpoint at `/v1/healthz/`. This endpoint checks that the
connection to the database is working properly and returns either 200 or
500. This can be used by reverse proxy to check the status of the gunicorn
process.
## lava-docker-worker
Fix `lava-docker-worker` systemd service dependencies. The service should
depend on both `containerd` and `docker`.
Prior to this version, system reboot would take a lot of time waiting
lava-docker-worker to stop.
## XMLRPC
### encoding
Fix the encoding of the response from the server. This will fix encoding
issues with some specific characters.
### Device(-type)s permissions
A new set of api endpoints has been added to manage devices and
device-types permissions:
* `scheduler.devices.perms(add|delete|list)`
* `scheduler.device_typess.perms(add|delete|list)`
### Users and groups
A new set of api endpoints has been added to mange users and groups:
* `auth.groups`: (add|delete|list|show) groups
* `auth.groups.perms` (add|delete|list) permissions of a specific group
* `auth.users` (add|delete|list|show|update) users
* `auth.users.groups` (add|delete|list) groups of a specific user
* `auth.users.perms` (add|delete|list) permissions of a specific user
Rgds
--
Rémi Duraffort
Principal Tech Lead
Automation Software Team
Linaro