compute.v1beta1.instanceTemplate
"InstanceTemplate is the Schema for the InstanceTemplates API. Manages a VM instance template resource within GCE."
Index
fn new(name)
obj metadata
fn withAnnotations(annotations)
fn withAnnotationsMixin(annotations)
fn withClusterName(clusterName)
fn withCreationTimestamp(creationTimestamp)
fn withDeletionGracePeriodSeconds(deletionGracePeriodSeconds)
fn withDeletionTimestamp(deletionTimestamp)
fn withFinalizers(finalizers)
fn withFinalizersMixin(finalizers)
fn withGenerateName(generateName)
fn withGeneration(generation)
fn withLabels(labels)
fn withLabelsMixin(labels)
fn withName(name)
fn withNamespace(namespace)
fn withOwnerReferences(ownerReferences)
fn withOwnerReferencesMixin(ownerReferences)
fn withResourceVersion(resourceVersion)
fn withSelfLink(selfLink)
fn withUid(uid)
obj spec
fn withDeletionPolicy(deletionPolicy)
fn withManagementPolicies(managementPolicies)
fn withManagementPoliciesMixin(managementPolicies)
obj spec.forProvider
fn withAdvancedMachineFeatures(advancedMachineFeatures)
fn withAdvancedMachineFeaturesMixin(advancedMachineFeatures)
fn withCanIpForward(canIpForward)
fn withConfidentialInstanceConfig(confidentialInstanceConfig)
fn withConfidentialInstanceConfigMixin(confidentialInstanceConfig)
fn withDescription(description)
fn withDisk(disk)
fn withDiskMixin(disk)
fn withGuestAccelerator(guestAccelerator)
fn withGuestAcceleratorMixin(guestAccelerator)
fn withInstanceDescription(instanceDescription)
fn withLabels(labels)
fn withLabelsMixin(labels)
fn withMachineType(machineType)
fn withMetadata(metadata)
fn withMetadataMixin(metadata)
fn withMetadataStartupScript(metadataStartupScript)
fn withMinCpuPlatform(minCpuPlatform)
fn withName(name)
fn withNamePrefix(namePrefix)
fn withNetworkInterface(networkInterface)
fn withNetworkInterfaceMixin(networkInterface)
fn withProject(project)
fn withRegion(region)
fn withReservationAffinity(reservationAffinity)
fn withReservationAffinityMixin(reservationAffinity)
fn withResourcePolicies(resourcePolicies)
fn withResourcePoliciesMixin(resourcePolicies)
fn withScheduling(scheduling)
fn withSchedulingMixin(scheduling)
fn withServiceAccount(serviceAccount)
fn withServiceAccountMixin(serviceAccount)
fn withShieldedInstanceConfig(shieldedInstanceConfig)
fn withShieldedInstanceConfigMixin(shieldedInstanceConfig)
fn withTags(tags)
fn withTagsMixin(tags)
obj spec.forProvider.advancedMachineFeatures
obj spec.forProvider.confidentialInstanceConfig
obj spec.forProvider.disk
fn withAutoDelete(autoDelete)
fn withBoot(boot)
fn withDeviceName(deviceName)
fn withDiskEncryptionKey(diskEncryptionKey)
fn withDiskEncryptionKeyMixin(diskEncryptionKey)
fn withDiskName(diskName)
fn withDiskSizeGb(diskSizeGb)
fn withDiskType(diskType)
fn withInterface(interface)
fn withLabels(labels)
fn withLabelsMixin(labels)
fn withMode(mode)
fn withResourcePolicies(resourcePolicies)
fn withResourcePoliciesMixin(resourcePolicies)
fn withSource(source)
fn withSourceImage(sourceImage)
fn withSourceImageEncryptionKey(sourceImageEncryptionKey)
fn withSourceImageEncryptionKeyMixin(sourceImageEncryptionKey)
fn withSourceSnapshot(sourceSnapshot)
fn withSourceSnapshotEncryptionKey(sourceSnapshotEncryptionKey)
fn withSourceSnapshotEncryptionKeyMixin(sourceSnapshotEncryptionKey)
fn withType(type)
obj spec.forProvider.disk.diskEncryptionKey
obj spec.forProvider.disk.sourceImageEncryptionKey
obj spec.forProvider.disk.sourceRef
obj spec.forProvider.disk.sourceSelector
obj spec.forProvider.disk.sourceSnapshotEncryptionKey
obj spec.forProvider.guestAccelerator
obj spec.forProvider.networkInterface
fn withAccessConfig(accessConfig)
fn withAccessConfigMixin(accessConfig)
fn withAliasIpRange(aliasIpRange)
fn withAliasIpRangeMixin(aliasIpRange)
fn withIpv6AccessConfig(ipv6AccessConfig)
fn withIpv6AccessConfigMixin(ipv6AccessConfig)
fn withNetwork(network)
fn withNetworkIp(networkIp)
fn withNicType(nicType)
fn withQueueCount(queueCount)
fn withStackType(stackType)
fn withSubnetwork(subnetwork)
fn withSubnetworkProject(subnetworkProject)
obj spec.forProvider.networkInterface.accessConfig
obj spec.forProvider.networkInterface.aliasIpRange
obj spec.forProvider.networkInterface.ipv6AccessConfig
obj spec.forProvider.networkInterface.networkRef
obj spec.forProvider.networkInterface.networkSelector
obj spec.forProvider.networkInterface.subnetworkRef
obj spec.forProvider.networkInterface.subnetworkSelector
obj spec.forProvider.reservationAffinity
obj spec.forProvider.scheduling
fn withAutomaticRestart(automaticRestart)
fn withInstanceTerminationAction(instanceTerminationAction)
fn withMinNodeCpus(minNodeCpus)
fn withNodeAffinities(nodeAffinities)
fn withNodeAffinitiesMixin(nodeAffinities)
fn withOnHostMaintenance(onHostMaintenance)
fn withPreemptible(preemptible)
fn withProvisioningModel(provisioningModel)
obj spec.forProvider.scheduling.nodeAffinities
obj spec.forProvider.serviceAccount
obj spec.forProvider.shieldedInstanceConfig
obj spec.initProvider
fn withAdvancedMachineFeatures(advancedMachineFeatures)
fn withAdvancedMachineFeaturesMixin(advancedMachineFeatures)
fn withCanIpForward(canIpForward)
fn withConfidentialInstanceConfig(confidentialInstanceConfig)
fn withConfidentialInstanceConfigMixin(confidentialInstanceConfig)
fn withDescription(description)
fn withDisk(disk)
fn withDiskMixin(disk)
fn withGuestAccelerator(guestAccelerator)
fn withGuestAcceleratorMixin(guestAccelerator)
fn withInstanceDescription(instanceDescription)
fn withLabels(labels)
fn withLabelsMixin(labels)
fn withMachineType(machineType)
fn withMetadata(metadata)
fn withMetadataMixin(metadata)
fn withMetadataStartupScript(metadataStartupScript)
fn withMinCpuPlatform(minCpuPlatform)
fn withName(name)
fn withNamePrefix(namePrefix)
fn withNetworkInterface(networkInterface)
fn withNetworkInterfaceMixin(networkInterface)
fn withProject(project)
fn withRegion(region)
fn withReservationAffinity(reservationAffinity)
fn withReservationAffinityMixin(reservationAffinity)
fn withResourcePolicies(resourcePolicies)
fn withResourcePoliciesMixin(resourcePolicies)
fn withScheduling(scheduling)
fn withSchedulingMixin(scheduling)
fn withServiceAccount(serviceAccount)
fn withServiceAccountMixin(serviceAccount)
fn withShieldedInstanceConfig(shieldedInstanceConfig)
fn withShieldedInstanceConfigMixin(shieldedInstanceConfig)
fn withTags(tags)
fn withTagsMixin(tags)
obj spec.initProvider.advancedMachineFeatures
obj spec.initProvider.confidentialInstanceConfig
obj spec.initProvider.disk
fn withAutoDelete(autoDelete)
fn withBoot(boot)
fn withDeviceName(deviceName)
fn withDiskEncryptionKey(diskEncryptionKey)
fn withDiskEncryptionKeyMixin(diskEncryptionKey)
fn withDiskName(diskName)
fn withDiskSizeGb(diskSizeGb)
fn withDiskType(diskType)
fn withInterface(interface)
fn withLabels(labels)
fn withLabelsMixin(labels)
fn withMode(mode)
fn withResourcePolicies(resourcePolicies)
fn withResourcePoliciesMixin(resourcePolicies)
fn withSourceImage(sourceImage)
fn withSourceImageEncryptionKey(sourceImageEncryptionKey)
fn withSourceImageEncryptionKeyMixin(sourceImageEncryptionKey)
fn withSourceSnapshot(sourceSnapshot)
fn withSourceSnapshotEncryptionKey(sourceSnapshotEncryptionKey)
fn withSourceSnapshotEncryptionKeyMixin(sourceSnapshotEncryptionKey)
fn withType(type)
obj spec.initProvider.disk.diskEncryptionKey
obj spec.initProvider.disk.sourceImageEncryptionKey
obj spec.initProvider.disk.sourceSnapshotEncryptionKey
obj spec.initProvider.guestAccelerator
obj spec.initProvider.networkInterface
fn withAccessConfig(accessConfig)
fn withAccessConfigMixin(accessConfig)
fn withAliasIpRange(aliasIpRange)
fn withAliasIpRangeMixin(aliasIpRange)
fn withIpv6AccessConfig(ipv6AccessConfig)
fn withIpv6AccessConfigMixin(ipv6AccessConfig)
fn withNetworkIp(networkIp)
fn withNicType(nicType)
fn withQueueCount(queueCount)
fn withStackType(stackType)
fn withSubnetworkProject(subnetworkProject)
obj spec.initProvider.networkInterface.accessConfig
obj spec.initProvider.networkInterface.aliasIpRange
obj spec.initProvider.networkInterface.ipv6AccessConfig
obj spec.initProvider.reservationAffinity
obj spec.initProvider.scheduling
fn withAutomaticRestart(automaticRestart)
fn withInstanceTerminationAction(instanceTerminationAction)
fn withMinNodeCpus(minNodeCpus)
fn withNodeAffinities(nodeAffinities)
fn withNodeAffinitiesMixin(nodeAffinities)
fn withOnHostMaintenance(onHostMaintenance)
fn withPreemptible(preemptible)
fn withProvisioningModel(provisioningModel)
obj spec.initProvider.scheduling.nodeAffinities
obj spec.initProvider.serviceAccount
obj spec.initProvider.shieldedInstanceConfig
obj spec.providerConfigRef
obj spec.providerRef
obj spec.publishConnectionDetailsTo
obj spec.writeConnectionSecretToRef
Fields
fn new
new(name)
new returns an instance of InstanceTemplate
obj metadata
"ObjectMeta is metadata that all persisted resources must have, which includes all objects users must create."
fn metadata.withAnnotations
withAnnotations(annotations)
"Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: http://kubernetes.io/docs/user-guide/annotations"
fn metadata.withAnnotationsMixin
withAnnotationsMixin(annotations)
"Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: http://kubernetes.io/docs/user-guide/annotations"
Note: This function appends passed data to existing values
fn metadata.withClusterName
withClusterName(clusterName)
"The name of the cluster which the object belongs to. This is used to distinguish resources with same name and namespace in different clusters. This field is not set anywhere right now and apiserver is going to ignore it if set in create or update request."
fn metadata.withCreationTimestamp
withCreationTimestamp(creationTimestamp)
"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."
fn metadata.withDeletionGracePeriodSeconds
withDeletionGracePeriodSeconds(deletionGracePeriodSeconds)
"Number of seconds allowed for this object to gracefully terminate before it will be removed from the system. Only set when deletionTimestamp is also set. May only be shortened. Read-only."
fn metadata.withDeletionTimestamp
withDeletionTimestamp(deletionTimestamp)
"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."
fn metadata.withFinalizers
withFinalizers(finalizers)
"Must be empty before the object is deleted from the registry. Each entry is an identifier for the responsible component that will remove the entry from the list. If the deletionTimestamp of the object is non-nil, entries in this list can only be removed. Finalizers may be processed and removed in any order. Order is NOT enforced because it introduces significant risk of stuck finalizers. finalizers is a shared field, any actor with permission can reorder it. If the finalizer list is processed in order, then this can lead to a situation in which the component responsible for the first finalizer in the list is waiting for a signal (field value, external system, or other) produced by a component responsible for a finalizer later in the list, resulting in a deadlock. Without enforced ordering finalizers are free to order amongst themselves and are not vulnerable to ordering changes in the list."
fn metadata.withFinalizersMixin
withFinalizersMixin(finalizers)
"Must be empty before the object is deleted from the registry. Each entry is an identifier for the responsible component that will remove the entry from the list. If the deletionTimestamp of the object is non-nil, entries in this list can only be removed. Finalizers may be processed and removed in any order. Order is NOT enforced because it introduces significant risk of stuck finalizers. finalizers is a shared field, any actor with permission can reorder it. If the finalizer list is processed in order, then this can lead to a situation in which the component responsible for the first finalizer in the list is waiting for a signal (field value, external system, or other) produced by a component responsible for a finalizer later in the list, resulting in a deadlock. Without enforced ordering finalizers are free to order amongst themselves and are not vulnerable to ordering changes in the list."
Note: This function appends passed data to existing values
fn metadata.withGenerateName
withGenerateName(generateName)
"GenerateName is an optional prefix, used by the server, to generate a unique name ONLY IF the Name field has not been provided. If this field is used, the name returned to the client will be different than the name passed. This value will also be combined with a unique suffix. The provided value has the same validation rules as the Name field, and may be truncated by the length of the suffix required to make the value unique on the server.\n\nIf this field is specified and the generated name exists, the server will NOT return a 409 - instead, it will either return 201 Created or 500 with Reason ServerTimeout indicating a unique name could not be found in the time allotted, and the client should retry (optionally after the time indicated in the Retry-After header).\n\nApplied only if Name is not specified. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#idempotency"
fn metadata.withGeneration
withGeneration(generation)
"A sequence number representing a specific generation of the desired state. Populated by the system. Read-only."
fn metadata.withLabels
withLabels(labels)
"Map of string keys and values that can be used to organize and categorize (scope and select) objects. May match selectors of replication controllers and services. More info: http://kubernetes.io/docs/user-guide/labels"
fn metadata.withLabelsMixin
withLabelsMixin(labels)
"Map of string keys and values that can be used to organize and categorize (scope and select) objects. May match selectors of replication controllers and services. More info: http://kubernetes.io/docs/user-guide/labels"
Note: This function appends passed data to existing values
fn metadata.withName
withName(name)
"Name must be unique within a namespace. Is required when creating resources, although some resources may allow a client to request the generation of an appropriate name automatically. Name is primarily intended for creation idempotence and configuration definition. Cannot be updated. More info: http://kubernetes.io/docs/user-guide/identifiers#names"
fn metadata.withNamespace
withNamespace(namespace)
"Namespace defines the space within which each name must be unique. An empty namespace is equivalent to the \"default\" namespace, but \"default\" is the canonical representation. Not all objects are required to be scoped to a namespace - the value of this field for those objects will be empty.\n\nMust be a DNS_LABEL. Cannot be updated. More info: http://kubernetes.io/docs/user-guide/namespaces"
fn metadata.withOwnerReferences
withOwnerReferences(ownerReferences)
"List of objects depended by this object. If ALL objects in the list have been deleted, this object will be garbage collected. If this object is managed by a controller, then an entry in this list will point to this controller, with the controller field set to true. There cannot be more than one managing controller."
fn metadata.withOwnerReferencesMixin
withOwnerReferencesMixin(ownerReferences)
"List of objects depended by this object. If ALL objects in the list have been deleted, this object will be garbage collected. If this object is managed by a controller, then an entry in this list will point to this controller, with the controller field set to true. There cannot be more than one managing controller."
Note: This function appends passed data to existing values
fn metadata.withResourceVersion
withResourceVersion(resourceVersion)
"An opaque value that represents the internal version of this object that can be used by clients to determine when objects have changed. May be used for optimistic concurrency, change detection, and the watch operation on a resource or set of resources. Clients must treat these values as opaque and passed unmodified back to the server. They may only be valid for a particular resource or set of resources.\n\nPopulated by the system. Read-only. Value must be treated as opaque by clients and . More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency"
fn metadata.withSelfLink
withSelfLink(selfLink)
"SelfLink is a URL representing this object. Populated by the system. Read-only.\n\nDEPRECATED Kubernetes will stop propagating this field in 1.20 release and the field is planned to be removed in 1.21 release."
fn metadata.withUid
withUid(uid)
"UID is the unique in time and space value for this object. It is typically generated by the server on successful creation of a resource and is not allowed to change on PUT operations.\n\nPopulated by the system. Read-only. More info: http://kubernetes.io/docs/user-guide/identifiers#uids"
obj spec
"InstanceTemplateSpec defines the desired state of InstanceTemplate"
fn spec.withDeletionPolicy
withDeletionPolicy(deletionPolicy)
"DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either \"Delete\" or \"Orphan\" the external resource. This field is planned to be deprecated in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223"
fn spec.withManagementPolicies
withManagementPolicies(managementPolicies)
"THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is enabled, and may be changed or removed without notice. ManagementPolicies specify the array of actions Crossplane is allowed to take on the managed and external resources. This field is planned to replace the DeletionPolicy field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. If both are custom, the DeletionPolicy field will be ignored. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md"
fn spec.withManagementPoliciesMixin
withManagementPoliciesMixin(managementPolicies)
"THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is enabled, and may be changed or removed without notice. ManagementPolicies specify the array of actions Crossplane is allowed to take on the managed and external resources. This field is planned to replace the DeletionPolicy field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. If both are custom, the DeletionPolicy field will be ignored. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md"
Note: This function appends passed data to existing values
obj spec.forProvider
fn spec.forProvider.withAdvancedMachineFeatures
withAdvancedMachineFeatures(advancedMachineFeatures)
"Configure Nested Virtualisation and Simultaneous Hyper Threading on this VM. Structure is documented below"
fn spec.forProvider.withAdvancedMachineFeaturesMixin
withAdvancedMachineFeaturesMixin(advancedMachineFeatures)
"Configure Nested Virtualisation and Simultaneous Hyper Threading on this VM. Structure is documented below"
Note: This function appends passed data to existing values
fn spec.forProvider.withCanIpForward
withCanIpForward(canIpForward)
"Whether to allow sending and receiving of packets with non-matching source or destination IPs. This defaults to false."
fn spec.forProvider.withConfidentialInstanceConfig
withConfidentialInstanceConfig(confidentialInstanceConfig)
"Enable Confidential Mode on this VM. Structure is documented below"
fn spec.forProvider.withConfidentialInstanceConfigMixin
withConfidentialInstanceConfigMixin(confidentialInstanceConfig)
"Enable Confidential Mode on this VM. Structure is documented below"
Note: This function appends passed data to existing values
fn spec.forProvider.withDescription
withDescription(description)
"A brief description of this resource."
fn spec.forProvider.withDisk
withDisk(disk)
"Disks to attach to instances created from this template. This can be specified multiple times for multiple disks. Structure is documented below."
fn spec.forProvider.withDiskMixin
withDiskMixin(disk)
"Disks to attach to instances created from this template. This can be specified multiple times for multiple disks. Structure is documented below."
Note: This function appends passed data to existing values
fn spec.forProvider.withGuestAccelerator
withGuestAccelerator(guestAccelerator)
"List of the type and count of accelerator cards attached to the instance. Structure documented below."
fn spec.forProvider.withGuestAcceleratorMixin
withGuestAcceleratorMixin(guestAccelerator)
"List of the type and count of accelerator cards attached to the instance. Structure documented below."
Note: This function appends passed data to existing values
fn spec.forProvider.withInstanceDescription
withInstanceDescription(instanceDescription)
"A brief description to use for instances created from this template."
fn spec.forProvider.withLabels
withLabels(labels)
"A set of key/value label pairs to assign to instances created from this template."
fn spec.forProvider.withLabelsMixin
withLabelsMixin(labels)
"A set of key/value label pairs to assign to instances created from this template."
Note: This function appends passed data to existing values
fn spec.forProvider.withMachineType
withMachineType(machineType)
"The machine type to create."
fn spec.forProvider.withMetadata
withMetadata(metadata)
"Metadata key/value pairs to make available from within instances created from this template."
fn spec.forProvider.withMetadataMixin
withMetadataMixin(metadata)
"Metadata key/value pairs to make available from within instances created from this template."
Note: This function appends passed data to existing values
fn spec.forProvider.withMetadataStartupScript
withMetadataStartupScript(metadataStartupScript)
"An alternative to using the startup-script metadata key, mostly to match the compute_instance resource. This replaces the startup-script metadata key on the created instance and thus the two mechanisms are not allowed to be used simultaneously."
fn spec.forProvider.withMinCpuPlatform
withMinCpuPlatform(minCpuPlatform)
"Specifies a minimum CPU platform. Applicable values are the friendly names of CPU platforms, such as Intel Haswell or Intel Skylake. See the complete list here."
fn spec.forProvider.withName
withName(name)
"The name of the instance template."
fn spec.forProvider.withNamePrefix
withNamePrefix(namePrefix)
"Creates a unique name beginning with the specified prefix. Conflicts with name."
fn spec.forProvider.withNetworkInterface
withNetworkInterface(networkInterface)
"Networks to attach to instances created from this template. This can be specified multiple times for multiple networks. Structure is documented below."
fn spec.forProvider.withNetworkInterfaceMixin
withNetworkInterfaceMixin(networkInterface)
"Networks to attach to instances created from this template. This can be specified multiple times for multiple networks. Structure is documented below."
Note: This function appends passed data to existing values
fn spec.forProvider.withProject
withProject(project)
"The ID of the project in which the resource belongs. If it is not provided, the provider project is used."
fn spec.forProvider.withRegion
withRegion(region)
"An instance template is a global resource that is not bound to a zone or a region. However, you can still specify some regional resources in an instance template, which restricts the template to the region where that resource resides. For example, a custom subnetwork resource is tied to a specific region. Defaults to the region of the Provider if no value is given."
fn spec.forProvider.withReservationAffinity
withReservationAffinity(reservationAffinity)
"Specifies the reservations that this instance can consume from. Structure is documented below."
fn spec.forProvider.withReservationAffinityMixin
withReservationAffinityMixin(reservationAffinity)
"Specifies the reservations that this instance can consume from. Structure is documented below."
Note: This function appends passed data to existing values
fn spec.forProvider.withResourcePolicies
withResourcePolicies(resourcePolicies)
"- A list of self_links of resource policies to attach to the instance. Modifying this list will cause the instance to recreate. Currently a max of 1 resource policy is supported."
fn spec.forProvider.withResourcePoliciesMixin
withResourcePoliciesMixin(resourcePolicies)
"- A list of self_links of resource policies to attach to the instance. Modifying this list will cause the instance to recreate. Currently a max of 1 resource policy is supported."
Note: This function appends passed data to existing values
fn spec.forProvider.withScheduling
withScheduling(scheduling)
"The scheduling strategy to use. More details about this configuration option are detailed below."
fn spec.forProvider.withSchedulingMixin
withSchedulingMixin(scheduling)
"The scheduling strategy to use. More details about this configuration option are detailed below."
Note: This function appends passed data to existing values
fn spec.forProvider.withServiceAccount
withServiceAccount(serviceAccount)
"Service account to attach to the instance. Structure is documented below."
fn spec.forProvider.withServiceAccountMixin
withServiceAccountMixin(serviceAccount)
"Service account to attach to the instance. Structure is documented below."
Note: This function appends passed data to existing values
fn spec.forProvider.withShieldedInstanceConfig
withShieldedInstanceConfig(shieldedInstanceConfig)
"Enable Shielded VM on this instance. Shielded VM provides verifiable integrity to prevent against malware and rootkits. Defaults to disabled. Structure is documented below. Note: shielded_instance_config can only be used with boot images with shielded vm support. See the complete list here."
fn spec.forProvider.withShieldedInstanceConfigMixin
withShieldedInstanceConfigMixin(shieldedInstanceConfig)
"Enable Shielded VM on this instance. Shielded VM provides verifiable integrity to prevent against malware and rootkits. Defaults to disabled. Structure is documented below. Note: shielded_instance_config can only be used with boot images with shielded vm support. See the complete list here."
Note: This function appends passed data to existing values
fn spec.forProvider.withTags
withTags(tags)
"Tags to attach to the instance."
fn spec.forProvider.withTagsMixin
withTagsMixin(tags)
"Tags to attach to the instance."
Note: This function appends passed data to existing values
obj spec.forProvider.advancedMachineFeatures
"Configure Nested Virtualisation and Simultaneous Hyper Threading on this VM. Structure is documented below"
fn spec.forProvider.advancedMachineFeatures.withEnableNestedVirtualization
withEnableNestedVirtualization(enableNestedVirtualization)
"Defines whether the instance should have nested virtualization enabled. Defaults to false."
fn spec.forProvider.advancedMachineFeatures.withThreadsPerCore
withThreadsPerCore(threadsPerCore)
"The number of threads per physical core. To disable simultaneous multithreading (SMT) set this to 1."
fn spec.forProvider.advancedMachineFeatures.withVisibleCoreCount
withVisibleCoreCount(visibleCoreCount)
"The number of physical cores to expose to an instance. visible cores info (VC)."
obj spec.forProvider.confidentialInstanceConfig
"Enable Confidential Mode on this VM. Structure is documented below"
fn spec.forProvider.confidentialInstanceConfig.withEnableConfidentialCompute
withEnableConfidentialCompute(enableConfidentialCompute)
"Defines whether the instance should have confidential compute enabled. on_host_maintenance has to be set to TERMINATE or this will fail to create the VM."
obj spec.forProvider.disk
"Disks to attach to instances created from this template. This can be specified multiple times for multiple disks. Structure is documented below."
fn spec.forProvider.disk.withAutoDelete
withAutoDelete(autoDelete)
"Whether or not the disk should be auto-deleted. This defaults to true."
fn spec.forProvider.disk.withBoot
withBoot(boot)
"Indicates that this is a boot disk."
fn spec.forProvider.disk.withDeviceName
withDeviceName(deviceName)
"A unique device name that is reflected into the /dev/ tree of a Linux operating system running within the instance. If not specified, the server chooses a default device name to apply to this disk."
fn spec.forProvider.disk.withDiskEncryptionKey
withDiskEncryptionKey(diskEncryptionKey)
"Encrypts or decrypts a disk using a customer-supplied encryption key."
fn spec.forProvider.disk.withDiskEncryptionKeyMixin
withDiskEncryptionKeyMixin(diskEncryptionKey)
"Encrypts or decrypts a disk using a customer-supplied encryption key."
Note: This function appends passed data to existing values
fn spec.forProvider.disk.withDiskName
withDiskName(diskName)
"Name of the disk. When not provided, this defaults to the name of the instance."
fn spec.forProvider.disk.withDiskSizeGb
withDiskSizeGb(diskSizeGb)
"The size of the image in gigabytes. If not specified, it will inherit the size of its base image. For SCRATCH disks, the size must be exactly 375GB."
fn spec.forProvider.disk.withDiskType
withDiskType(diskType)
"The GCE disk type. Such as \"pd-ssd\", \"local-ssd\", \"pd-balanced\" or \"pd-standard\"."
fn spec.forProvider.disk.withInterface
withInterface(interface)
"Specifies the disk interface to use for attaching this disk, which is either SCSI or NVME. The default is SCSI. Persistent disks must always use SCSI and the request will fail if you attempt to attach a persistent disk in any other format than SCSI. Local SSDs can use either NVME or SCSI."
fn spec.forProvider.disk.withLabels
withLabels(labels)
"A set of ket/value label pairs to assign to disk created from this template"
fn spec.forProvider.disk.withLabelsMixin
withLabelsMixin(labels)
"A set of ket/value label pairs to assign to disk created from this template"
Note: This function appends passed data to existing values
fn spec.forProvider.disk.withMode
withMode(mode)
"The mode in which to attach this disk, either READ_WRITE or READ_ONLY. If you are attaching or creating a boot disk, this must read-write mode."
fn spec.forProvider.disk.withResourcePolicies
withResourcePolicies(resourcePolicies)
"- A list (short name or id) of resource policies to attach to this disk for automatic snapshot creations. Currently a max of 1 resource policy is supported."
fn spec.forProvider.disk.withResourcePoliciesMixin
withResourcePoliciesMixin(resourcePolicies)
"- A list (short name or id) of resource policies to attach to this disk for automatic snapshot creations. Currently a max of 1 resource policy is supported."
Note: This function appends passed data to existing values
fn spec.forProvider.disk.withSource
withSource(source)
"The name (not self_link) of the disk (such as those managed by google_compute_disk) to attach. ~> Note: Either source, source_image, or source_snapshot is required in a disk block unless the disk type is local-ssd. Check the API docs for details."
fn spec.forProvider.disk.withSourceImage
withSourceImage(sourceImage)
"The image from which to initialize this disk. This can be one of: the image's self_link, projects/{project}/global/images/{image}, projects/{project}/global/images/family/{family}, global/images/{image}, global/images/family/{family}, family/{family}, {project}/{family}, {project}/{image}, {family}, or {image}. ~> Note: Either source, source_image, or source_snapshot is required in a disk block unless the disk type is local-ssd. Check the API docs for details."
fn spec.forProvider.disk.withSourceImageEncryptionKey
withSourceImageEncryptionKey(sourceImageEncryptionKey)
"The customer-supplied encryption key of the source image. Required if the source image is protected by a customer-supplied encryption key."
fn spec.forProvider.disk.withSourceImageEncryptionKeyMixin
withSourceImageEncryptionKeyMixin(sourceImageEncryptionKey)
"The customer-supplied encryption key of the source image. Required if the source image is protected by a customer-supplied encryption key."
Note: This function appends passed data to existing values
fn spec.forProvider.disk.withSourceSnapshot
withSourceSnapshot(sourceSnapshot)
"The source snapshot to create this disk. ~> Note: Either source, source_image, or source_snapshot is required in a disk block unless the disk type is local-ssd. Check the API docs for details."
fn spec.forProvider.disk.withSourceSnapshotEncryptionKey
withSourceSnapshotEncryptionKey(sourceSnapshotEncryptionKey)
"The customer-supplied encryption key of the source snapshot. Structure documented below."
fn spec.forProvider.disk.withSourceSnapshotEncryptionKeyMixin
withSourceSnapshotEncryptionKeyMixin(sourceSnapshotEncryptionKey)
"The customer-supplied encryption key of the source snapshot. Structure documented below."
Note: This function appends passed data to existing values
fn spec.forProvider.disk.withType
withType(type)
"The type of GCE disk, can be either \"SCRATCH\" or \"PERSISTENT\"."
obj spec.forProvider.disk.diskEncryptionKey
"Encrypts or decrypts a disk using a customer-supplied encryption key."
fn spec.forProvider.disk.diskEncryptionKey.withKmsKeySelfLink
withKmsKeySelfLink(kmsKeySelfLink)
"The self link of the encryption key that is stored in Google Cloud KMS."
obj spec.forProvider.disk.sourceImageEncryptionKey
"The customer-supplied encryption key of the source image. Required if the source image is protected by a customer-supplied encryption key."
fn spec.forProvider.disk.sourceImageEncryptionKey.withKmsKeySelfLink
withKmsKeySelfLink(kmsKeySelfLink)
"The self link of the encryption key that is stored in Google Cloud KMS."
fn spec.forProvider.disk.sourceImageEncryptionKey.withKmsKeyServiceAccount
withKmsKeyServiceAccount(kmsKeyServiceAccount)
"The service account being used for the encryption request for the given KMS key. If absent, the Compute Engine default service account is used."
obj spec.forProvider.disk.sourceRef
"Reference to a Disk in compute to populate source."
fn spec.forProvider.disk.sourceRef.withName
withName(name)
"Name of the referenced object."
obj spec.forProvider.disk.sourceRef.policy
"Policies for referencing."
fn spec.forProvider.disk.sourceRef.policy.withResolution
withResolution(resolution)
"Resolution specifies whether resolution of this reference is required. The default is 'Required', which means the reconcile will fail if the reference cannot be resolved. 'Optional' means this reference will be a no-op if it cannot be resolved."
fn spec.forProvider.disk.sourceRef.policy.withResolve
withResolve(resolve)
"Resolve specifies when this reference should be resolved. The default is 'IfNotPresent', which will attempt to resolve the reference only when the corresponding field is not present. Use 'Always' to resolve the reference on every reconcile."
obj spec.forProvider.disk.sourceSelector
"Selector for a Disk in compute to populate source."
fn spec.forProvider.disk.sourceSelector.withMatchControllerRef
withMatchControllerRef(matchControllerRef)
"MatchControllerRef ensures an object with the same controller reference as the selecting object is selected."
fn spec.forProvider.disk.sourceSelector.withMatchLabels
withMatchLabels(matchLabels)
"MatchLabels ensures an object with matching labels is selected."
fn spec.forProvider.disk.sourceSelector.withMatchLabelsMixin
withMatchLabelsMixin(matchLabels)
"MatchLabels ensures an object with matching labels is selected."
Note: This function appends passed data to existing values
obj spec.forProvider.disk.sourceSelector.policy
"Policies for selection."
fn spec.forProvider.disk.sourceSelector.policy.withResolution
withResolution(resolution)
"Resolution specifies whether resolution of this reference is required. The default is 'Required', which means the reconcile will fail if the reference cannot be resolved. 'Optional' means this reference will be a no-op if it cannot be resolved."
fn spec.forProvider.disk.sourceSelector.policy.withResolve
withResolve(resolve)
"Resolve specifies when this reference should be resolved. The default is 'IfNotPresent', which will attempt to resolve the reference only when the corresponding field is not present. Use 'Always' to resolve the reference on every reconcile."
obj spec.forProvider.disk.sourceSnapshotEncryptionKey
"The customer-supplied encryption key of the source snapshot. Structure documented below."
fn spec.forProvider.disk.sourceSnapshotEncryptionKey.withKmsKeySelfLink
withKmsKeySelfLink(kmsKeySelfLink)
"The self link of the encryption key that is stored in Google Cloud KMS."
fn spec.forProvider.disk.sourceSnapshotEncryptionKey.withKmsKeyServiceAccount
withKmsKeyServiceAccount(kmsKeyServiceAccount)
"The service account being used for the encryption request for the given KMS key. If absent, the Compute Engine default service account is used."
obj spec.forProvider.guestAccelerator
"List of the type and count of accelerator cards attached to the instance. Structure documented below."
fn spec.forProvider.guestAccelerator.withCount
withCount(count)
"The number of the guest accelerator cards exposed to this instance."
fn spec.forProvider.guestAccelerator.withType
withType(type)
"The accelerator type resource to expose to this instance. E.g. nvidia-tesla-k80."
obj spec.forProvider.networkInterface
"Networks to attach to instances created from this template. This can be specified multiple times for multiple networks. Structure is documented below."
fn spec.forProvider.networkInterface.withAccessConfig
withAccessConfig(accessConfig)
"Access configurations, i.e. IPs via which this instance can be accessed via the Internet.g. via tunnel or because it is running on another cloud instance on that network). This block can be repeated multiple times. Structure documented below."
fn spec.forProvider.networkInterface.withAccessConfigMixin
withAccessConfigMixin(accessConfig)
"Access configurations, i.e. IPs via which this instance can be accessed via the Internet.g. via tunnel or because it is running on another cloud instance on that network). This block can be repeated multiple times. Structure documented below."
Note: This function appends passed data to existing values
fn spec.forProvider.networkInterface.withAliasIpRange
withAliasIpRange(aliasIpRange)
"An array of alias IP ranges for this network interface. Can only be specified for network interfaces on subnet-mode networks. Structure documented below."
fn spec.forProvider.networkInterface.withAliasIpRangeMixin
withAliasIpRangeMixin(aliasIpRange)
"An array of alias IP ranges for this network interface. Can only be specified for network interfaces on subnet-mode networks. Structure documented below."
Note: This function appends passed data to existing values
fn spec.forProvider.networkInterface.withIpv6AccessConfig
withIpv6AccessConfig(ipv6AccessConfig)
"An array of IPv6 access configurations for this interface. Currently, only one IPv6 access config, DIRECT_IPV6, is supported. If there is no ipv6AccessConfig specified, then this instance will have no external IPv6 Internet access. Structure documented below."
fn spec.forProvider.networkInterface.withIpv6AccessConfigMixin
withIpv6AccessConfigMixin(ipv6AccessConfig)
"An array of IPv6 access configurations for this interface. Currently, only one IPv6 access config, DIRECT_IPV6, is supported. If there is no ipv6AccessConfig specified, then this instance will have no external IPv6 Internet access. Structure documented below."
Note: This function appends passed data to existing values
fn spec.forProvider.networkInterface.withNetwork
withNetwork(network)
"The name or self_link of the network to attach this interface to. Use network attribute for Legacy or Auto subnetted networks and subnetwork for custom subnetted networks."
fn spec.forProvider.networkInterface.withNetworkIp
withNetworkIp(networkIp)
"The private IP address to assign to the instance. If empty, the address will be automatically assigned."
fn spec.forProvider.networkInterface.withNicType
withNicType(nicType)
"The type of vNIC to be used on this interface. Possible values: GVNIC, VIRTIO_NET."
fn spec.forProvider.networkInterface.withQueueCount
withQueueCount(queueCount)
"The networking queue count that's specified by users for the network interface. Both Rx and Tx queues will be set to this number. It will be empty if not specified."
fn spec.forProvider.networkInterface.withStackType
withStackType(stackType)
"The stack type for this network interface to identify whether the IPv6 feature is enabled or not. Values are IPV4_IPV6 or IPV4_ONLY. If not specified, IPV4_ONLY will be used."
fn spec.forProvider.networkInterface.withSubnetwork
withSubnetwork(subnetwork)
"the name of the subnetwork to attach this interface to. The subnetwork must exist in the same region this instance will be created in. Either network or subnetwork must be provided."
fn spec.forProvider.networkInterface.withSubnetworkProject
withSubnetworkProject(subnetworkProject)
"The ID of the project in which the subnetwork belongs. If it is not provided, the provider project is used."
obj spec.forProvider.networkInterface.accessConfig
"Access configurations, i.e. IPs via which this instance can be accessed via the Internet.g. via tunnel or because it is running on another cloud instance on that network). This block can be repeated multiple times. Structure documented below."
fn spec.forProvider.networkInterface.accessConfig.withNatIp
withNatIp(natIp)
"The IP address that will be 1:1 mapped to the instance's network ip. If not given, one will be generated."
fn spec.forProvider.networkInterface.accessConfig.withNetworkTier
withNetworkTier(networkTier)
"The service-level to be provided for IPv6 traffic when the subnet has an external subnet. Only PREMIUM and STANDARD tier is valid for IPv6."
obj spec.forProvider.networkInterface.aliasIpRange
"An array of alias IP ranges for this network interface. Can only be specified for network interfaces on subnet-mode networks. Structure documented below."
fn spec.forProvider.networkInterface.aliasIpRange.withIpCidrRange
withIpCidrRange(ipCidrRange)
"The IP CIDR range represented by this alias IP range. This IP CIDR range must belong to the specified subnetwork and cannot contain IP addresses reserved by system or used by other network interfaces. At the time of writing only a netmask (e.g. /24) may be supplied, with a CIDR format resulting in an API error."
fn spec.forProvider.networkInterface.aliasIpRange.withSubnetworkRangeName
withSubnetworkRangeName(subnetworkRangeName)
"The subnetwork secondary range name specifying the secondary range from which to allocate the IP CIDR range for this alias IP range. If left unspecified, the primary range of the subnetwork will be used."
obj spec.forProvider.networkInterface.ipv6AccessConfig
"An array of IPv6 access configurations for this interface. Currently, only one IPv6 access config, DIRECT_IPV6, is supported. If there is no ipv6AccessConfig specified, then this instance will have no external IPv6 Internet access. Structure documented below."
fn spec.forProvider.networkInterface.ipv6AccessConfig.withNetworkTier
withNetworkTier(networkTier)
"The service-level to be provided for IPv6 traffic when the subnet has an external subnet. Only PREMIUM and STANDARD tier is valid for IPv6."
obj spec.forProvider.networkInterface.networkRef
"Reference to a Network to populate network."
fn spec.forProvider.networkInterface.networkRef.withName
withName(name)
"Name of the referenced object."
obj spec.forProvider.networkInterface.networkRef.policy
"Policies for referencing."
fn spec.forProvider.networkInterface.networkRef.policy.withResolution
withResolution(resolution)
"Resolution specifies whether resolution of this reference is required. The default is 'Required', which means the reconcile will fail if the reference cannot be resolved. 'Optional' means this reference will be a no-op if it cannot be resolved."
fn spec.forProvider.networkInterface.networkRef.policy.withResolve
withResolve(resolve)
"Resolve specifies when this reference should be resolved. The default is 'IfNotPresent', which will attempt to resolve the reference only when the corresponding field is not present. Use 'Always' to resolve the reference on every reconcile."
obj spec.forProvider.networkInterface.networkSelector
"Selector for a Network to populate network."
fn spec.forProvider.networkInterface.networkSelector.withMatchControllerRef
withMatchControllerRef(matchControllerRef)
"MatchControllerRef ensures an object with the same controller reference as the selecting object is selected."
fn spec.forProvider.networkInterface.networkSelector.withMatchLabels
withMatchLabels(matchLabels)
"MatchLabels ensures an object with matching labels is selected."
fn spec.forProvider.networkInterface.networkSelector.withMatchLabelsMixin
withMatchLabelsMixin(matchLabels)
"MatchLabels ensures an object with matching labels is selected."
Note: This function appends passed data to existing values
obj spec.forProvider.networkInterface.networkSelector.policy
"Policies for selection."
fn spec.forProvider.networkInterface.networkSelector.policy.withResolution
withResolution(resolution)
"Resolution specifies whether resolution of this reference is required. The default is 'Required', which means the reconcile will fail if the reference cannot be resolved. 'Optional' means this reference will be a no-op if it cannot be resolved."
fn spec.forProvider.networkInterface.networkSelector.policy.withResolve
withResolve(resolve)
"Resolve specifies when this reference should be resolved. The default is 'IfNotPresent', which will attempt to resolve the reference only when the corresponding field is not present. Use 'Always' to resolve the reference on every reconcile."
obj spec.forProvider.networkInterface.subnetworkRef
"Reference to a Subnetwork to populate subnetwork."
fn spec.forProvider.networkInterface.subnetworkRef.withName
withName(name)
"Name of the referenced object."
obj spec.forProvider.networkInterface.subnetworkRef.policy
"Policies for referencing."
fn spec.forProvider.networkInterface.subnetworkRef.policy.withResolution
withResolution(resolution)
"Resolution specifies whether resolution of this reference is required. The default is 'Required', which means the reconcile will fail if the reference cannot be resolved. 'Optional' means this reference will be a no-op if it cannot be resolved."
fn spec.forProvider.networkInterface.subnetworkRef.policy.withResolve
withResolve(resolve)
"Resolve specifies when this reference should be resolved. The default is 'IfNotPresent', which will attempt to resolve the reference only when the corresponding field is not present. Use 'Always' to resolve the reference on every reconcile."
obj spec.forProvider.networkInterface.subnetworkSelector
"Selector for a Subnetwork to populate subnetwork."
fn spec.forProvider.networkInterface.subnetworkSelector.withMatchControllerRef
withMatchControllerRef(matchControllerRef)
"MatchControllerRef ensures an object with the same controller reference as the selecting object is selected."
fn spec.forProvider.networkInterface.subnetworkSelector.withMatchLabels
withMatchLabels(matchLabels)
"MatchLabels ensures an object with matching labels is selected."
fn spec.forProvider.networkInterface.subnetworkSelector.withMatchLabelsMixin
withMatchLabelsMixin(matchLabels)
"MatchLabels ensures an object with matching labels is selected."
Note: This function appends passed data to existing values
obj spec.forProvider.networkInterface.subnetworkSelector.policy
"Policies for selection."
fn spec.forProvider.networkInterface.subnetworkSelector.policy.withResolution
withResolution(resolution)
"Resolution specifies whether resolution of this reference is required. The default is 'Required', which means the reconcile will fail if the reference cannot be resolved. 'Optional' means this reference will be a no-op if it cannot be resolved."
fn spec.forProvider.networkInterface.subnetworkSelector.policy.withResolve
withResolve(resolve)
"Resolve specifies when this reference should be resolved. The default is 'IfNotPresent', which will attempt to resolve the reference only when the corresponding field is not present. Use 'Always' to resolve the reference on every reconcile."
obj spec.forProvider.reservationAffinity
"Specifies the reservations that this instance can consume from. Structure is documented below."
fn spec.forProvider.reservationAffinity.withSpecificReservation
withSpecificReservation(specificReservation)
"Specifies the label selector for the reservation to use.. Structure is documented below."
fn spec.forProvider.reservationAffinity.withSpecificReservationMixin
withSpecificReservationMixin(specificReservation)
"Specifies the label selector for the reservation to use.. Structure is documented below."
Note: This function appends passed data to existing values
fn spec.forProvider.reservationAffinity.withType
withType(type)
"The type of reservation from which this instance can consume resources."
obj spec.forProvider.reservationAffinity.specificReservation
"Specifies the label selector for the reservation to use.. Structure is documented below."
fn spec.forProvider.reservationAffinity.specificReservation.withKey
withKey(key)
"Corresponds to the label key of a reservation resource. To target a SPECIFIC_RESERVATION by name, specify compute.googleapis.com/reservation-name as the key and specify the name of your reservation as the only value."
fn spec.forProvider.reservationAffinity.specificReservation.withValues
withValues(values)
"Corresponds to the label values of a reservation resource."
fn spec.forProvider.reservationAffinity.specificReservation.withValuesMixin
withValuesMixin(values)
"Corresponds to the label values of a reservation resource."
Note: This function appends passed data to existing values
obj spec.forProvider.scheduling
"The scheduling strategy to use. More details about this configuration option are detailed below."
fn spec.forProvider.scheduling.withAutomaticRestart
withAutomaticRestart(automaticRestart)
"Specifies whether the instance should be automatically restarted if it is terminated by Compute Engine (not terminated by a user). This defaults to true."
fn spec.forProvider.scheduling.withInstanceTerminationAction
withInstanceTerminationAction(instanceTerminationAction)
"Describe the type of termination action for SPOT VM. Can be STOP or DELETE. Read more on here"
fn spec.forProvider.scheduling.withMinNodeCpus
withMinNodeCpus(minNodeCpus)
fn spec.forProvider.scheduling.withNodeAffinities
withNodeAffinities(nodeAffinities)
"Specifies node affinities or anti-affinities to determine which sole-tenant nodes your instances and managed instance groups will use as host systems. Read more on sole-tenant node creation here. Structure documented below."
fn spec.forProvider.scheduling.withNodeAffinitiesMixin
withNodeAffinitiesMixin(nodeAffinities)
"Specifies node affinities or anti-affinities to determine which sole-tenant nodes your instances and managed instance groups will use as host systems. Read more on sole-tenant node creation here. Structure documented below."
Note: This function appends passed data to existing values
fn spec.forProvider.scheduling.withOnHostMaintenance
withOnHostMaintenance(onHostMaintenance)
"Defines the maintenance behavior for this instance."
fn spec.forProvider.scheduling.withPreemptible
withPreemptible(preemptible)
"Allows instance to be preempted. This defaults to false. Read more on this here."
fn spec.forProvider.scheduling.withProvisioningModel
withProvisioningModel(provisioningModel)
"Describe the type of preemptible VM. This field accepts the value STANDARD or SPOT. If the value is STANDARD, there will be no discount. If this is set to SPOT, preemptible should be true and auto_restart should be false. For more info about SPOT, read here"
obj spec.forProvider.scheduling.nodeAffinities
"Specifies node affinities or anti-affinities to determine which sole-tenant nodes your instances and managed instance groups will use as host systems. Read more on sole-tenant node creation here. Structure documented below."
fn spec.forProvider.scheduling.nodeAffinities.withKey
withKey(key)
"Corresponds to the label key of a reservation resource. To target a SPECIFIC_RESERVATION by name, specify compute.googleapis.com/reservation-name as the key and specify the name of your reservation as the only value."
fn spec.forProvider.scheduling.nodeAffinities.withOperator
withOperator(operator)
"The operator. Can be IN for node-affinities or NOT_IN for anti-affinities."
fn spec.forProvider.scheduling.nodeAffinities.withValues
withValues(values)
"Corresponds to the label values of a reservation resource."
fn spec.forProvider.scheduling.nodeAffinities.withValuesMixin
withValuesMixin(values)
"Corresponds to the label values of a reservation resource."
Note: This function appends passed data to existing values
obj spec.forProvider.serviceAccount
"Service account to attach to the instance. Structure is documented below."
fn spec.forProvider.serviceAccount.withEmail
withEmail(email)
"The service account e-mail address. If not given, the default Google Compute Engine service account is used."
fn spec.forProvider.serviceAccount.withScopes
withScopes(scopes)
"A list of service scopes. Both OAuth2 URLs and gcloud short names are supported. To allow full access to all Cloud APIs, use the cloud-platform scope. See a complete list of scopes here."
fn spec.forProvider.serviceAccount.withScopesMixin
withScopesMixin(scopes)
"A list of service scopes. Both OAuth2 URLs and gcloud short names are supported. To allow full access to all Cloud APIs, use the cloud-platform scope. See a complete list of scopes here."
Note: This function appends passed data to existing values
obj spec.forProvider.serviceAccount.emailRef
"Reference to a ServiceAccount in cloudplatform to populate email."
fn spec.forProvider.serviceAccount.emailRef.withName
withName(name)
"Name of the referenced object."
obj spec.forProvider.serviceAccount.emailRef.policy
"Policies for referencing."
fn spec.forProvider.serviceAccount.emailRef.policy.withResolution
withResolution(resolution)
"Resolution specifies whether resolution of this reference is required. The default is 'Required', which means the reconcile will fail if the reference cannot be resolved. 'Optional' means this reference will be a no-op if it cannot be resolved."
fn spec.forProvider.serviceAccount.emailRef.policy.withResolve
withResolve(resolve)
"Resolve specifies when this reference should be resolved. The default is 'IfNotPresent', which will attempt to resolve the reference only when the corresponding field is not present. Use 'Always' to resolve the reference on every reconcile."
obj spec.forProvider.serviceAccount.emailSelector
"Selector for a ServiceAccount in cloudplatform to populate email."
fn spec.forProvider.serviceAccount.emailSelector.withMatchControllerRef
withMatchControllerRef(matchControllerRef)
"MatchControllerRef ensures an object with the same controller reference as the selecting object is selected."
fn spec.forProvider.serviceAccount.emailSelector.withMatchLabels
withMatchLabels(matchLabels)
"MatchLabels ensures an object with matching labels is selected."
fn spec.forProvider.serviceAccount.emailSelector.withMatchLabelsMixin
withMatchLabelsMixin(matchLabels)
"MatchLabels ensures an object with matching labels is selected."
Note: This function appends passed data to existing values
obj spec.forProvider.serviceAccount.emailSelector.policy
"Policies for selection."
fn spec.forProvider.serviceAccount.emailSelector.policy.withResolution
withResolution(resolution)
"Resolution specifies whether resolution of this reference is required. The default is 'Required', which means the reconcile will fail if the reference cannot be resolved. 'Optional' means this reference will be a no-op if it cannot be resolved."
fn spec.forProvider.serviceAccount.emailSelector.policy.withResolve
withResolve(resolve)
"Resolve specifies when this reference should be resolved. The default is 'IfNotPresent', which will attempt to resolve the reference only when the corresponding field is not present. Use 'Always' to resolve the reference on every reconcile."
obj spec.forProvider.shieldedInstanceConfig
"Enable Shielded VM on this instance. Shielded VM provides verifiable integrity to prevent against malware and rootkits. Defaults to disabled. Structure is documented below. Note: shielded_instance_config can only be used with boot images with shielded vm support. See the complete list here."
fn spec.forProvider.shieldedInstanceConfig.withEnableIntegrityMonitoring
withEnableIntegrityMonitoring(enableIntegrityMonitoring)
"- Compare the most recent boot measurements to the integrity policy baseline and return a pair of pass/fail results depending on whether they match or not. Defaults to true."
fn spec.forProvider.shieldedInstanceConfig.withEnableSecureBoot
withEnableSecureBoot(enableSecureBoot)
"- Verify the digital signature of all boot components, and halt the boot process if signature verification fails. Defaults to false."
fn spec.forProvider.shieldedInstanceConfig.withEnableVtpm
withEnableVtpm(enableVtpm)
"- Use a virtualized trusted platform module, which is a specialized computer chip you can use to encrypt objects like keys and certificates. Defaults to true."
obj spec.initProvider
"THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is enabled, and may be changed or removed without notice. InitProvider holds the same fields as ForProvider, with the exception of Identifier and other resource reference fields. The fields that are in InitProvider are merged into ForProvider when the resource is created. The same fields are also added to the terraform ignore_changes hook, to avoid updating them after creation. This is useful for fields that are required on creation, but we do not desire to update them after creation, for example because of an external controller is managing them, like an autoscaler."
fn spec.initProvider.withAdvancedMachineFeatures
withAdvancedMachineFeatures(advancedMachineFeatures)
"Configure Nested Virtualisation and Simultaneous Hyper Threading on this VM. Structure is documented below"
fn spec.initProvider.withAdvancedMachineFeaturesMixin
withAdvancedMachineFeaturesMixin(advancedMachineFeatures)
"Configure Nested Virtualisation and Simultaneous Hyper Threading on this VM. Structure is documented below"
Note: This function appends passed data to existing values
fn spec.initProvider.withCanIpForward
withCanIpForward(canIpForward)
"Whether to allow sending and receiving of packets with non-matching source or destination IPs. This defaults to false."
fn spec.initProvider.withConfidentialInstanceConfig
withConfidentialInstanceConfig(confidentialInstanceConfig)
"Enable Confidential Mode on this VM. Structure is documented below"
fn spec.initProvider.withConfidentialInstanceConfigMixin
withConfidentialInstanceConfigMixin(confidentialInstanceConfig)
"Enable Confidential Mode on this VM. Structure is documented below"
Note: This function appends passed data to existing values
fn spec.initProvider.withDescription
withDescription(description)
"A brief description of this resource."
fn spec.initProvider.withDisk
withDisk(disk)
"Disks to attach to instances created from this template. This can be specified multiple times for multiple disks. Structure is documented below."
fn spec.initProvider.withDiskMixin
withDiskMixin(disk)
"Disks to attach to instances created from this template. This can be specified multiple times for multiple disks. Structure is documented below."
Note: This function appends passed data to existing values
fn spec.initProvider.withGuestAccelerator
withGuestAccelerator(guestAccelerator)
"List of the type and count of accelerator cards attached to the instance. Structure documented below."
fn spec.initProvider.withGuestAcceleratorMixin
withGuestAcceleratorMixin(guestAccelerator)
"List of the type and count of accelerator cards attached to the instance. Structure documented below."
Note: This function appends passed data to existing values
fn spec.initProvider.withInstanceDescription
withInstanceDescription(instanceDescription)
"A brief description to use for instances created from this template."
fn spec.initProvider.withLabels
withLabels(labels)
"A set of key/value label pairs to assign to instances created from this template."
fn spec.initProvider.withLabelsMixin
withLabelsMixin(labels)
"A set of key/value label pairs to assign to instances created from this template."
Note: This function appends passed data to existing values
fn spec.initProvider.withMachineType
withMachineType(machineType)
"The machine type to create."
fn spec.initProvider.withMetadata
withMetadata(metadata)
"Metadata key/value pairs to make available from within instances created from this template."
fn spec.initProvider.withMetadataMixin
withMetadataMixin(metadata)
"Metadata key/value pairs to make available from within instances created from this template."
Note: This function appends passed data to existing values
fn spec.initProvider.withMetadataStartupScript
withMetadataStartupScript(metadataStartupScript)
"An alternative to using the startup-script metadata key, mostly to match the compute_instance resource. This replaces the startup-script metadata key on the created instance and thus the two mechanisms are not allowed to be used simultaneously."
fn spec.initProvider.withMinCpuPlatform
withMinCpuPlatform(minCpuPlatform)
"Specifies a minimum CPU platform. Applicable values are the friendly names of CPU platforms, such as Intel Haswell or Intel Skylake. See the complete list here."
fn spec.initProvider.withName
withName(name)
"The name of the instance template."
fn spec.initProvider.withNamePrefix
withNamePrefix(namePrefix)
"Creates a unique name beginning with the specified prefix. Conflicts with name."
fn spec.initProvider.withNetworkInterface
withNetworkInterface(networkInterface)
"Networks to attach to instances created from this template. This can be specified multiple times for multiple networks. Structure is documented below."
fn spec.initProvider.withNetworkInterfaceMixin
withNetworkInterfaceMixin(networkInterface)
"Networks to attach to instances created from this template. This can be specified multiple times for multiple networks. Structure is documented below."
Note: This function appends passed data to existing values
fn spec.initProvider.withProject
withProject(project)
"The ID of the project in which the resource belongs. If it is not provided, the provider project is used."
fn spec.initProvider.withRegion
withRegion(region)
"An instance template is a global resource that is not bound to a zone or a region. However, you can still specify some regional resources in an instance template, which restricts the template to the region where that resource resides. For example, a custom subnetwork resource is tied to a specific region. Defaults to the region of the Provider if no value is given."
fn spec.initProvider.withReservationAffinity
withReservationAffinity(reservationAffinity)
"Specifies the reservations that this instance can consume from. Structure is documented below."
fn spec.initProvider.withReservationAffinityMixin
withReservationAffinityMixin(reservationAffinity)
"Specifies the reservations that this instance can consume from. Structure is documented below."
Note: This function appends passed data to existing values
fn spec.initProvider.withResourcePolicies
withResourcePolicies(resourcePolicies)
"- A list of self_links of resource policies to attach to the instance. Modifying this list will cause the instance to recreate. Currently a max of 1 resource policy is supported."
fn spec.initProvider.withResourcePoliciesMixin
withResourcePoliciesMixin(resourcePolicies)
"- A list of self_links of resource policies to attach to the instance. Modifying this list will cause the instance to recreate. Currently a max of 1 resource policy is supported."
Note: This function appends passed data to existing values
fn spec.initProvider.withScheduling
withScheduling(scheduling)
"The scheduling strategy to use. More details about this configuration option are detailed below."
fn spec.initProvider.withSchedulingMixin
withSchedulingMixin(scheduling)
"The scheduling strategy to use. More details about this configuration option are detailed below."
Note: This function appends passed data to existing values
fn spec.initProvider.withServiceAccount
withServiceAccount(serviceAccount)
"Service account to attach to the instance. Structure is documented below."
fn spec.initProvider.withServiceAccountMixin
withServiceAccountMixin(serviceAccount)
"Service account to attach to the instance. Structure is documented below."
Note: This function appends passed data to existing values
fn spec.initProvider.withShieldedInstanceConfig
withShieldedInstanceConfig(shieldedInstanceConfig)
"Enable Shielded VM on this instance. Shielded VM provides verifiable integrity to prevent against malware and rootkits. Defaults to disabled. Structure is documented below. Note: shielded_instance_config can only be used with boot images with shielded vm support. See the complete list here."
fn spec.initProvider.withShieldedInstanceConfigMixin
withShieldedInstanceConfigMixin(shieldedInstanceConfig)
"Enable Shielded VM on this instance. Shielded VM provides verifiable integrity to prevent against malware and rootkits. Defaults to disabled. Structure is documented below. Note: shielded_instance_config can only be used with boot images with shielded vm support. See the complete list here."
Note: This function appends passed data to existing values
fn spec.initProvider.withTags
withTags(tags)
"Tags to attach to the instance."
fn spec.initProvider.withTagsMixin
withTagsMixin(tags)
"Tags to attach to the instance."
Note: This function appends passed data to existing values
obj spec.initProvider.advancedMachineFeatures
"Configure Nested Virtualisation and Simultaneous Hyper Threading on this VM. Structure is documented below"
fn spec.initProvider.advancedMachineFeatures.withEnableNestedVirtualization
withEnableNestedVirtualization(enableNestedVirtualization)
"Defines whether the instance should have nested virtualization enabled. Defaults to false."
fn spec.initProvider.advancedMachineFeatures.withThreadsPerCore
withThreadsPerCore(threadsPerCore)
"The number of threads per physical core. To disable simultaneous multithreading (SMT) set this to 1."
fn spec.initProvider.advancedMachineFeatures.withVisibleCoreCount
withVisibleCoreCount(visibleCoreCount)
"The number of physical cores to expose to an instance. visible cores info (VC)."
obj spec.initProvider.confidentialInstanceConfig
"Enable Confidential Mode on this VM. Structure is documented below"
fn spec.initProvider.confidentialInstanceConfig.withEnableConfidentialCompute
withEnableConfidentialCompute(enableConfidentialCompute)
"Defines whether the instance should have confidential compute enabled. on_host_maintenance has to be set to TERMINATE or this will fail to create the VM."
obj spec.initProvider.disk
"Disks to attach to instances created from this template. This can be specified multiple times for multiple disks. Structure is documented below."
fn spec.initProvider.disk.withAutoDelete
withAutoDelete(autoDelete)
"Whether or not the disk should be auto-deleted. This defaults to true."
fn spec.initProvider.disk.withBoot
withBoot(boot)
"Indicates that this is a boot disk."
fn spec.initProvider.disk.withDeviceName
withDeviceName(deviceName)
"A unique device name that is reflected into the /dev/ tree of a Linux operating system running within the instance. If not specified, the server chooses a default device name to apply to this disk."
fn spec.initProvider.disk.withDiskEncryptionKey
withDiskEncryptionKey(diskEncryptionKey)
"Encrypts or decrypts a disk using a customer-supplied encryption key."
fn spec.initProvider.disk.withDiskEncryptionKeyMixin
withDiskEncryptionKeyMixin(diskEncryptionKey)
"Encrypts or decrypts a disk using a customer-supplied encryption key."
Note: This function appends passed data to existing values
fn spec.initProvider.disk.withDiskName
withDiskName(diskName)
"Name of the disk. When not provided, this defaults to the name of the instance."
fn spec.initProvider.disk.withDiskSizeGb
withDiskSizeGb(diskSizeGb)
"The size of the image in gigabytes. If not specified, it will inherit the size of its base image. For SCRATCH disks, the size must be exactly 375GB."
fn spec.initProvider.disk.withDiskType
withDiskType(diskType)
"The GCE disk type. Such as \"pd-ssd\", \"local-ssd\", \"pd-balanced\" or \"pd-standard\"."
fn spec.initProvider.disk.withInterface
withInterface(interface)
"Specifies the disk interface to use for attaching this disk, which is either SCSI or NVME. The default is SCSI. Persistent disks must always use SCSI and the request will fail if you attempt to attach a persistent disk in any other format than SCSI. Local SSDs can use either NVME or SCSI."
fn spec.initProvider.disk.withLabels
withLabels(labels)
"A set of ket/value label pairs to assign to disk created from this template"
fn spec.initProvider.disk.withLabelsMixin
withLabelsMixin(labels)
"A set of ket/value label pairs to assign to disk created from this template"
Note: This function appends passed data to existing values
fn spec.initProvider.disk.withMode
withMode(mode)
"The mode in which to attach this disk, either READ_WRITE or READ_ONLY. If you are attaching or creating a boot disk, this must read-write mode."
fn spec.initProvider.disk.withResourcePolicies
withResourcePolicies(resourcePolicies)
"- A list (short name or id) of resource policies to attach to this disk for automatic snapshot creations. Currently a max of 1 resource policy is supported."
fn spec.initProvider.disk.withResourcePoliciesMixin
withResourcePoliciesMixin(resourcePolicies)
"- A list (short name or id) of resource policies to attach to this disk for automatic snapshot creations. Currently a max of 1 resource policy is supported."
Note: This function appends passed data to existing values
fn spec.initProvider.disk.withSourceImage
withSourceImage(sourceImage)
"The image from which to initialize this disk. This can be one of: the image's self_link, projects/{project}/global/images/{image}, projects/{project}/global/images/family/{family}, global/images/{image}, global/images/family/{family}, family/{family}, {project}/{family}, {project}/{image}, {family}, or {image}. ~> Note: Either source, source_image, or source_snapshot is required in a disk block unless the disk type is local-ssd. Check the API docs for details."
fn spec.initProvider.disk.withSourceImageEncryptionKey
withSourceImageEncryptionKey(sourceImageEncryptionKey)
"The customer-supplied encryption key of the source image. Required if the source image is protected by a customer-supplied encryption key."
fn spec.initProvider.disk.withSourceImageEncryptionKeyMixin
withSourceImageEncryptionKeyMixin(sourceImageEncryptionKey)
"The customer-supplied encryption key of the source image. Required if the source image is protected by a customer-supplied encryption key."
Note: This function appends passed data to existing values
fn spec.initProvider.disk.withSourceSnapshot
withSourceSnapshot(sourceSnapshot)
"The source snapshot to create this disk. ~> Note: Either source, source_image, or source_snapshot is required in a disk block unless the disk type is local-ssd. Check the API docs for details."
fn spec.initProvider.disk.withSourceSnapshotEncryptionKey
withSourceSnapshotEncryptionKey(sourceSnapshotEncryptionKey)
"The customer-supplied encryption key of the source snapshot. Structure documented below."
fn spec.initProvider.disk.withSourceSnapshotEncryptionKeyMixin
withSourceSnapshotEncryptionKeyMixin(sourceSnapshotEncryptionKey)
"The customer-supplied encryption key of the source snapshot. Structure documented below."
Note: This function appends passed data to existing values
fn spec.initProvider.disk.withType
withType(type)
"The type of GCE disk, can be either \"SCRATCH\" or \"PERSISTENT\"."
obj spec.initProvider.disk.diskEncryptionKey
"Encrypts or decrypts a disk using a customer-supplied encryption key."
fn spec.initProvider.disk.diskEncryptionKey.withKmsKeySelfLink
withKmsKeySelfLink(kmsKeySelfLink)
"The self link of the encryption key that is stored in Google Cloud KMS."
obj spec.initProvider.disk.sourceImageEncryptionKey
"The customer-supplied encryption key of the source image. Required if the source image is protected by a customer-supplied encryption key."
fn spec.initProvider.disk.sourceImageEncryptionKey.withKmsKeySelfLink
withKmsKeySelfLink(kmsKeySelfLink)
"The self link of the encryption key that is stored in Google Cloud KMS."
fn spec.initProvider.disk.sourceImageEncryptionKey.withKmsKeyServiceAccount
withKmsKeyServiceAccount(kmsKeyServiceAccount)
"The service account being used for the encryption request for the given KMS key. If absent, the Compute Engine default service account is used."
obj spec.initProvider.disk.sourceSnapshotEncryptionKey
"The customer-supplied encryption key of the source snapshot. Structure documented below."
fn spec.initProvider.disk.sourceSnapshotEncryptionKey.withKmsKeySelfLink
withKmsKeySelfLink(kmsKeySelfLink)
"The self link of the encryption key that is stored in Google Cloud KMS."
fn spec.initProvider.disk.sourceSnapshotEncryptionKey.withKmsKeyServiceAccount
withKmsKeyServiceAccount(kmsKeyServiceAccount)
"The service account being used for the encryption request for the given KMS key. If absent, the Compute Engine default service account is used."
obj spec.initProvider.guestAccelerator
"List of the type and count of accelerator cards attached to the instance. Structure documented below."
fn spec.initProvider.guestAccelerator.withCount
withCount(count)
"The number of the guest accelerator cards exposed to this instance."
fn spec.initProvider.guestAccelerator.withType
withType(type)
"The accelerator type resource to expose to this instance. E.g. nvidia-tesla-k80."
obj spec.initProvider.networkInterface
"Networks to attach to instances created from this template. This can be specified multiple times for multiple networks. Structure is documented below."
fn spec.initProvider.networkInterface.withAccessConfig
withAccessConfig(accessConfig)
"Access configurations, i.e. IPs via which this instance can be accessed via the Internet.g. via tunnel or because it is running on another cloud instance on that network). This block can be repeated multiple times. Structure documented below."
fn spec.initProvider.networkInterface.withAccessConfigMixin
withAccessConfigMixin(accessConfig)
"Access configurations, i.e. IPs via which this instance can be accessed via the Internet.g. via tunnel or because it is running on another cloud instance on that network). This block can be repeated multiple times. Structure documented below."
Note: This function appends passed data to existing values
fn spec.initProvider.networkInterface.withAliasIpRange
withAliasIpRange(aliasIpRange)
"An array of alias IP ranges for this network interface. Can only be specified for network interfaces on subnet-mode networks. Structure documented below."
fn spec.initProvider.networkInterface.withAliasIpRangeMixin
withAliasIpRangeMixin(aliasIpRange)
"An array of alias IP ranges for this network interface. Can only be specified for network interfaces on subnet-mode networks. Structure documented below."
Note: This function appends passed data to existing values
fn spec.initProvider.networkInterface.withIpv6AccessConfig
withIpv6AccessConfig(ipv6AccessConfig)
"An array of IPv6 access configurations for this interface. Currently, only one IPv6 access config, DIRECT_IPV6, is supported. If there is no ipv6AccessConfig specified, then this instance will have no external IPv6 Internet access. Structure documented below."
fn spec.initProvider.networkInterface.withIpv6AccessConfigMixin
withIpv6AccessConfigMixin(ipv6AccessConfig)
"An array of IPv6 access configurations for this interface. Currently, only one IPv6 access config, DIRECT_IPV6, is supported. If there is no ipv6AccessConfig specified, then this instance will have no external IPv6 Internet access. Structure documented below."
Note: This function appends passed data to existing values
fn spec.initProvider.networkInterface.withNetworkIp
withNetworkIp(networkIp)
"The private IP address to assign to the instance. If empty, the address will be automatically assigned."
fn spec.initProvider.networkInterface.withNicType
withNicType(nicType)
"The type of vNIC to be used on this interface. Possible values: GVNIC, VIRTIO_NET."
fn spec.initProvider.networkInterface.withQueueCount
withQueueCount(queueCount)
"The networking queue count that's specified by users for the network interface. Both Rx and Tx queues will be set to this number. It will be empty if not specified."
fn spec.initProvider.networkInterface.withStackType
withStackType(stackType)
"The stack type for this network interface to identify whether the IPv6 feature is enabled or not. Values are IPV4_IPV6 or IPV4_ONLY. If not specified, IPV4_ONLY will be used."
fn spec.initProvider.networkInterface.withSubnetworkProject
withSubnetworkProject(subnetworkProject)
"The ID of the project in which the subnetwork belongs. If it is not provided, the provider project is used."
obj spec.initProvider.networkInterface.accessConfig
"Access configurations, i.e. IPs via which this instance can be accessed via the Internet.g. via tunnel or because it is running on another cloud instance on that network). This block can be repeated multiple times. Structure documented below."
fn spec.initProvider.networkInterface.accessConfig.withNatIp
withNatIp(natIp)
"The IP address that will be 1:1 mapped to the instance's network ip. If not given, one will be generated."
fn spec.initProvider.networkInterface.accessConfig.withNetworkTier
withNetworkTier(networkTier)
"The service-level to be provided for IPv6 traffic when the subnet has an external subnet. Only PREMIUM and STANDARD tier is valid for IPv6."
obj spec.initProvider.networkInterface.aliasIpRange
"An array of alias IP ranges for this network interface. Can only be specified for network interfaces on subnet-mode networks. Structure documented below."
fn spec.initProvider.networkInterface.aliasIpRange.withIpCidrRange
withIpCidrRange(ipCidrRange)
"The IP CIDR range represented by this alias IP range. This IP CIDR range must belong to the specified subnetwork and cannot contain IP addresses reserved by system or used by other network interfaces. At the time of writing only a netmask (e.g. /24) may be supplied, with a CIDR format resulting in an API error."
fn spec.initProvider.networkInterface.aliasIpRange.withSubnetworkRangeName
withSubnetworkRangeName(subnetworkRangeName)
"The subnetwork secondary range name specifying the secondary range from which to allocate the IP CIDR range for this alias IP range. If left unspecified, the primary range of the subnetwork will be used."
obj spec.initProvider.networkInterface.ipv6AccessConfig
"An array of IPv6 access configurations for this interface. Currently, only one IPv6 access config, DIRECT_IPV6, is supported. If there is no ipv6AccessConfig specified, then this instance will have no external IPv6 Internet access. Structure documented below."
fn spec.initProvider.networkInterface.ipv6AccessConfig.withNetworkTier
withNetworkTier(networkTier)
"The service-level to be provided for IPv6 traffic when the subnet has an external subnet. Only PREMIUM and STANDARD tier is valid for IPv6."
obj spec.initProvider.reservationAffinity
"Specifies the reservations that this instance can consume from. Structure is documented below."
fn spec.initProvider.reservationAffinity.withSpecificReservation
withSpecificReservation(specificReservation)
"Specifies the label selector for the reservation to use.. Structure is documented below."
fn spec.initProvider.reservationAffinity.withSpecificReservationMixin
withSpecificReservationMixin(specificReservation)
"Specifies the label selector for the reservation to use.. Structure is documented below."
Note: This function appends passed data to existing values
fn spec.initProvider.reservationAffinity.withType
withType(type)
"The type of reservation from which this instance can consume resources."
obj spec.initProvider.reservationAffinity.specificReservation
"Specifies the label selector for the reservation to use.. Structure is documented below."
fn spec.initProvider.reservationAffinity.specificReservation.withKey
withKey(key)
"Corresponds to the label key of a reservation resource. To target a SPECIFIC_RESERVATION by name, specify compute.googleapis.com/reservation-name as the key and specify the name of your reservation as the only value."
fn spec.initProvider.reservationAffinity.specificReservation.withValues
withValues(values)
"Corresponds to the label values of a reservation resource."
fn spec.initProvider.reservationAffinity.specificReservation.withValuesMixin
withValuesMixin(values)
"Corresponds to the label values of a reservation resource."
Note: This function appends passed data to existing values
obj spec.initProvider.scheduling
"The scheduling strategy to use. More details about this configuration option are detailed below."
fn spec.initProvider.scheduling.withAutomaticRestart
withAutomaticRestart(automaticRestart)
"Specifies whether the instance should be automatically restarted if it is terminated by Compute Engine (not terminated by a user). This defaults to true."
fn spec.initProvider.scheduling.withInstanceTerminationAction
withInstanceTerminationAction(instanceTerminationAction)
"Describe the type of termination action for SPOT VM. Can be STOP or DELETE. Read more on here"
fn spec.initProvider.scheduling.withMinNodeCpus
withMinNodeCpus(minNodeCpus)
fn spec.initProvider.scheduling.withNodeAffinities
withNodeAffinities(nodeAffinities)
"Specifies node affinities or anti-affinities to determine which sole-tenant nodes your instances and managed instance groups will use as host systems. Read more on sole-tenant node creation here. Structure documented below."
fn spec.initProvider.scheduling.withNodeAffinitiesMixin
withNodeAffinitiesMixin(nodeAffinities)
"Specifies node affinities or anti-affinities to determine which sole-tenant nodes your instances and managed instance groups will use as host systems. Read more on sole-tenant node creation here. Structure documented below."
Note: This function appends passed data to existing values
fn spec.initProvider.scheduling.withOnHostMaintenance
withOnHostMaintenance(onHostMaintenance)
"Defines the maintenance behavior for this instance."
fn spec.initProvider.scheduling.withPreemptible
withPreemptible(preemptible)
"Allows instance to be preempted. This defaults to false. Read more on this here."
fn spec.initProvider.scheduling.withProvisioningModel
withProvisioningModel(provisioningModel)
"Describe the type of preemptible VM. This field accepts the value STANDARD or SPOT. If the value is STANDARD, there will be no discount. If this is set to SPOT, preemptible should be true and auto_restart should be false. For more info about SPOT, read here"
obj spec.initProvider.scheduling.nodeAffinities
"Specifies node affinities or anti-affinities to determine which sole-tenant nodes your instances and managed instance groups will use as host systems. Read more on sole-tenant node creation here. Structure documented below."
fn spec.initProvider.scheduling.nodeAffinities.withKey
withKey(key)
"Corresponds to the label key of a reservation resource. To target a SPECIFIC_RESERVATION by name, specify compute.googleapis.com/reservation-name as the key and specify the name of your reservation as the only value."
fn spec.initProvider.scheduling.nodeAffinities.withOperator
withOperator(operator)
"The operator. Can be IN for node-affinities or NOT_IN for anti-affinities."
fn spec.initProvider.scheduling.nodeAffinities.withValues
withValues(values)
"Corresponds to the label values of a reservation resource."
fn spec.initProvider.scheduling.nodeAffinities.withValuesMixin
withValuesMixin(values)
"Corresponds to the label values of a reservation resource."
Note: This function appends passed data to existing values
obj spec.initProvider.serviceAccount
"Service account to attach to the instance. Structure is documented below."
fn spec.initProvider.serviceAccount.withScopes
withScopes(scopes)
"A list of service scopes. Both OAuth2 URLs and gcloud short names are supported. To allow full access to all Cloud APIs, use the cloud-platform scope. See a complete list of scopes here."
fn spec.initProvider.serviceAccount.withScopesMixin
withScopesMixin(scopes)
"A list of service scopes. Both OAuth2 URLs and gcloud short names are supported. To allow full access to all Cloud APIs, use the cloud-platform scope. See a complete list of scopes here."
Note: This function appends passed data to existing values
obj spec.initProvider.shieldedInstanceConfig
"Enable Shielded VM on this instance. Shielded VM provides verifiable integrity to prevent against malware and rootkits. Defaults to disabled. Structure is documented below. Note: shielded_instance_config can only be used with boot images with shielded vm support. See the complete list here."
fn spec.initProvider.shieldedInstanceConfig.withEnableIntegrityMonitoring
withEnableIntegrityMonitoring(enableIntegrityMonitoring)
"- Compare the most recent boot measurements to the integrity policy baseline and return a pair of pass/fail results depending on whether they match or not. Defaults to true."
fn spec.initProvider.shieldedInstanceConfig.withEnableSecureBoot
withEnableSecureBoot(enableSecureBoot)
"- Verify the digital signature of all boot components, and halt the boot process if signature verification fails. Defaults to false."
fn spec.initProvider.shieldedInstanceConfig.withEnableVtpm
withEnableVtpm(enableVtpm)
"- Use a virtualized trusted platform module, which is a specialized computer chip you can use to encrypt objects like keys and certificates. Defaults to true."
obj spec.providerConfigRef
"ProviderConfigReference specifies how the provider that will be used to create, observe, update, and delete this managed resource should be configured."
fn spec.providerConfigRef.withName
withName(name)
"Name of the referenced object."
obj spec.providerConfigRef.policy
"Policies for referencing."
fn spec.providerConfigRef.policy.withResolution
withResolution(resolution)
"Resolution specifies whether resolution of this reference is required. The default is 'Required', which means the reconcile will fail if the reference cannot be resolved. 'Optional' means this reference will be a no-op if it cannot be resolved."
fn spec.providerConfigRef.policy.withResolve
withResolve(resolve)
"Resolve specifies when this reference should be resolved. The default is 'IfNotPresent', which will attempt to resolve the reference only when the corresponding field is not present. Use 'Always' to resolve the reference on every reconcile."
obj spec.providerRef
"ProviderReference specifies the provider that will be used to create, observe, update, and delete this managed resource. Deprecated: Please use ProviderConfigReference, i.e. providerConfigRef
"
fn spec.providerRef.withName
withName(name)
"Name of the referenced object."
obj spec.providerRef.policy
"Policies for referencing."
fn spec.providerRef.policy.withResolution
withResolution(resolution)
"Resolution specifies whether resolution of this reference is required. The default is 'Required', which means the reconcile will fail if the reference cannot be resolved. 'Optional' means this reference will be a no-op if it cannot be resolved."
fn spec.providerRef.policy.withResolve
withResolve(resolve)
"Resolve specifies when this reference should be resolved. The default is 'IfNotPresent', which will attempt to resolve the reference only when the corresponding field is not present. Use 'Always' to resolve the reference on every reconcile."
obj spec.publishConnectionDetailsTo
"PublishConnectionDetailsTo specifies the connection secret config which contains a name, metadata and a reference to secret store config to which any connection details for this managed resource should be written. Connection details frequently include the endpoint, username, and password required to connect to the managed resource."
fn spec.publishConnectionDetailsTo.withName
withName(name)
"Name is the name of the connection secret."
obj spec.publishConnectionDetailsTo.configRef
"SecretStoreConfigRef specifies which secret store config should be used for this ConnectionSecret."
fn spec.publishConnectionDetailsTo.configRef.withName
withName(name)
"Name of the referenced object."
obj spec.publishConnectionDetailsTo.configRef.policy
"Policies for referencing."
fn spec.publishConnectionDetailsTo.configRef.policy.withResolution
withResolution(resolution)
"Resolution specifies whether resolution of this reference is required. The default is 'Required', which means the reconcile will fail if the reference cannot be resolved. 'Optional' means this reference will be a no-op if it cannot be resolved."
fn spec.publishConnectionDetailsTo.configRef.policy.withResolve
withResolve(resolve)
"Resolve specifies when this reference should be resolved. The default is 'IfNotPresent', which will attempt to resolve the reference only when the corresponding field is not present. Use 'Always' to resolve the reference on every reconcile."
obj spec.publishConnectionDetailsTo.metadata
"Metadata is the metadata for connection secret."
fn spec.publishConnectionDetailsTo.metadata.withAnnotations
withAnnotations(annotations)
"Annotations are the annotations to be added to connection secret. - For Kubernetes secrets, this will be used as \"metadata.annotations\". - It is up to Secret Store implementation for others store types."
fn spec.publishConnectionDetailsTo.metadata.withAnnotationsMixin
withAnnotationsMixin(annotations)
"Annotations are the annotations to be added to connection secret. - For Kubernetes secrets, this will be used as \"metadata.annotations\". - It is up to Secret Store implementation for others store types."
Note: This function appends passed data to existing values
fn spec.publishConnectionDetailsTo.metadata.withLabels
withLabels(labels)
"Labels are the labels/tags to be added to connection secret. - For Kubernetes secrets, this will be used as \"metadata.labels\". - It is up to Secret Store implementation for others store types."
fn spec.publishConnectionDetailsTo.metadata.withLabelsMixin
withLabelsMixin(labels)
"Labels are the labels/tags to be added to connection secret. - For Kubernetes secrets, this will be used as \"metadata.labels\". - It is up to Secret Store implementation for others store types."
Note: This function appends passed data to existing values
fn spec.publishConnectionDetailsTo.metadata.withType
withType(type)
"Type is the SecretType for the connection secret. - Only valid for Kubernetes Secret Stores."
obj spec.writeConnectionSecretToRef
"WriteConnectionSecretToReference specifies the namespace and name of a Secret to which any connection details for this managed resource should be written. Connection details frequently include the endpoint, username, and password required to connect to the managed resource. This field is planned to be replaced in a future release in favor of PublishConnectionDetailsTo. Currently, both could be set independently and connection details would be published to both without affecting each other."
fn spec.writeConnectionSecretToRef.withName
withName(name)
"Name of the secret."
fn spec.writeConnectionSecretToRef.withNamespace
withNamespace(namespace)
"Namespace of the secret."