versions: Update Cloud Hypervisor to 5343e09e7b8db

Let's bump the Cloud Hypervisor version to 5343e09e7b8db, as that brings
a few fixes we're interested in, such as:

* hypervisor, vmm: Handle TDX hypercalls with INVALID_OPERAND
  - https://github.com/cloud-hypervisor/cloud-hypervisor/pull/3723
    - This is needed for the TDX support on the cloud hypervisor driver,
      which is part of this very same series.

* openapi: Update the PciBdf types
  - https://github.com/cloud-hypervisor/cloud-hypervisor/pull/3748
    - This is needed due to a change in a DeviceNode field, which would
      cause a marshalling / demarshalling error when running with a
      version of cloud-hypervisor that includes the TDX fixes mentioned
      above.

* scripts: dev_cli: Don't quote $features_build
* scripts: dev_cli: Add --features option
  - https://github.com/cloud-hypervisor/cloud-hypervisor/pull/3773
    - This is needed due to changes in the scripts used to build Cloud
      Hypervisor, which are used as part of Kata Containers CIs and
      github actions.

      Due to this change, we're also adapting the build scripts as part
      of this very same commit.

Signed-off-by: Fabiano Fidêncio <fabiano.fidencio@intel.com>
This commit is contained in:
Fabiano Fidêncio 2022-02-24 09:39:51 +01:00
parent bbfe7d6591
commit 4c164afbac
12 changed files with 88 additions and 78 deletions

View File

@ -181,6 +181,8 @@ paths:
schema:
$ref: '#/components/schemas/PciDeviceInfo'
description: The new device was successfully added to the VM instance.
"204":
description: The new device was successfully (cold) added to the VM instance.
"404":
description: The new device could not be added to the VM instance.
summary: Add a new device to the VM
@ -215,6 +217,8 @@ paths:
schema:
$ref: '#/components/schemas/PciDeviceInfo'
description: The new disk was successfully added to the VM instance.
"204":
description: The new disk was successfully (cold) added to the VM instance.
"500":
description: The new disk could not be added to the VM instance.
summary: Add a new disk to the VM
@ -234,6 +238,8 @@ paths:
schema:
$ref: '#/components/schemas/PciDeviceInfo'
description: The new device was successfully added to the VM instance.
"204":
description: The new device was successfully (cold) added to the VM instance.
"500":
description: The new device could not be added to the VM instance.
summary: Add a new virtio-fs device to the VM
@ -253,6 +259,8 @@ paths:
schema:
$ref: '#/components/schemas/PciDeviceInfo'
description: The new device was successfully added to the VM instance.
"204":
description: The new device was successfully (cold) added to the VM instance.
"500":
description: The new device could not be added to the VM instance.
summary: Add a new pmem device to the VM
@ -272,6 +280,8 @@ paths:
schema:
$ref: '#/components/schemas/PciDeviceInfo'
description: The new device was successfully added to the VM instance.
"204":
description: The new device was successfully (cold) added to the VM instance.
"500":
description: The new device could not be added to the VM instance.
summary: Add a new network device to the VM
@ -291,6 +301,8 @@ paths:
schema:
$ref: '#/components/schemas/PciDeviceInfo'
description: The new device was successfully added to the VM instance.
"204":
description: The new device was successfully (cold) added to the VM instance.
"500":
description: The new device could not be added to the VM instance.
summary: Add a new vsock device to the VM
@ -632,7 +644,7 @@ components:
children:
- children
- children
pci_bdf: 3
pci_bdf: pci_bdf
resources:
- '{}'
- '{}'
@ -663,7 +675,7 @@ components:
children:
- children
- children
pci_bdf: 3
pci_bdf: pci_bdf
resources:
- '{}'
- '{}'
@ -680,8 +692,7 @@ components:
type: string
type: array
pci_bdf:
format: int32
type: integer
type: string
type: object
VmCounters:
additionalProperties:
@ -1757,6 +1768,8 @@ components:
properties:
receiver_url:
type: string
required:
- receiver_url
type: object
SendMigrationData:
example:
@ -1767,4 +1780,6 @@ components:
type: string
local:
type: boolean
required:
- destination_url
type: object

View File

@ -1071,7 +1071,7 @@ import (
)
func main() {
receiveMigrationData := *openapiclient.NewReceiveMigrationData() // ReceiveMigrationData | The URL for the reception of migration state
receiveMigrationData := *openapiclient.NewReceiveMigrationData("ReceiverUrl_example") // ReceiveMigrationData | The URL for the reception of migration state
configuration := openapiclient.NewConfiguration()
api_client := openapiclient.NewAPIClient(configuration)
@ -1381,7 +1381,7 @@ import (
)
func main() {
sendMigrationData := *openapiclient.NewSendMigrationData() // SendMigrationData | The URL for sending the migration state
sendMigrationData := *openapiclient.NewSendMigrationData("DestinationUrl_example") // SendMigrationData | The URL for sending the migration state
configuration := openapiclient.NewConfiguration()
api_client := openapiclient.NewAPIClient(configuration)

View File

@ -7,7 +7,7 @@ Name | Type | Description | Notes
**Id** | Pointer to **string** | | [optional]
**Resources** | Pointer to **[]map[string]interface{}** | | [optional]
**Children** | Pointer to **[]string** | | [optional]
**PciBdf** | Pointer to **int32** | | [optional]
**PciBdf** | Pointer to **string** | | [optional]
## Methods
@ -105,20 +105,20 @@ HasChildren returns a boolean if a field has been set.
### GetPciBdf
`func (o *DeviceNode) GetPciBdf() int32`
`func (o *DeviceNode) GetPciBdf() string`
GetPciBdf returns the PciBdf field if non-nil, zero value otherwise.
### GetPciBdfOk
`func (o *DeviceNode) GetPciBdfOk() (*int32, bool)`
`func (o *DeviceNode) GetPciBdfOk() (*string, bool)`
GetPciBdfOk returns a tuple with the PciBdf field if it's non-nil, zero value otherwise
and a boolean to check if the value has been set.
### SetPciBdf
`func (o *DeviceNode) SetPciBdf(v int32)`
`func (o *DeviceNode) SetPciBdf(v string)`
SetPciBdf sets PciBdf field to given value.

View File

@ -4,13 +4,13 @@
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**ReceiverUrl** | Pointer to **string** | | [optional]
**ReceiverUrl** | **string** | |
## Methods
### NewReceiveMigrationData
`func NewReceiveMigrationData() *ReceiveMigrationData`
`func NewReceiveMigrationData(receiverUrl string, ) *ReceiveMigrationData`
NewReceiveMigrationData instantiates a new ReceiveMigrationData object
This constructor will assign default values to properties that have it defined,
@ -44,11 +44,6 @@ and a boolean to check if the value has been set.
SetReceiverUrl sets ReceiverUrl field to given value.
### HasReceiverUrl
`func (o *ReceiveMigrationData) HasReceiverUrl() bool`
HasReceiverUrl returns a boolean if a field has been set.
[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)

View File

@ -4,14 +4,14 @@
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**DestinationUrl** | Pointer to **string** | | [optional]
**DestinationUrl** | **string** | |
**Local** | Pointer to **bool** | | [optional]
## Methods
### NewSendMigrationData
`func NewSendMigrationData() *SendMigrationData`
`func NewSendMigrationData(destinationUrl string, ) *SendMigrationData`
NewSendMigrationData instantiates a new SendMigrationData object
This constructor will assign default values to properties that have it defined,
@ -45,11 +45,6 @@ and a boolean to check if the value has been set.
SetDestinationUrl sets DestinationUrl field to given value.
### HasDestinationUrl
`func (o *SendMigrationData) HasDestinationUrl() bool`
HasDestinationUrl returns a boolean if a field has been set.
### GetLocal

View File

@ -19,7 +19,7 @@ type DeviceNode struct {
Id *string `json:"id,omitempty"`
Resources *[]map[string]interface{} `json:"resources,omitempty"`
Children *[]string `json:"children,omitempty"`
PciBdf *int32 `json:"pci_bdf,omitempty"`
PciBdf *string `json:"pci_bdf,omitempty"`
}
// NewDeviceNode instantiates a new DeviceNode object
@ -136,9 +136,9 @@ func (o *DeviceNode) SetChildren(v []string) {
}
// GetPciBdf returns the PciBdf field value if set, zero value otherwise.
func (o *DeviceNode) GetPciBdf() int32 {
func (o *DeviceNode) GetPciBdf() string {
if o == nil || o.PciBdf == nil {
var ret int32
var ret string
return ret
}
return *o.PciBdf
@ -146,7 +146,7 @@ func (o *DeviceNode) GetPciBdf() int32 {
// GetPciBdfOk returns a tuple with the PciBdf field value if set, nil otherwise
// and a boolean to check if the value has been set.
func (o *DeviceNode) GetPciBdfOk() (*int32, bool) {
func (o *DeviceNode) GetPciBdfOk() (*string, bool) {
if o == nil || o.PciBdf == nil {
return nil, false
}
@ -162,8 +162,8 @@ func (o *DeviceNode) HasPciBdf() bool {
return false
}
// SetPciBdf gets a reference to the given int32 and assigns it to the PciBdf field.
func (o *DeviceNode) SetPciBdf(v int32) {
// SetPciBdf gets a reference to the given string and assigns it to the PciBdf field.
func (o *DeviceNode) SetPciBdf(v string) {
o.PciBdf = &v
}

View File

@ -16,15 +16,16 @@ import (
// ReceiveMigrationData struct for ReceiveMigrationData
type ReceiveMigrationData struct {
ReceiverUrl *string `json:"receiver_url,omitempty"`
ReceiverUrl string `json:"receiver_url"`
}
// NewReceiveMigrationData instantiates a new ReceiveMigrationData object
// This constructor will assign default values to properties that have it defined,
// and makes sure properties required by API are set, but the set of arguments
// will change when the set of required properties is changed
func NewReceiveMigrationData() *ReceiveMigrationData {
func NewReceiveMigrationData(receiverUrl string) *ReceiveMigrationData {
this := ReceiveMigrationData{}
this.ReceiverUrl = receiverUrl
return &this
}
@ -36,41 +37,33 @@ func NewReceiveMigrationDataWithDefaults() *ReceiveMigrationData {
return &this
}
// GetReceiverUrl returns the ReceiverUrl field value if set, zero value otherwise.
// GetReceiverUrl returns the ReceiverUrl field value
func (o *ReceiveMigrationData) GetReceiverUrl() string {
if o == nil || o.ReceiverUrl == nil {
if o == nil {
var ret string
return ret
}
return *o.ReceiverUrl
return o.ReceiverUrl
}
// GetReceiverUrlOk returns a tuple with the ReceiverUrl field value if set, nil otherwise
// GetReceiverUrlOk returns a tuple with the ReceiverUrl field value
// and a boolean to check if the value has been set.
func (o *ReceiveMigrationData) GetReceiverUrlOk() (*string, bool) {
if o == nil || o.ReceiverUrl == nil {
if o == nil {
return nil, false
}
return o.ReceiverUrl, true
return &o.ReceiverUrl, true
}
// HasReceiverUrl returns a boolean if a field has been set.
func (o *ReceiveMigrationData) HasReceiverUrl() bool {
if o != nil && o.ReceiverUrl != nil {
return true
}
return false
}
// SetReceiverUrl gets a reference to the given string and assigns it to the ReceiverUrl field.
// SetReceiverUrl sets field value
func (o *ReceiveMigrationData) SetReceiverUrl(v string) {
o.ReceiverUrl = &v
o.ReceiverUrl = v
}
func (o ReceiveMigrationData) MarshalJSON() ([]byte, error) {
toSerialize := map[string]interface{}{}
if o.ReceiverUrl != nil {
if true {
toSerialize["receiver_url"] = o.ReceiverUrl
}
return json.Marshal(toSerialize)

View File

@ -16,16 +16,17 @@ import (
// SendMigrationData struct for SendMigrationData
type SendMigrationData struct {
DestinationUrl *string `json:"destination_url,omitempty"`
Local *bool `json:"local,omitempty"`
DestinationUrl string `json:"destination_url"`
Local *bool `json:"local,omitempty"`
}
// NewSendMigrationData instantiates a new SendMigrationData object
// This constructor will assign default values to properties that have it defined,
// and makes sure properties required by API are set, but the set of arguments
// will change when the set of required properties is changed
func NewSendMigrationData() *SendMigrationData {
func NewSendMigrationData(destinationUrl string) *SendMigrationData {
this := SendMigrationData{}
this.DestinationUrl = destinationUrl
return &this
}
@ -37,36 +38,28 @@ func NewSendMigrationDataWithDefaults() *SendMigrationData {
return &this
}
// GetDestinationUrl returns the DestinationUrl field value if set, zero value otherwise.
// GetDestinationUrl returns the DestinationUrl field value
func (o *SendMigrationData) GetDestinationUrl() string {
if o == nil || o.DestinationUrl == nil {
if o == nil {
var ret string
return ret
}
return *o.DestinationUrl
return o.DestinationUrl
}
// GetDestinationUrlOk returns a tuple with the DestinationUrl field value if set, nil otherwise
// GetDestinationUrlOk returns a tuple with the DestinationUrl field value
// and a boolean to check if the value has been set.
func (o *SendMigrationData) GetDestinationUrlOk() (*string, bool) {
if o == nil || o.DestinationUrl == nil {
if o == nil {
return nil, false
}
return o.DestinationUrl, true
return &o.DestinationUrl, true
}
// HasDestinationUrl returns a boolean if a field has been set.
func (o *SendMigrationData) HasDestinationUrl() bool {
if o != nil && o.DestinationUrl != nil {
return true
}
return false
}
// SetDestinationUrl gets a reference to the given string and assigns it to the DestinationUrl field.
// SetDestinationUrl sets field value
func (o *SendMigrationData) SetDestinationUrl(v string) {
o.DestinationUrl = &v
o.DestinationUrl = v
}
// GetLocal returns the Local field value if set, zero value otherwise.
@ -103,7 +96,7 @@ func (o *SendMigrationData) SetLocal(v bool) {
func (o SendMigrationData) MarshalJSON() ([]byte, error) {
toSerialize := map[string]interface{}{}
if o.DestinationUrl != nil {
if true {
toSerialize["destination_url"] = o.DestinationUrl
}
if o.Local != nil {

View File

@ -195,6 +195,8 @@ paths:
application/json:
schema:
$ref: '#/components/schemas/PciDeviceInfo'
204:
description: The new device was successfully (cold) added to the VM instance.
404:
description: The new device could not be added to the VM instance.
@ -231,6 +233,8 @@ paths:
application/json:
schema:
$ref: '#/components/schemas/PciDeviceInfo'
204:
description: The new disk was successfully (cold) added to the VM instance.
500:
description: The new disk could not be added to the VM instance.
@ -251,6 +255,8 @@ paths:
application/json:
schema:
$ref: '#/components/schemas/PciDeviceInfo'
204:
description: The new device was successfully (cold) added to the VM instance.
500:
description: The new device could not be added to the VM instance.
@ -271,6 +277,8 @@ paths:
application/json:
schema:
$ref: '#/components/schemas/PciDeviceInfo'
204:
description: The new device was successfully (cold) added to the VM instance.
500:
description: The new device could not be added to the VM instance.
@ -291,6 +299,8 @@ paths:
application/json:
schema:
$ref: '#/components/schemas/PciDeviceInfo'
204:
description: The new device was successfully (cold) added to the VM instance.
500:
description: The new device could not be added to the VM instance.
@ -311,6 +321,8 @@ paths:
application/json:
schema:
$ref: '#/components/schemas/PciDeviceInfo'
204:
description: The new device was successfully (cold) added to the VM instance.
500:
description: The new device could not be added to the VM instance.
@ -428,8 +440,7 @@ components:
items:
type: string
pci_bdf:
type: integer
format: int32
type: string
VmCounters:
type: object
@ -1055,12 +1066,16 @@ components:
type: boolean
ReceiveMigrationData:
required:
- receiver_url
type: object
properties:
receiver_url:
type: string
SendMigrationData:
required:
- destination_url
type: object
properties:
destination_url:

View File

@ -28,6 +28,8 @@ readonly shimv2_builder="${static_build_dir}/shim-v2/build.sh"
readonly rootfs_builder="${repo_root_dir}/tools/packaging/guest-image/build_image.sh"
ARCH=$(uname -m)
workdir="${WORKDIR:-$PWD}"
destdir="${workdir}/kata-static"
@ -125,7 +127,9 @@ install_firecracker() {
# Install static cloud-hypervisor asset
install_clh() {
export extra_build_args="--features tdx"
if [[ "${ARCH}" == "x86_64" ]]; then
export features="tdx"
fi
info "build static cloud-hypervisor"
"${clh_builder}"

View File

@ -52,9 +52,9 @@ build_clh_from_source() {
pushd "${repo_dir}"
git fetch || true
git checkout "${cloud_hypervisor_version}"
if [ -n "${extra_build_args}" ]; then
info "Build cloud-hypervisor with extra args: ${extra_build_args}"
./scripts/dev_cli.sh build --release --libc musl -- ${extra_build_args}
if [ -n "${features}" ]; then
info "Build cloud-hypervisor enabling the following features: ${features}"
./scripts/dev_cli.sh build --release --libc musl --features "${features}"
else
./scripts/dev_cli.sh build --release --libc musl
fi

View File

@ -75,7 +75,7 @@ assets:
url: "https://github.com/cloud-hypervisor/cloud-hypervisor"
uscan-url: >-
https://github.com/cloud-hypervisor/cloud-hypervisor/tags.*/v?(\d\S+)\.tar\.gz
version: "55479a64d237d4c757dba19a696abefd27ec74fd"
version: "5343e09e7b8dbd5dd8ac0d90a3ad52037490dd86"
firecracker:
description: "Firecracker micro-VMM"