File: //snap/google-cloud-cli/396/lib/googlecloudsdk/schemas/compute/beta/Instance.yaml
$schema: "http://json-schema.org/draft-06/schema#"
title: compute beta Instance export schema
description: A gcloud export/import command YAML validation schema.
type: object
additionalProperties: false
properties:
COMMENT:
type: object
description: User specified info ignored by gcloud import.
additionalProperties: false
properties:
template-id:
type: string
region:
type: string
description:
type: string
date:
type: string
version:
type: string
UNKNOWN:
type: array
description: Unknown API fields that cannot be imported.
items:
type: string
advancedMachineFeatures:
description: Controls for advanced machine-related behavior features.
$ref: AdvancedMachineFeatures.yaml
canIpForward:
description: |-
Allows this instance to send and receive packets with non- matching
destination or source IPs. This is required if you plan to use this
instance to forward routes. For more information, see Enabling IP
Forwarding.
type: boolean
confidentialInstanceConfig:
description: A ConfidentialInstanceConfig attribute.
$ref: ConfidentialInstanceConfig.yaml
cpuPlatform:
description: '[Output Only] The CPU platform used by this instance.'
type: string
creationTimestamp:
description: '[Output Only] Creation timestamp in RFC3339 text format.'
type: string
deletionProtection:
description: Whether the resource should be protected against deletion.
type: boolean
description:
description: |-
An optional description of this resource. Provide this property when you
create the resource.
type: string
disks:
description: |-
Array of disks associated with this instance. Persistent disks must be
created before you can assign them.
type: array
items:
$ref: AttachedDisk.yaml
displayDevice:
description: Enables display device for the instance.
$ref: DisplayDevice.yaml
eraseWindowsVssSignature:
description: |-
Specifies whether the disks restored from source snapshots or source
machine image should erase Windows specific VSS signature.
type: boolean
fingerprint:
description: |-
Specifies a fingerprint for this resource, which is essentially a hash
of the instance's contents and used for optimistic locking. The
fingerprint is initially generated by Compute Engine and changes after
every request to modify or update the instance. You must always
provide an up-to-date fingerprint hash in order to update the
instance. To see the latest fingerprint, make get() request to the
instance.
type: string
guestAccelerators:
description: |-
A list of the type and count of accelerator cards attached to the
instance.
type: array
items:
$ref: AcceleratorConfig.yaml
hostname:
description: |-
Specifies the hostname of the instance. The specified hostname
must be RFC1035 compliant. If hostname is not specified, the
default hostname is [INSTANCE_NAME].c.[PROJECT_ID].internal when
using the global DNS, and
[INSTANCE_NAME].[ZONE].c.[PROJECT_ID].internal when using zonal
DNS.
type: string
id:
description: |-
[Output Only] The unique identifier for the resource. This
identifier is defined by the server.
type: integer
kind:
description: |-
[Output Only] Type of the resource. Always compute#instance for
instances.
type: string
labelFingerprint:
description: |-
A fingerprint for this request, which is essentially a hash of the
label's contents and used for optimistic locking. The fingerprint
is initially generated by Compute Engine and changes after every
request to modify or update labels. You must always provide an up-
to-date fingerprint hash in order to update or change labels. To
see the latest fingerprint, make get() request to the instance.
type: string
labels:
description: |-
Labels to apply to this instance. These can be later modified by
the setLabels method.
$ref: LabelsValue.yaml
lastStartTimestamp:
description: |-
[Output Only] Last start timestamp in RFC3339 text format.
type: string
lastStopTimestamp:
description: |-
[Output Only] Last stop timestamp in RFC3339 text format.
type: string
lastSuspendedTimestamp:
description: |-
[Output Only] Last suspended timestamp in RFC3339 text format.
type: string
machineType:
description: |-
Full or partial URL of the machine type resource to use for this
instance, in the format: zones/zone/machineTypes/machine-type.
This is provided by the client when the instance is created. For
example, the following is a valid partial url to a predefined
machine type: zones/us- central1-f/machineTypes/n1-standard-1 To
create a custom machine type, provide a URL to a machine type in
the following format, where CPUS is 1 or an even number up to 32
(2, 4, 6, ... 24, etc), and MEMORY is the total memory for this
instance. Memory must be a multiple of 256 MB and must be supplied
in MB (e.g. 5 GB of memory is 5120 MB):
zones/zone/machineTypes/custom-CPUS-MEMORY For example:
zones/us- central1-f/machineTypes/custom-4-5120 For a full list
of restrictions, read the Specifications for custom machine types.
type: string
metadata:
description: |-
The metadata key/value pairs assigned to this instance. This
includes custom metadata and predefined keys.
$ref: Metadata.yaml
minCpuPlatform:
description: |-
"Intel Haswell" or minCpuPlatform: "Intel Sandy Bridge".
type: string
name:
description: |-
The name of the resource, provided by the client when initially
creating the resource. The resource name must be 1-63 characters
long, and comply with RFC1035. Specifically, the name must be 1-63
characters long and match the regular expression
`[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must
be a lowercase letter, and all following characters must be a
dash, lowercase letter, or digit, except the last character, which
cannot be a dash.
type: string
networkInterfaces:
description: |-
An array of network configurations for this instance. These
specify how interfaces are configured to interact with other
network services, such as connecting to the internet. Multiple
interfaces are supported per instance.
type: array
items:
$ref: NetworkInterface.yaml
networkPerformanceConfig:
description: A NetworkPerformanceConfig attribute.
$ref: NetworkPerformanceConfig.yaml
params:
description: |-
Input only. [Input Only] Additional params passed with the
request, but not persisted as part of resource payload.
$ref: InstanceParams.yaml
postKeyRevocationActionType:
description: PostKeyRevocationActionType of the instance.
type: string
enum:
- NOOP
- POST_KEY_REVOCATION_ACTION_TYPE_UNSPECIFIED
- SHUTDOWN
keyRevocationActionType:
description: KeyRevocationActionType of the instance.
type: string
enum:
- NONE
- STOP
- KEY_REVOCATION_ACTION_TYPE_UNSPECIFIED
privateIpv6GoogleAccess:
description: |-
The private IPv6 google access type for the VM. If not
specified, use INHERIT_FROM_SUBNETWORK as default.
type: string
enum:
- ENABLE_BIDIRECTIONAL_ACCESS_TO_GOOGLE
- ENABLE_OUTBOUND_VM_ACCESS_TO_GOOGLE
- INHERIT_FROM_SUBNETWORK
reservationAffinity:
description: |-
Specifies the reservations that this instance can consume
from.
$ref: ReservationAffinity.yaml
resourcePolicies:
description: Resource policies applied to this instance.
type: array
items:
type: string
satisfiesPzs:
description: '[Output Only] Reserved for future use.'
type: boolean
scheduling:
description: Sets the scheduling options for this instance.
$ref: Scheduling.yaml
selfLink:
description: |-
[Output Only] Server-defined URL for this resource.
type: string
serviceAccounts:
description: |-
A list of service accounts, with their specified scopes,
authorized for this instance. Only one service account per
VM instance is supported. Service accounts generate
access tokens that can be accessed through the metadata
server and used to authenticate applications on the
instance. See Service Accounts for more information.
type: array
items:
$ref: ServiceAccount.yaml
shieldedInstanceConfig:
description: A ShieldedInstanceConfig attribute.
$ref: ShieldedInstanceConfig.yaml
shieldedInstanceIntegrityPolicy:
description: |-
A ShieldedInstanceIntegrityPolicy attribute.
$ref: ShieldedInstanceIntegrityPolicy.yaml
shieldedVmConfig:
description: |-
Deprecating, please use shielded_instance_config.
$ref: ShieldedVmConfig.yaml
shieldedVmIntegrityPolicy:
description: |-
Deprecating, please use
shielded_instance_integrity_policy.
$ref: ShieldedVmIntegrityPolicy.yaml
sourceMachineImage:
description: Source machine image
type: string
sourceMachineImageEncryptionKey:
description: |-
Source machine image encryption key when creating an
instance from a machine image.
$ref: CustomerEncryptionKey.yaml
startRestricted:
description: |-
[Output Only] Whether a VM has been restricted for
start because Compute Engine has detected suspicious
activity.
type: boolean
status:
description: |-
[Output Only] The status of the instance. One of the
following
type: string
enum:
- DEPROVISIONING
- PROVISIONING
- REPAIRING
- RUNNING
- STAGING
- STOPPED
- STOPPING
- SUSPENDED
- SUSPENDING
- TERMINATED
statusMessage:
description: |-
[Output Only] An optional, human-readable explanation
of the status.
type: string
tags:
description: |-
Tags to apply to this instance. Tags are used to
identify valid sources or targets for network
firewalls and are specified by the client during
instance creation. The tags can be later modified by
the setTags method. Each tag within the list must
comply with RFC1035. Multiple tags can be specified
via the 'tags.items' field.
$ref: Tags.yaml
zone:
description: |-
[Output Only] URL of the zone where the instance
resides. You must specify this field as part of the
HTTP request URL. It is not settable as a field in the
request body.
type: string