Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions .openapi-generator/FILES
Original file line number Diff line number Diff line change
Expand Up @@ -232,6 +232,7 @@ docs/V1UserPasswordAccessCredentialSource.md
docs/V1UtilityVolume.md
docs/V1VGPUDisplayOptions.md
docs/V1VGPUOptions.md
docs/V1VMIMConfigurationOptions.md
docs/V1VideoDevice.md
docs/V1VirtTemplateDeployment.md
docs/V1VirtualMachine.md
Expand Down Expand Up @@ -688,6 +689,7 @@ lib/kubevirt/models/v1_virtual_machine_start_failure.rb
lib/kubevirt/models/v1_virtual_machine_state_change_request.rb
lib/kubevirt/models/v1_virtual_machine_status.rb
lib/kubevirt/models/v1_virtual_machine_volume_request.rb
lib/kubevirt/models/v1_vmim_configuration_options.rb
lib/kubevirt/models/v1_volume.rb
lib/kubevirt/models/v1_volume_migration_state.rb
lib/kubevirt/models/v1_volume_snapshot_status.rb
Expand Down Expand Up @@ -1077,6 +1079,7 @@ spec/models/v1_virtual_machine_start_failure_spec.rb
spec/models/v1_virtual_machine_state_change_request_spec.rb
spec/models/v1_virtual_machine_status_spec.rb
spec/models/v1_virtual_machine_volume_request_spec.rb
spec/models/v1_vmim_configuration_options_spec.rb
spec/models/v1_volume_migration_state_spec.rb
spec/models/v1_volume_snapshot_status_spec.rb
spec/models/v1_volume_spec.rb
Expand Down
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -602,6 +602,7 @@ Class | Method | HTTP request | Description
- [Kubevirt::V1UtilityVolume](docs/V1UtilityVolume.md)
- [Kubevirt::V1VGPUDisplayOptions](docs/V1VGPUDisplayOptions.md)
- [Kubevirt::V1VGPUOptions](docs/V1VGPUOptions.md)
- [Kubevirt::V1VMIMConfigurationOptions](docs/V1VMIMConfigurationOptions.md)
- [Kubevirt::V1VideoDevice](docs/V1VideoDevice.md)
- [Kubevirt::V1VirtTemplateDeployment](docs/V1VirtTemplateDeployment.md)
- [Kubevirt::V1VirtualMachine](docs/V1VirtualMachine.md)
Expand Down
4 changes: 2 additions & 2 deletions docs/V1KubeVirtConfiguration.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@
| **eviction_strategy** | **String** | EvictionStrategy defines at the cluster level if the VirtualMachineInstance should be migrated instead of shut-off in case of a node drain. If the VirtualMachineInstance specific field is set it overrides the cluster level one. | [optional] |
| **handler_configuration** | [**V1ReloadableComponentConfiguration**](V1ReloadableComponentConfiguration.md) | | [optional] |
| **hypervisors** | [**Array<V1HypervisorConfiguration>**](V1HypervisorConfiguration.md) | Hypervisors holds information regarding the hypervisor configurations supported on this cluster. | [optional] |
| **image_pull_policy** | **String** | Possible enum values: - `\"Always\"` means that kubelet always attempts to pull the latest image. Container will fail If the pull fails. - `\"IfNotPresent\"` means that kubelet pulls if the image isn't present on disk. Container will fail if the image isn't present and the pull fails. - `\"Never\"` means that kubelet never pulls an image, but only uses a local image. Container will fail if the image isn't present | [optional] |
| **image_pull_policy** | **String** | The ImagePullPolicy to use for user workload pods and their containers (launcher pods, exporter pods, etc.). For KubeVirt infrastructure images, use spec.imagePullPolicy instead. Possible enum values: - `\"Always\"` means that kubelet always attempts to pull the latest image. Container will fail If the pull fails. - `\"IfNotPresent\"` means that kubelet pulls if the image isn't present on disk. Container will fail if the image isn't present and the pull fails. - `\"Never\"` means that kubelet never pulls an image, but only uses a local image. Container will fail if the image isn't present | [optional] |
| **instancetype** | [**V1InstancetypeConfiguration**](V1InstancetypeConfiguration.md) | | [optional] |
| **ksm_configuration** | [**V1KSMConfiguration**](V1KSMConfiguration.md) | | [optional] |
| **live_update_configuration** | [**V1LiveUpdateConfiguration**](V1LiveUpdateConfiguration.md) | | [optional] |
Expand All @@ -34,7 +34,7 @@
| **ovmf_path** | **String** | Deprecated. Use architectureConfiguration instead. | [optional] |
| **permitted_host_devices** | [**V1PermittedHostDevices**](V1PermittedHostDevices.md) | | [optional] |
| **persistent_reservation_configuration** | [**V1PersistentReservationConfiguration**](V1PersistentReservationConfiguration.md) | | [optional] |
| **role_aggregation_strategy** | **String** | RoleAggregationStrategy controls whether RBAC cluster roles should be aggregated to the default Kubernetes roles (admin, edit, view). When set to \"AggregateToDefault\" (default) or not specified, the aggregate-to-* labels are added to the cluster roles. When set to \"Manual\", the labels are not added, and roles will not be aggregated to the default roles. Setting this field to \"Manual\" requires the OptOutRoleAggregation feature gate to be enabled. This is an Alpha feature and subject to change. | [optional] |
| **role_aggregation_strategy** | **String** | RoleAggregationStrategy controls whether RBAC cluster roles should be aggregated to the default Kubernetes roles (admin, edit, view). When set to \"AggregateToDefault\" (default) or not specified, the aggregate-to-* labels are added to the cluster roles. When set to \"Manual\", the labels are not added, and roles will not be aggregated to the default roles. Setting RoleAggregationStrategy to \"Manual\" requires the OptOutRoleAggregation feature gate to be enabled (Beta, enabled by default since v1.9.0). | [optional] |
| **seccomp_configuration** | [**V1SeccompConfiguration**](V1SeccompConfiguration.md) | | [optional] |
| **selinux_launcher_type** | **String** | | [optional] |
| **smbios** | [**V1SMBiosConfiguration**](V1SMBiosConfiguration.md) | | [optional] |
Expand Down
2 changes: 1 addition & 1 deletion docs/V1KubeVirtSpec.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
| **certificate_rotate_strategy** | [**V1KubeVirtCertificateRotateStrategy**](V1KubeVirtCertificateRotateStrategy.md) | | [optional] |
| **configuration** | [**V1KubeVirtConfiguration**](V1KubeVirtConfiguration.md) | | [optional] |
| **customize_components** | [**V1CustomizeComponents**](V1CustomizeComponents.md) | | [optional] |
| **image_pull_policy** | **String** | The ImagePullPolicy to use. Possible enum values: - `\"Always\"` means that kubelet always attempts to pull the latest image. Container will fail If the pull fails. - `\"IfNotPresent\"` means that kubelet pulls if the image isn't present on disk. Container will fail if the image isn't present and the pull fails. - `\"Never\"` means that kubelet never pulls an image, but only uses a local image. Container will fail if the image isn't present | [optional] |
| **image_pull_policy** | **String** | The ImagePullPolicy to use for KubeVirt operator-managed infrastructure images (virt-api, virt-controller, virt-handler, virt-exportproxy, etc.). For pull policy of user workload pods, see spec.configuration.imagePullPolicy. Possible enum values: - `\"Always\"` means that kubelet always attempts to pull the latest image. Container will fail If the pull fails. - `\"IfNotPresent\"` means that kubelet pulls if the image isn't present on disk. Container will fail if the image isn't present and the pull fails. - `\"Never\"` means that kubelet never pulls an image, but only uses a local image. Container will fail if the image isn't present | [optional] |
| **image_pull_secrets** | [**Array<K8sIoApiCoreV1LocalObjectReference>**](K8sIoApiCoreV1LocalObjectReference.md) | The imagePullSecrets to pull the container images from Defaults to none | [optional] |
| **image_registry** | **String** | The image registry to pull the container images from Defaults to the same registry the operator's container image is pulled from. | [optional] |
| **image_tag** | **String** | The image tag to use for the continer images installed. Defaults to the same tag as the operator's container image. | [optional] |
Expand Down
2 changes: 2 additions & 0 deletions docs/V1MigrationConfiguration.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@
| **completion_timeout_per_gi_b** | **Integer** | CompletionTimeoutPerGiB is the maximum number of seconds per GiB a migration is allowed to take. If the timeout is reached, the migration will be either paused, switched to post-copy or cancelled depending on other settings. Defaults to 150 | [optional] |
| **disable_tls** | **Boolean** | When set to true, DisableTLS will disable the additional layer of live migration encryption provided by KubeVirt. This is usually a bad idea. Defaults to false | [optional] |
| **match_se_linux_level_on_migration** | **Boolean** | By default, the SELinux level of target virt-launcher pods is forced to the level of the source virt-launcher. When set to true, MatchSELinuxLevelOnMigration lets the CRI auto-assign a random level to the target. That will ensure the target virt-launcher doesn't share categories with another pod on the node. However, migrations will fail when using RWX volumes that don't automatically deal with SELinux levels. | [optional] |
| **max_downtime_ms** | **Integer** | MaxDowntimeMs specifies the maximum tolerable downtime (in milliseconds) during switchover. Defaults to 900 | [optional] |
| **network** | **String** | Network is the name of the CNI network to use for live migrations. By default, migrations go through the pod network. | [optional] |
| **node_drain_taint_key** | **String** | NodeDrainTaintKey defines the taint key that indicates a node should be drained. Note: this option relies on the deprecated node taint feature. Default: kubevirt.io/drain | [optional] |
| **parallel_migrations_per_cluster** | **Integer** | ParallelMigrationsPerCluster is the total number of concurrent live migrations allowed cluster-wide. Defaults to 5 | [optional] |
Expand All @@ -32,6 +33,7 @@ instance = Kubevirt::V1MigrationConfiguration.new(
completion_timeout_per_gi_b: null,
disable_tls: null,
match_se_linux_level_on_migration: null,
max_downtime_ms: null,
network: null,
node_drain_taint_key: null,
parallel_migrations_per_cluster: null,
Expand Down
48 changes: 48 additions & 0 deletions docs/V1VMIMConfigurationOptions.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
# Kubevirt::V1VMIMConfigurationOptions

## Properties

| Name | Type | Description | Notes |
| ---- | ---- | ----------- | ----- |
| **allow_auto_converge** | **Boolean** | AllowAutoConverge allows the platform to compromise performance/availability of VMIs to guarantee successful VMI live migrations. Defaults to false | [optional] |
| **allow_post_copy** | **Boolean** | AllowPostCopy enables post-copy live migrations. Such migrations allow even the busiest VMIs to successfully live-migrate. However, events like a network failure can cause a VMI crash. If set to true, migrations will still start in pre-copy, but switch to post-copy when CompletionTimeoutPerGiB triggers. Defaults to false | [optional] |
| **allow_workload_disruption** | **Boolean** | AllowWorkloadDisruption indicates that the migration shouldn't be canceled after acceptableCompletionTime is exceeded. Instead, if permitted, migration will be switched to post-copy or the VMI will be paused to allow the migration to complete | [optional] |
| **bandwidth_per_migration** | **Object** | Quantity is a fixed-point representation of a number. It provides convenient marshaling/unmarshaling in JSON and YAML, in addition to String() and AsInt64() accessors. The serialization format is: ``` <quantity> ::= <signedNumber><suffix> (Note that <suffix> may be empty, from the \"\" case in <decimalSI>.) <digit> ::= 0 | 1 | ... | 9 <digits> ::= <digit> | <digit><digits> <number> ::= <digits> | <digits>.<digits> | <digits>. | .<digits> <sign> ::= \"+\" | \"-\" <signedNumber> ::= <number> | <sign><number> <suffix> ::= <binarySI> | <decimalExponent> | <decimalSI> <binarySI> ::= Ki | Mi | Gi | Ti | Pi | Ei (International System of units; See: http://physics.nist.gov/cuu/Units/binary.html) <decimalSI> ::= m | \"\" | k | M | G | T | P | E (Note that 1024 = 1Ki but 1000 = 1k; I didn't choose the capitalization.) <decimalExponent> ::= \"e\" <signedNumber> | \"E\" <signedNumber> ``` No matter which of the three exponent forms is used, no quantity may represent a number greater than 2^63-1 in magnitude, nor may it have more than 3 decimal places. Numbers larger or more precise will be capped or rounded up. (E.g.: 0.1m will rounded up to 1m.) This may be extended in the future if we require larger or smaller quantities. When a Quantity is parsed from a string, it will remember the type of suffix it had, and will use the same type again when it is serialized. Before serializing, Quantity will be put in \"canonical form\". This means that Exponent/suffix will be adjusted up or down (with a corresponding increase or decrease in Mantissa) such that: - No precision is lost - No fractional digits will be emitted - The exponent (or suffix) is as large as possible. The sign will be omitted unless the number is negative. Examples: - 1.5 will be serialized as \"1500m\" - 1.5Gi will be serialized as \"1536Mi\" Note that the quantity will NEVER be internally represented by a floating point number. That is the whole point of this exercise. Non-canonical values will still parse as long as they are well formed, but will be re-emitted in their canonical form. (So always use canonical form, or don't diff.) This format is intended to make it difficult to use these numbers without writing some sort of special handling code in the hopes that that will cause implementors to also use a fixed point implementation. | [optional] |
| **completion_timeout_per_gi_b** | **Integer** | CompletionTimeoutPerGiB is the maximum number of seconds per GiB a migration is allowed to take. If the timeout is reached, the migration will be either paused, switched to post-copy or cancelled depending on other settings. Defaults to 150 | [optional] |
| **disable_tls** | **Boolean** | When set to true, DisableTLS will disable the additional layer of live migration encryption provided by KubeVirt. This is usually a bad idea. Defaults to false | [optional] |
| **experimental** | **Object** | ExperimentalMigrationOptions is an alpha API for experimental migration tunables. It is intended for experimental purposes only and will be removed in the future. | [optional] |
| **match_se_linux_level_on_migration** | **Boolean** | By default, the SELinux level of target virt-launcher pods is forced to the level of the source virt-launcher. When set to true, MatchSELinuxLevelOnMigration lets the CRI auto-assign a random level to the target. That will ensure the target virt-launcher doesn't share categories with another pod on the node. However, migrations will fail when using RWX volumes that don't automatically deal with SELinux levels. | [optional] |
| **max_downtime_ms** | **Integer** | MaxDowntimeMs specifies the maximum tolerable downtime (in milliseconds) during switchover. Defaults to 900 | [optional] |
| **network** | **String** | Network is the name of the CNI network to use for live migrations. By default, migrations go through the pod network. | [optional] |
| **node_drain_taint_key** | **String** | NodeDrainTaintKey defines the taint key that indicates a node should be drained. Note: this option relies on the deprecated node taint feature. Default: kubevirt.io/drain | [optional] |
| **parallel_migrations_per_cluster** | **Integer** | ParallelMigrationsPerCluster is the total number of concurrent live migrations allowed cluster-wide. Defaults to 5 | [optional] |
| **parallel_outbound_migrations_per_node** | **Integer** | ParallelOutboundMigrationsPerNode is the maximum number of concurrent outgoing live migrations allowed per node. Defaults to 2 | [optional] |
| **progress_timeout** | **Integer** | ProgressTimeout is the maximum number of seconds a live migration is allowed to make no progress. Hitting this timeout means a migration transferred 0 data for that many seconds. The migration is then considered stuck and therefore cancelled. Defaults to 150 | [optional] |
| **unsafe_migration_override** | **Boolean** | UnsafeMigrationOverride allows live migrations to occur even if the compatibility check indicates the migration will be unsafe to the guest. Defaults to false | [optional] |
| **utility_volumes_timeout** | **Integer** | UtilityVolumesTimeout is the maximum number of seconds a migration can wait in Pending state for utility volumes to be detached. If utility volumes are still present after this timeout, the migration will be marked as Failed. Defaults to 150 | [optional] |

## Example

```ruby
require 'kubevirt'

instance = Kubevirt::V1VMIMConfigurationOptions.new(
allow_auto_converge: null,
allow_post_copy: null,
allow_workload_disruption: null,
bandwidth_per_migration: null,
completion_timeout_per_gi_b: null,
disable_tls: null,
experimental: null,
match_se_linux_level_on_migration: null,
max_downtime_ms: null,
network: null,
node_drain_taint_key: null,
parallel_migrations_per_cluster: null,
parallel_outbound_migrations_per_node: null,
progress_timeout: null,
unsafe_migration_override: null,
utility_volumes_timeout: null
)
```

2 changes: 2 additions & 0 deletions docs/V1VirtualMachineInstanceBackupStatus.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@
| **completed** | **Boolean** | Completed indicates the backup completed | [optional] |
| **end_timestamp** | **Time** | Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers. | [optional] |
| **failed** | **Boolean** | Failed indicates that the backup failed | [optional] |
| **quiesce_status** | **String** | QuiesceStatus indicates whether filesystem freeze succeeded, failed, or was skipped. | [optional] |
| **start_timestamp** | **Time** | Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers. | [optional] |
| **volumes** | [**Array<V1alpha1BackupVolumeInfo>**](V1alpha1BackupVolumeInfo.md) | Volumes lists the volumes included in the backup | [optional] |

Expand All @@ -25,6 +26,7 @@ instance = Kubevirt::V1VirtualMachineInstanceBackupStatus.new(
completed: null,
end_timestamp: null,
failed: null,
quiesce_status: null,
start_timestamp: null,
volumes: null
)
Expand Down
2 changes: 1 addition & 1 deletion docs/V1VirtualMachineInstanceMigrationState.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
| **end_timestamp** | **Time** | Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers. | [optional] |
| **failed** | **Boolean** | Indicates that the migration failed | [optional] |
| **failure_reason** | **String** | Contains the reason why the migration failed | [optional] |
| **migration_configuration** | [**V1MigrationConfiguration**](V1MigrationConfiguration.md) | | [optional] |
| **migration_configuration** | [**V1VMIMConfigurationOptions**](V1VMIMConfigurationOptions.md) | | [optional] |
| **migration_network_type** | **String** | The type of migration network, either 'pod' or 'migration' | [optional] |
| **migration_policy_name** | **String** | Name of the migration policy. If string is empty, no policy is matched | [optional] |
| **migration_uid** | **String** | The VirtualMachineInstanceMigration object associated with this migration | [optional] |
Expand Down
Loading