Skip to content

compute.v1beta1.computeInstanceTemplate

Index

Fields

fn new

new(name)

new returns an instance of ComputeInstanceTemplate

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"

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

fn spec.withCanIpForward

withCanIpForward(canIpForward)

"Immutable. Whether to allow sending and receiving of packets with non-matching source or destination IPs. This defaults to false."

fn spec.withDescription

withDescription(description)

"Immutable. A brief description of this resource."

fn spec.withDisk

withDisk(disk)

"Immutable. Disks to attach to instances created from this template. This can be specified multiple times for multiple disks."

fn spec.withDiskMixin

withDiskMixin(disk)

"Immutable. Disks to attach to instances created from this template. This can be specified multiple times for multiple disks."

Note: This function appends passed data to existing values

fn spec.withEnableDisplay

withEnableDisplay(enableDisplay)

"Immutable. Enable Virtual Displays on this instance. Note: allow_stopping_for_update must be set to true in order to update this field."

fn spec.withGuestAccelerator

withGuestAccelerator(guestAccelerator)

"Immutable. List of the type and count of accelerator cards attached to the instance."

fn spec.withGuestAcceleratorMixin

withGuestAcceleratorMixin(guestAccelerator)

"Immutable. List of the type and count of accelerator cards attached to the instance."

Note: This function appends passed data to existing values

fn spec.withInstanceDescription

withInstanceDescription(instanceDescription)

"Immutable. A description of the instance."

fn spec.withMachineType

withMachineType(machineType)

"Immutable. The machine type to create. To create a machine with a custom type (such as extended memory), format the value like custom-VCPUS-MEM_IN_MB like custom-6-20480 for 6 vCPU and 20GB of RAM."

fn spec.withMetadata

withMetadata(metadata)

fn spec.withMetadataMixin

withMetadataMixin(metadata)

Note: This function appends passed data to existing values

fn spec.withMetadataStartupScript

withMetadataStartupScript(metadataStartupScript)

"Immutable. 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.withMinCpuPlatform

withMinCpuPlatform(minCpuPlatform)

"Immutable. Specifies a minimum CPU platform. Applicable values are the friendly names of CPU platforms, such as Intel Haswell or Intel Skylake."

fn spec.withNamePrefix

withNamePrefix(namePrefix)

"Immutable. Creates a unique name beginning with the specified prefix. Conflicts with name."

fn spec.withNetworkInterface

withNetworkInterface(networkInterface)

"Immutable. Networks to attach to instances created from this template. This can be specified multiple times for multiple networks."

fn spec.withNetworkInterfaceMixin

withNetworkInterfaceMixin(networkInterface)

"Immutable. Networks to attach to instances created from this template. This can be specified multiple times for multiple networks."

Note: This function appends passed data to existing values

fn spec.withRegion

withRegion(region)

"Immutable. 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.withResourceID

withResourceID(resourceID)

"Immutable. Optional. The name of the resource. Used for creation and acquisition. When unset, the value of metadata.name is used as the default."

fn spec.withResourcePolicies

withResourcePolicies(resourcePolicies)

fn spec.withResourcePoliciesMixin

withResourcePoliciesMixin(resourcePolicies)

Note: This function appends passed data to existing values

fn spec.withTags

withTags(tags)

"Immutable. Tags to attach to the instance."

fn spec.withTagsMixin

withTagsMixin(tags)

"Immutable. Tags to attach to the instance."

Note: This function appends passed data to existing values

obj spec.advancedMachineFeatures

"Immutable. Controls for advanced machine-related behavior features."

fn spec.advancedMachineFeatures.withEnableNestedVirtualization

withEnableNestedVirtualization(enableNestedVirtualization)

"Immutable. Whether to enable nested virtualization or not."

fn spec.advancedMachineFeatures.withThreadsPerCore

withThreadsPerCore(threadsPerCore)

"Immutable. The number of threads per physical core. To disable simultaneous multithreading (SMT) set this to 1. If unset, the maximum number of threads supported per core by the underlying processor is assumed."

fn spec.advancedMachineFeatures.withVisibleCoreCount

withVisibleCoreCount(visibleCoreCount)

"Immutable. The number of physical cores to expose to an instance. Multiply by the number of threads per core to compute the total number of virtual CPUs to expose to the instance. If unset, the number of cores is inferred from the instance\'s nominal CPU count and the underlying platform\'s SMT width."

obj spec.confidentialInstanceConfig

"Immutable. The Confidential VM config being used by the instance. on_host_maintenance has to be set to TERMINATE or this will fail to create."

fn spec.confidentialInstanceConfig.withEnableConfidentialCompute

withEnableConfidentialCompute(enableConfidentialCompute)

"Immutable. Defines whether the instance should have confidential compute enabled."

obj spec.disk

"Immutable. Disks to attach to instances created from this template. This can be specified multiple times for multiple disks."

fn spec.disk.withAutoDelete

withAutoDelete(autoDelete)

"Immutable. Whether or not the disk should be auto-deleted. This defaults to true."

fn spec.disk.withBoot

withBoot(boot)

"Immutable. Indicates that this is a boot disk."

fn spec.disk.withDeviceName

withDeviceName(deviceName)

"Immutable. 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.disk.withDiskName

withDiskName(diskName)

"Immutable. Name of the disk. When not provided, this defaults to the name of the instance."

fn spec.disk.withDiskSizeGb

withDiskSizeGb(diskSizeGb)

"Immutable. 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 one of 375 or 3000 GB, with a default of 375 GB."

fn spec.disk.withDiskType

withDiskType(diskType)

"Immutable. The Google Compute Engine disk type. Such as \"pd-ssd\", \"local-ssd\", \"pd-balanced\" or \"pd-standard\"."

fn spec.disk.withInterface

withInterface(interface)

"Immutable. Specifies the disk interface to use for attaching this disk."

fn spec.disk.withLabels

withLabels(labels)

"Immutable. A set of key/value label pairs to assign to disks,."

fn spec.disk.withLabelsMixin

withLabelsMixin(labels)

"Immutable. A set of key/value label pairs to assign to disks,."

Note: This function appends passed data to existing values

fn spec.disk.withMode

withMode(mode)

"Immutable. 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.disk.withProvisionedIops

withProvisionedIops(provisionedIops)

"Immutable. Indicates how many IOPS to provision for the disk. This sets the number of I/O operations per second that the disk can handle. Values must be between 10,000 and 120,000. For more details, see the Extreme persistent disk documentation."

fn spec.disk.withResourcePolicies

withResourcePolicies(resourcePolicies)

fn spec.disk.withResourcePoliciesMixin

withResourcePoliciesMixin(resourcePolicies)

Note: This function appends passed data to existing values

fn spec.disk.withType

withType(type)

"Immutable. The type of Google Compute Engine disk, can be either \"SCRATCH\" or \"PERSISTENT\"."

obj spec.disk.diskEncryptionKey

"Immutable. Encrypts or decrypts a disk using a customer-supplied encryption key."

obj spec.disk.diskEncryptionKey.kmsKeyRef

fn spec.disk.diskEncryptionKey.kmsKeyRef.withExternal

withExternal(external)

"Allowed value: The selfLink field of a KMSCryptoKey resource."

fn spec.disk.diskEncryptionKey.kmsKeyRef.withName

withName(name)

"Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names"

fn spec.disk.diskEncryptionKey.kmsKeyRef.withNamespace

withNamespace(namespace)

"Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/"

obj spec.disk.resourcePolicies

fn spec.disk.resourcePolicies.withExternal

withExternal(external)

"Allowed value: The selfLink field of a ComputeResourcePolicy resource."

fn spec.disk.resourcePolicies.withName

withName(name)

"Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names"

fn spec.disk.resourcePolicies.withNamespace

withNamespace(namespace)

"Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/"

obj spec.disk.sourceDiskRef

fn spec.disk.sourceDiskRef.withExternal

withExternal(external)

"Allowed value: The name field of a ComputeDisk resource."

fn spec.disk.sourceDiskRef.withName

withName(name)

"Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names"

fn spec.disk.sourceDiskRef.withNamespace

withNamespace(namespace)

"Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/"

obj spec.disk.sourceImageEncryptionKey

"Immutable. The customer-supplied encryption key of the source\nimage. Required if the source image is protected by a\ncustomer-supplied encryption key.\n\nInstance templates do not store customer-supplied\nencryption keys, so you cannot create disks for\ninstances in a managed instance group if the source\nimages are encrypted with your own keys."

obj spec.disk.sourceImageEncryptionKey.kmsKeySelfLinkRef

"The self link of the encryption key that is stored in Google Cloud\nKMS."

fn spec.disk.sourceImageEncryptionKey.kmsKeySelfLinkRef.withExternal

withExternal(external)

"Allowed value: The selfLink field of a KMSCryptoKey resource."

fn spec.disk.sourceImageEncryptionKey.kmsKeySelfLinkRef.withName

withName(name)

"Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names"

fn spec.disk.sourceImageEncryptionKey.kmsKeySelfLinkRef.withNamespace

withNamespace(namespace)

"Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/"

obj spec.disk.sourceImageEncryptionKey.kmsKeyServiceAccountRef

"The service account being used for the encryption request for the\ngiven KMS key. If absent, the Compute Engine default service account\nis used."

fn spec.disk.sourceImageEncryptionKey.kmsKeyServiceAccountRef.withExternal

withExternal(external)

"Allowed value: The email field of an IAMServiceAccount resource."

fn spec.disk.sourceImageEncryptionKey.kmsKeyServiceAccountRef.withName

withName(name)

"Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names"

fn spec.disk.sourceImageEncryptionKey.kmsKeyServiceAccountRef.withNamespace

withNamespace(namespace)

"Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/"

obj spec.disk.sourceImageRef

fn spec.disk.sourceImageRef.withExternal

withExternal(external)

"Allowed value: The selfLink field of a ComputeImage resource."

fn spec.disk.sourceImageRef.withName

withName(name)

"Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names"

fn spec.disk.sourceImageRef.withNamespace

withNamespace(namespace)

"Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/"

obj spec.disk.sourceSnapshotEncryptionKey

"Immutable. The customer-supplied encryption key of the source snapshot."

obj spec.disk.sourceSnapshotEncryptionKey.kmsKeySelfLinkRef

"The self link of the encryption key that is stored in Google Cloud\nKMS."

fn spec.disk.sourceSnapshotEncryptionKey.kmsKeySelfLinkRef.withExternal

withExternal(external)

"Allowed value: The selfLink field of a KMSCryptoKey resource."

fn spec.disk.sourceSnapshotEncryptionKey.kmsKeySelfLinkRef.withName

withName(name)

"Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names"

fn spec.disk.sourceSnapshotEncryptionKey.kmsKeySelfLinkRef.withNamespace

withNamespace(namespace)

"Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/"

obj spec.disk.sourceSnapshotEncryptionKey.kmsKeyServiceAccountRef

"The service account being used for the encryption request for the\ngiven KMS key. If absent, the Compute Engine default service account\nis used."

fn spec.disk.sourceSnapshotEncryptionKey.kmsKeyServiceAccountRef.withExternal

withExternal(external)

"Allowed value: The email field of an IAMServiceAccount resource."

fn spec.disk.sourceSnapshotEncryptionKey.kmsKeyServiceAccountRef.withName

withName(name)

"Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names"

fn spec.disk.sourceSnapshotEncryptionKey.kmsKeyServiceAccountRef.withNamespace

withNamespace(namespace)

"Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/"

obj spec.disk.sourceSnapshotRef

"The source snapshot to create this disk. When creating a new\ninstance, one of initializeParams.sourceSnapshot,\ninitializeParams.sourceImage, or disks.source is required except for\nlocal SSD."

fn spec.disk.sourceSnapshotRef.withExternal

withExternal(external)

"Allowed value: The selfLink field of a ComputeSnapshot resource."

fn spec.disk.sourceSnapshotRef.withName

withName(name)

"Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names"

fn spec.disk.sourceSnapshotRef.withNamespace

withNamespace(namespace)

"Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/"

obj spec.guestAccelerator

"Immutable. List of the type and count of accelerator cards attached to the instance."

fn spec.guestAccelerator.withCount

withCount(count)

"Immutable. The number of the guest accelerator cards exposed to this instance."

fn spec.guestAccelerator.withType

withType(type)

"Immutable. The accelerator type resource to expose to this instance. E.g. nvidia-tesla-t4."

obj spec.metadata

fn spec.metadata.withKey

withKey(key)

fn spec.metadata.withValue

withValue(value)

obj spec.networkInterface

"Immutable. Networks to attach to instances created from this template. This can be specified multiple times for multiple networks."

fn spec.networkInterface.withAccessConfig

withAccessConfig(accessConfig)

fn spec.networkInterface.withAccessConfigMixin

withAccessConfigMixin(accessConfig)

Note: This function appends passed data to existing values

fn spec.networkInterface.withAliasIpRange

withAliasIpRange(aliasIpRange)

"Immutable. An array of alias IP ranges for this network interface. Can only be specified for network interfaces on subnet-mode networks."

fn spec.networkInterface.withAliasIpRangeMixin

withAliasIpRangeMixin(aliasIpRange)

"Immutable. An array of alias IP ranges for this network interface. Can only be specified for network interfaces on subnet-mode networks."

Note: This function appends passed data to existing values

fn spec.networkInterface.withInternalIpv6PrefixLength

withInternalIpv6PrefixLength(internalIpv6PrefixLength)

"The prefix length of the primary internal IPv6 range."

fn spec.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."

fn spec.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."

Note: This function appends passed data to existing values

fn spec.networkInterface.withIpv6AccessType

withIpv6AccessType(ipv6AccessType)

"One of EXTERNAL, INTERNAL to indicate whether the IP can be accessed from the Internet. This field is always inherited from its subnetwork."

fn spec.networkInterface.withIpv6Address

withIpv6Address(ipv6Address)

"An IPv6 internal network address for this network interface. If not specified, Google Cloud will automatically assign an internal IPv6 address from the instance's subnetwork."

fn spec.networkInterface.withName

withName(name)

"The name of the network_interface."

fn spec.networkInterface.withNetworkAttachment

withNetworkAttachment(networkAttachment)

"Immutable. The URL of the network attachment that this interface should connect to in the following format: projects/{projectNumber}/regions/{region_name}/networkAttachments/{network_attachment_name}."

fn spec.networkInterface.withNetworkIp

withNetworkIp(networkIp)

"Immutable. The private IP address to assign to the instance. If empty, the address will be automatically assigned."

fn spec.networkInterface.withNicType

withNicType(nicType)

"Immutable. The type of vNIC to be used on this interface. Possible values:GVNIC, VIRTIO_NET."

fn spec.networkInterface.withQueueCount

withQueueCount(queueCount)

"Immutable. 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.networkInterface.withStackType

withStackType(stackType)

"The stack type for this network interface to identify whether the IPv6 feature is enabled or not. If not specified, IPV4_ONLY will be used."

fn spec.networkInterface.withSubnetworkProject

withSubnetworkProject(subnetworkProject)

"Immutable. The ID of the project in which the subnetwork belongs. If it is not provided, the provider project is used."

obj spec.networkInterface.accessConfig

fn spec.networkInterface.accessConfig.withNetworkTier

withNetworkTier(networkTier)

"Immutable. The networking tier used for configuring this instance template. This field can take the following values: PREMIUM, STANDARD, FIXED_STANDARD. If this field is not specified, it is assumed to be PREMIUM."

fn spec.networkInterface.accessConfig.withPublicPtrDomainName

withPublicPtrDomainName(publicPtrDomainName)

"The DNS domain name for the public PTR record.The DNS domain name for the public PTR record."

obj spec.networkInterface.accessConfig.natIpRef

fn spec.networkInterface.accessConfig.natIpRef.withExternal

withExternal(external)

"Allowed value: The address field of a ComputeAddress resource."

fn spec.networkInterface.accessConfig.natIpRef.withName

withName(name)

"Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names"

fn spec.networkInterface.accessConfig.natIpRef.withNamespace

withNamespace(namespace)

"Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/"

obj spec.networkInterface.aliasIpRange

"Immutable. An array of alias IP ranges for this network interface. Can only be specified for network interfaces on subnet-mode networks."

fn spec.networkInterface.aliasIpRange.withIpCidrRange

withIpCidrRange(ipCidrRange)

"Immutable. 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.networkInterface.aliasIpRange.withSubnetworkRangeName

withSubnetworkRangeName(subnetworkRangeName)

"Immutable. 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.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."

fn spec.networkInterface.ipv6AccessConfig.withExternalIpv6

withExternalIpv6(externalIpv6)

"The first IPv6 address of the external IPv6 range associated with this instance, prefix length is stored in externalIpv6PrefixLength in ipv6AccessConfig. The field is output only, an IPv6 address from a subnetwork associated with the instance will be allocated dynamically."

fn spec.networkInterface.ipv6AccessConfig.withExternalIpv6PrefixLength

withExternalIpv6PrefixLength(externalIpv6PrefixLength)

"The prefix length of the external IPv6 range."

fn spec.networkInterface.ipv6AccessConfig.withName

withName(name)

"The name of this access configuration."

fn spec.networkInterface.ipv6AccessConfig.withNetworkTier

withNetworkTier(networkTier)

"The service-level to be provided for IPv6 traffic when the subnet has an external subnet. Only PREMIUM tier is valid for IPv6."

fn spec.networkInterface.ipv6AccessConfig.withPublicPtrDomainName

withPublicPtrDomainName(publicPtrDomainName)

"The domain name to be used when creating DNSv6 records for the external IPv6 ranges."

obj spec.networkInterface.networkRef

fn spec.networkInterface.networkRef.withExternal

withExternal(external)

"Allowed value: The selfLink field of a ComputeNetwork resource."

fn spec.networkInterface.networkRef.withName

withName(name)

"Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names"

fn spec.networkInterface.networkRef.withNamespace

withNamespace(namespace)

"Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/"

obj spec.networkInterface.subnetworkRef

fn spec.networkInterface.subnetworkRef.withExternal

withExternal(external)

"Allowed value: The selfLink field of a ComputeSubnetwork resource."

fn spec.networkInterface.subnetworkRef.withName

withName(name)

"Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names"

fn spec.networkInterface.subnetworkRef.withNamespace

withNamespace(namespace)

"Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/"

obj spec.networkPerformanceConfig

"Immutable. Configures network performance settings for the instance. If not specified, the instance will be created with its default network performance configuration."

fn spec.networkPerformanceConfig.withTotalEgressBandwidthTier

withTotalEgressBandwidthTier(totalEgressBandwidthTier)

"Immutable. The egress bandwidth tier to enable. Possible values:TIER_1, DEFAULT."

obj spec.reservationAffinity

"Immutable. Specifies the reservations that this instance can consume from."

fn spec.reservationAffinity.withType

withType(type)

"Immutable. The type of reservation from which this instance can consume resources."

obj spec.reservationAffinity.specificReservation

"Immutable. Specifies the label selector for the reservation to use."

fn spec.reservationAffinity.specificReservation.withKey

withKey(key)

"Immutable. 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.reservationAffinity.specificReservation.withValues

withValues(values)

"Immutable. Corresponds to the label values of a reservation resource."

fn spec.reservationAffinity.specificReservation.withValuesMixin

withValuesMixin(values)

"Immutable. Corresponds to the label values of a reservation resource."

Note: This function appends passed data to existing values

obj spec.resourcePolicies

fn spec.resourcePolicies.withExternal

withExternal(external)

"Allowed value: The selfLink field of a ComputeResourcePolicy resource."

fn spec.resourcePolicies.withName

withName(name)

"Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names"

fn spec.resourcePolicies.withNamespace

withNamespace(namespace)

"Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/"

obj spec.scheduling

"Immutable. The scheduling strategy to use."

fn spec.scheduling.withAutomaticRestart

withAutomaticRestart(automaticRestart)

"Immutable. 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.scheduling.withInstanceTerminationAction

withInstanceTerminationAction(instanceTerminationAction)

"Immutable. Specifies the action GCE should take when SPOT VM is preempted."

fn spec.scheduling.withLocalSsdRecoveryTimeout

withLocalSsdRecoveryTimeout(localSsdRecoveryTimeout)

"Specifies the maximum amount of time a Local Ssd Vm should wait while\n recovery of the Local Ssd state is attempted. Its value should be in\n between 0 and 168 hours with hour granularity and the default value being 1\n hour."

fn spec.scheduling.withLocalSsdRecoveryTimeoutMixin

withLocalSsdRecoveryTimeoutMixin(localSsdRecoveryTimeout)

"Specifies the maximum amount of time a Local Ssd Vm should wait while\n recovery of the Local Ssd state is attempted. Its value should be in\n between 0 and 168 hours with hour granularity and the default value being 1\n hour."

Note: This function appends passed data to existing values

fn spec.scheduling.withMaintenanceInterval

withMaintenanceInterval(maintenanceInterval)

"Specifies the frequency of planned maintenance events. The accepted values are: PERIODIC."

fn spec.scheduling.withMinNodeCpus

withMinNodeCpus(minNodeCpus)

"Minimum number of cpus for the instance."

fn spec.scheduling.withNodeAffinities

withNodeAffinities(nodeAffinities)

fn spec.scheduling.withNodeAffinitiesMixin

withNodeAffinitiesMixin(nodeAffinities)

Note: This function appends passed data to existing values

fn spec.scheduling.withOnHostMaintenance

withOnHostMaintenance(onHostMaintenance)

"Immutable. Defines the maintenance behavior for this instance."

fn spec.scheduling.withPreemptible

withPreemptible(preemptible)

"Immutable. Allows instance to be preempted. This defaults to false."

fn spec.scheduling.withProvisioningModel

withProvisioningModel(provisioningModel)

"Immutable. Whether the instance is spot. If this is set as SPOT."

obj spec.scheduling.localSsdRecoveryTimeout

"Specifies the maximum amount of time a Local Ssd Vm should wait while\n recovery of the Local Ssd state is attempted. Its value should be in\n between 0 and 168 hours with hour granularity and the default value being 1\n hour."

fn spec.scheduling.localSsdRecoveryTimeout.withNanos

withNanos(nanos)

"Immutable. Span of time that's a fraction of a second at nanosecond\nresolution. Durations less than one second are represented\nwith a 0 seconds field and a positive nanos field. Must\nbe from 0 to 999,999,999 inclusive."

fn spec.scheduling.localSsdRecoveryTimeout.withSeconds

withSeconds(seconds)

"Immutable. Span of time at a resolution of a second.\nMust be from 0 to 315,576,000,000 inclusive."

obj spec.scheduling.maxRunDuration

"Immutable. The timeout for new network connections to hosts."

fn spec.scheduling.maxRunDuration.withNanos

withNanos(nanos)

"Immutable. Span of time that's a fraction of a second at nanosecond\nresolution. Durations less than one second are represented\nwith a 0 seconds field and a positive nanos field. Must\nbe from 0 to 999,999,999 inclusive."

fn spec.scheduling.maxRunDuration.withSeconds

withSeconds(seconds)

"Immutable. Span of time at a resolution of a second.\nMust be from 0 to 315,576,000,000 inclusive."

obj spec.scheduling.nodeAffinities

fn spec.scheduling.nodeAffinities.withValue

withValue(value)

fn spec.scheduling.nodeAffinities.withValueMixin

withValueMixin(value)

Note: This function appends passed data to existing values

obj spec.serviceAccount

"Immutable. Service account to attach to the instance."

fn spec.serviceAccount.withScopes

withScopes(scopes)

"Immutable. 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."

fn spec.serviceAccount.withScopesMixin

withScopesMixin(scopes)

"Immutable. 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."

Note: This function appends passed data to existing values

obj spec.serviceAccount.serviceAccountRef

fn spec.serviceAccount.serviceAccountRef.withExternal

withExternal(external)

"Allowed value: The email field of an IAMServiceAccount resource."

fn spec.serviceAccount.serviceAccountRef.withName

withName(name)

"Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names"

fn spec.serviceAccount.serviceAccountRef.withNamespace

withNamespace(namespace)

"Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/"

obj spec.shieldedInstanceConfig

"Immutable. Enable Shielded VM on this instance. Shielded VM provides verifiable integrity to prevent against malware and rootkits. Defaults to disabled. Note: shielded_instance_config can only be used with boot images with shielded vm support."

fn spec.shieldedInstanceConfig.withEnableIntegrityMonitoring

withEnableIntegrityMonitoring(enableIntegrityMonitoring)

"Immutable. 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.shieldedInstanceConfig.withEnableSecureBoot

withEnableSecureBoot(enableSecureBoot)

"Immutable. Verify the digital signature of all boot components, and halt the boot process if signature verification fails. Defaults to false."

fn spec.shieldedInstanceConfig.withEnableVtpm

withEnableVtpm(enableVtpm)

"Immutable. 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."