Skip to content

GitLab

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
  • Sign in / Register
lava
lava
  • Project overview
    • Project overview
    • Details
    • Activity
    • Releases
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
    • Locked Files
  • Issues 111
    • Issues 111
    • List
    • Boards
    • Labels
    • Service Desk
    • Milestones
    • Iterations
  • Merge Requests 32
    • Merge Requests 32
  • Requirements
    • Requirements
    • List
  • CI / CD
    • CI / CD
    • Pipelines
    • Jobs
    • Schedules
    • Test Cases
  • Security & Compliance
    • Security & Compliance
    • Dependency List
    • License Compliance
  • Operations
    • Operations
    • Incidents
    • Environments
  • Packages & Registries
    • Packages & Registries
    • Container Registry
  • Analytics
    • Analytics
    • CI / CD
    • Code Review
    • Insights
    • Issue
    • Repository
    • Value Stream
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Members
    • Members
  • Collapse sidebar
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
  • lava
  • lavalava
  • Merge Requests
  • !1414

Open
Opened Jan 08, 2021 by Corentin Labbe@montjoieContributor
  • Report abuse
Report abuse

permit to use a postprocessed nbdroot

  • Overview 0
  • Commits 1
  • Pipelines 1
  • Changes 3

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.

Assignee
Assign to
Reviewer
Request review from
2021.01
Milestone
2021.01 (Past due)
Assign milestone
Time tracking
Reference: lava/lava!1414
Source branch: nbd-root-from-download