Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

runtime: Pass KataVirtualVolume to the guest as devices in go runtime #8494

Merged
merged 4 commits into from
Nov 27, 2023

Commits on Nov 23, 2023

  1. runtime: add functions to create devices in KataVirtualVolume

    The snapshotter will place `KataVirtualVolume` information
    into 'rootfs.options' and commence with the prefix 'io.katacontainers.volume='.
    The purpose of this commit is to transform the encapsulated KataVirtualVolume data into device information.
    
    Fixes: kata-containers#8495
    
    Signed-off-by: ChengyuZhu6 <chengyu.zhu@intel.com>
    Co-authored-by: Feng Wang <feng.wang@databricks.com>
    Co-authored-by: Samuel Ortiz <sameo@linux.intel.com>
    Co-authored-by: Wedson Almeida Filho <walmeida@microsoft.com>
    4 people committed Nov 23, 2023
    Configuration menu
    Copy the full SHA
    e4f33ac View commit details
    Browse the repository at this point in the history
  2. runtime: extend SharedFile to support mutiple storage devices

    To enhance the construction and administration of `Katavirtualvolume` storages,
    this commit expands the 'sharedFile' structure to manage both
    rootfs storages(`containerStorages`) including `Katavirtualvolume` and other data volumes storages(`volumeStorages`).
    
    NOTE: `volumeStorages` is intended for future extensions to support Kubernetes data volumes.
    Currently, `KataVirtualVolume` is exclusively employed for container rootfs, hence only `containerStorages` is actively utilized.
    
    Signed-off-by: ChengyuZhu6 <chengyu.zhu@intel.com>
    ChengyuZhu6 committed Nov 23, 2023
    Configuration menu
    Copy the full SHA
    bd099fb View commit details
    Browse the repository at this point in the history
  3. runtime: redefine and add functions to handle VirtualVolume to storage

    1) Extract function `handleBlockVolume` to create Storage only.
    2) Add functions to handle KataVirtualVolume device and construct
       corresponding storages.
    
    Signed-off-by: ChengyuZhu6 <chengyu.zhu@intel.com>
    ChengyuZhu6 committed Nov 23, 2023
    Configuration menu
    Copy the full SHA
    0b4f7c2 View commit details
    Browse the repository at this point in the history
  4. runtime: support to create VirtualVolume rootfs storages

    1) Creating storage for all `io.katacontainers.volume=` messages in rootFs.Options,
    and then aggregates all storages  into `containerStorages`.
    2) Creating storage for other data volumes and push them into `volumeStorages`.
    
    Signed-off-by: ChengyuZhu6 <chengyu.zhu@intel.com>
    ChengyuZhu6 committed Nov 23, 2023
    Configuration menu
    Copy the full SHA
    5318afe View commit details
    Browse the repository at this point in the history