UNPKG

palette-sdk-typescript

Version:

TypeScript SDK for Spectro Cloud Palette API

61 lines 4 kB
/** * Copyright (c) Spectro Cloud * SPDX-License-Identifier: Apache-2.0 */ /** * Generated by orval v7.17.0 🍺 * Do not edit manually. * Palette APIs - 4.8 * OpenAPI spec version: v1 */ import type { VmAccessCredential } from './vmAccessCredential'; import type { VmAffinity } from './vmAffinity'; import type { VmPodDnsConfig } from './vmPodDnsConfig'; import type { VmDomainSpec } from './vmDomainSpec'; import type { VmProbe } from './vmProbe'; import type { VmNetwork } from './vmNetwork'; import type { VmVirtualMachineInstanceSpecNodeSelector } from './vmVirtualMachineInstanceSpecNodeSelector'; import type { VmToleration } from './vmToleration'; import type { VmTopologySpreadConstraint } from './vmTopologySpreadConstraint'; import type { VmVolume } from './vmVolume'; /** * VirtualMachineInstanceSpec is a description of a VirtualMachineInstance. */ export type VmVirtualMachineInstanceSpec = { /** Specifies a set of public keys to inject into the vm guest */ accessCredentials?: VmAccessCredential[]; affinity?: VmAffinity; /** Specifies the architecture of the vm guest you are attempting to run. Defaults to the compiled architecture of the KubeVirt components */ architecture?: string; dnsConfig?: VmPodDnsConfig; /** Set DNS policy for the pod. Defaults to "ClusterFirst". Valid values are 'ClusterFirstWithHostNet', 'ClusterFirst', 'Default' or 'None'. DNS parameters given in DNSConfig will be merged with the policy selected with DNSPolicy. To have DNS options set along with hostNetwork, you have to specify DNS policy explicitly to 'ClusterFirstWithHostNet'. */ dnsPolicy?: string; domain: VmDomainSpec; /** EvictionStrategy can be set to "LiveMigrate" if the VirtualMachineInstance should be migrated instead of shut-off in case of a node drain. */ evictionStrategy?: string; /** Specifies the hostname of the vmi If not specified, the hostname will be set to the name of the vmi, if dhcp or cloud-init is configured properly. */ hostname?: string; livenessProbe?: VmProbe; /** List of networks that can be attached to a vm's virtual interface. */ networks?: VmNetwork[]; /** NodeSelector is a selector which must be true for the vmi to fit on a node. Selector which must match a node's labels for the vmi to be scheduled on that node. More info: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/ */ nodeSelector?: VmVirtualMachineInstanceSpecNodeSelector; /** If specified, indicates the pod's priority. If not specified, the pod priority will be default or zero if there is no default. */ priorityClassName?: string; readinessProbe?: VmProbe; /** If specified, the VMI will be dispatched by specified scheduler. If not specified, the VMI will be dispatched by default scheduler. */ schedulerName?: string; /** StartStrategy can be set to "Paused" if Virtual Machine should be started in paused state. */ startStrategy?: string; /** If specified, the fully qualified vmi hostname will be "<hostname>.<subdomain>.<pod namespace>.svc.<cluster domain>". If not specified, the vmi will not have a domainname at all. The DNS entry will resolve to the vmi, no matter if the vmi itself can pick up a hostname. */ subdomain?: string; /** Grace period observed after signalling a VirtualMachineInstance to stop after which the VirtualMachineInstance is force terminated. */ terminationGracePeriodSeconds?: number; /** If toleration is specified, obey all the toleration rules. */ tolerations?: VmToleration[]; /** TopologySpreadConstraints describes how a group of VMIs will be spread across a given topology domains. K8s scheduler will schedule VMI pods in a way which abides by the constraints. */ topologySpreadConstraints?: VmTopologySpreadConstraint[]; /** List of volumes that can be mounted by disks belonging to the vmi. */ volumes?: VmVolume[]; }; //# sourceMappingURL=vmVirtualMachineInstanceSpec.d.ts.map