permit to use a postprocessed nbdroot
When using a postprocessed nbdroot like: actions: - deploy: to: downloads postprocess: docker: image: debian:buster steps: - mkdir rootfs - cd rootfs && tar xpf ../rootfs* - mke2fs -d . -m 0 -t ext2 ../rootfs.ext2 1600M images: stage3: url: http://xxx/root.tar.xz compression: xz - deploy: protocols: lava-xnbd: - action: nbd-deploy request: set_port to: nbd nbdroot: url: downloads://rootfs.ext2 ...LAVA fail with a keyerror on nbdroot. Problem #1: This is due that only downloaded files(via class DownloadHandler) ran the spetial "nbdroot register": if "lava-xnbd" in self.parameters and nbdroot: self.parameters["lava-xnbd"]["nbdroot"] = nbdroot The solution is to register nbdroot also for pre-downloaded files. (via PreDownloadedAction) Problem #2: But PreDownloadedAction only know full path to the nbdroot, so we need to add a check in XnbdAction() since "normal nbdroot" are stored via relative path. Problem #3: The last problem is that when using a postprocessed NBD root, NBDSERVERIP and NBDSERVERPORT are not replaced. So the "use NBD" check in BootloaderCommandOverlay need to be replaced.
Status | Job ID | Name | Coverage | ||||||
---|---|---|---|---|---|---|---|---|---|
Test | |||||||||
passed |
#119041
amd64
|
dispatcher-debian-10 |
00:02:18
|
|
|||||
passed |
#119043
amd64
|
dispatcher-debian-11 |
00:02:34
|
|
|||||
passed |
#119042
amd64
|
server-debian-10 |
00:03:03
|
|
|||||
passed |
#119044
amd64
|
server-debian-11 |
00:05:39
|
|
|||||
Analyze | |||||||||
passed |
#119045
amd64-dind
|
bandit-sast |
00:00:53
|
|
|||||
failed |
#119046
amd64
|
black |
00:00:33
|
|
|||||
passed |
#119047
amd64
|
code_quality |
00:00:21
|
|
|||||
passed |
#119052
amd64
|
codespell |
00:00:19
|
|
|||||
passed |
#119048
amd64
|
coverage |
00:06:29
|
60.91% | |||||
passed |
#119049
amd64
|
dockerfiles |
00:00:15
|
|
|||||
passed |
#119051
amd64
|
pylint |
00:03:04
|
|
|||||
passed |
#119050
amd64
|
schemas |
00:00:30
|
|
|||||
Build | |||||||||
skipped |
#119054
amd64
|
debian/10 |
|
||||||
skipped |
#119053
amd64
|
doc |
|
||||||
skipped |
#119055
amd64-dind
|
docker-amd64-dispatcher |
|
||||||
skipped |
#119056
amd64-dind
|
docker-amd64-server |
|
||||||
Name | Stage | Failure | ||
---|---|---|---|---|
failed
|
black | Analyze | ||
|