Class: Google::Cloud::Compute::V1::InstanceProperties

Inherits:
Object
  • Object
show all
Extended by:
Protobuf::MessageExts::ClassMethods
Includes:
Protobuf::MessageExts
Defined in:
proto_docs/google/cloud/compute/v1/compute.rb

Defined Under Namespace

Modules: KeyRevocationActionType, LocalSsdEncryptionMode, PrivateIpv6GoogleAccess Classes: LabelsEntry, ResourceManagerTagsEntry

Instance Attribute Summary collapse

Instance Attribute Details

#advanced_machine_features ⇒ ::Google::Cloud::Compute::V1::AdvancedMachineFeatures

Returns Controls for advanced machine-related behavior features. Note that for MachineImage, this is not supported yet.

Returns:



35489
35490
35491
35492
35493
35494
35495
35496
35497
35498
35499
35500
35501
35502
35503
35504
35505
35506
35507
35508
35509
35510
35511
35512
35513
35514
35515
35516
35517
35518
35519
35520
35521
35522
35523
35524
35525
35526
35527
35528
35529
35530
35531
35532
35533
35534
35535
35536
35537
35538
35539
35540
35541
35542
35543
35544
35545
35546
35547
35548
35549
35550
35551
35552
35553
35554
35555
35556
35557
35558
35559
35560
35561
35562
35563
35564
35565
35566
35567
35568
35569
35570
35571
35572
35573
# File 'proto_docs/google/cloud/compute/v1/compute.rb', line 35489

class InstanceProperties
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class LabelsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class ResourceManagerTagsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # KeyRevocationActionType of the instance. Supported options are "STOP" and
  # "NONE". The default value is "NONE" if it is not specified.
  module KeyRevocationActionType
    # A value indicating that the enum field is not set.
    UNDEFINED_KEY_REVOCATION_ACTION_TYPE = 0

    # Default value. This value is unused.
    KEY_REVOCATION_ACTION_TYPE_UNSPECIFIED = 467_110_106

    # Indicates user chose no operation.
    NONE = 2_402_104

    # Indicates user chose to opt for VM shutdown on key revocation.
    STOP = 2_555_906
  end

  # Specifies which method should be used for encrypting the
  # Local SSDs attached to the VM.
  module LocalSsdEncryptionMode
    # A value indicating that the enum field is not set.
    UNDEFINED_LOCAL_SSD_ENCRYPTION_MODE = 0

    # The given VM will opt-in for using ephemeral key for
    # encryption of Local SSDs.
    # The Local SSDs will not be able to recover data in case of VM
    # crash.
    EPHEMERAL_KEY_ENCRYPTION = 413_047_941

    # The given VM will be encrypted using keys managed by the cloud
    # infrastructure and the keys will be deleted when the VM is
    # deleted.
    LOCAL_SSD_ENCRYPTION_MODE_UNSPECIFIED = 454_655_720

    # The given VM will be encrypted using keys managed by the cloud
    # infrastructure and the keys will be deleted when the VM is
    # deleted.
    STANDARD_ENCRYPTION = 269_392_453
  end

  # The private IPv6 google access type for VMs.
  # If not specified, use  INHERIT_FROM_SUBNETWORK as default.
  # Note that for MachineImage, this is not supported yet.
  module PrivateIpv6GoogleAccess
    # A value indicating that the enum field is not set.
    UNDEFINED_PRIVATE_IPV6_GOOGLE_ACCESS = 0

    # Bidirectional private IPv6 access to/from Google services. If
    # specified, the subnetwork who is attached to the instance's default network
    # interface will be assigned an internal IPv6 prefix if it doesn't have
    # before.
    ENABLE_BIDIRECTIONAL_ACCESS_TO_GOOGLE = 427_975_994

    # Outbound private IPv6 access from VMs in this subnet to Google services. If
    # specified, the subnetwork who is attached to the instance's default network
    # interface will be assigned an internal IPv6 prefix if it doesn't have
    # before.
    ENABLE_OUTBOUND_VM_ACCESS_TO_GOOGLE = 288_210_263

    # Each network interface inherits PrivateIpv6GoogleAccess from its
    # subnetwork.
    INHERIT_FROM_SUBNETWORK = 530_256_959
  end
end

#can_ip_forward ⇒ ::Boolean

Returns Enables instances created based on these properties to send packets with source IP addresses other than their own and receive packets with destination IP addresses other than their own. If these instances will be used as an IP gateway or it will be set as the next-hop in a Route resource, specify true. If unsure, leave this set tofalse. See theEnable IP forwarding documentation for more information.

Returns:

  • (::Boolean) —

    Enables instances created based on these properties to send packets with source IP addresses other than their own and receive packets with destination IP addresses other than their own. If these instances will be used as an IP gateway or it will be set as the next-hop in a Route resource, specify true. If unsure, leave this set tofalse. See theEnable IP forwarding documentation for more information.



35489
35490
35491
35492
35493
35494
35495
35496
35497
35498
35499
35500
35501
35502
35503
35504
35505
35506
35507
35508
35509
35510
35511
35512
35513
35514
35515
35516
35517
35518
35519
35520
35521
35522
35523
35524
35525
35526
35527
35528
35529
35530
35531
35532
35533
35534
35535
35536
35537
35538
35539
35540
35541
35542
35543
35544
35545
35546
35547
35548
35549
35550
35551
35552
35553
35554
35555
35556
35557
35558
35559
35560
35561
35562
35563
35564
35565
35566
35567
35568
35569
35570
35571
35572
35573
# File 'proto_docs/google/cloud/compute/v1/compute.rb', line 35489

class InstanceProperties
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class LabelsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class ResourceManagerTagsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # KeyRevocationActionType of the instance. Supported options are "STOP" and
  # "NONE". The default value is "NONE" if it is not specified.
  module KeyRevocationActionType
    # A value indicating that the enum field is not set.
    UNDEFINED_KEY_REVOCATION_ACTION_TYPE = 0

    # Default value. This value is unused.
    KEY_REVOCATION_ACTION_TYPE_UNSPECIFIED = 467_110_106

    # Indicates user chose no operation.
    NONE = 2_402_104

    # Indicates user chose to opt for VM shutdown on key revocation.
    STOP = 2_555_906
  end

  # Specifies which method should be used for encrypting the
  # Local SSDs attached to the VM.
  module LocalSsdEncryptionMode
    # A value indicating that the enum field is not set.
    UNDEFINED_LOCAL_SSD_ENCRYPTION_MODE = 0

    # The given VM will opt-in for using ephemeral key for
    # encryption of Local SSDs.
    # The Local SSDs will not be able to recover data in case of VM
    # crash.
    EPHEMERAL_KEY_ENCRYPTION = 413_047_941

    # The given VM will be encrypted using keys managed by the cloud
    # infrastructure and the keys will be deleted when the VM is
    # deleted.
    LOCAL_SSD_ENCRYPTION_MODE_UNSPECIFIED = 454_655_720

    # The given VM will be encrypted using keys managed by the cloud
    # infrastructure and the keys will be deleted when the VM is
    # deleted.
    STANDARD_ENCRYPTION = 269_392_453
  end

  # The private IPv6 google access type for VMs.
  # If not specified, use  INHERIT_FROM_SUBNETWORK as default.
  # Note that for MachineImage, this is not supported yet.
  module PrivateIpv6GoogleAccess
    # A value indicating that the enum field is not set.
    UNDEFINED_PRIVATE_IPV6_GOOGLE_ACCESS = 0

    # Bidirectional private IPv6 access to/from Google services. If
    # specified, the subnetwork who is attached to the instance's default network
    # interface will be assigned an internal IPv6 prefix if it doesn't have
    # before.
    ENABLE_BIDIRECTIONAL_ACCESS_TO_GOOGLE = 427_975_994

    # Outbound private IPv6 access from VMs in this subnet to Google services. If
    # specified, the subnetwork who is attached to the instance's default network
    # interface will be assigned an internal IPv6 prefix if it doesn't have
    # before.
    ENABLE_OUTBOUND_VM_ACCESS_TO_GOOGLE = 288_210_263

    # Each network interface inherits PrivateIpv6GoogleAccess from its
    # subnetwork.
    INHERIT_FROM_SUBNETWORK = 530_256_959
  end
end

#confidential_instance_config ⇒ ::Google::Cloud::Compute::V1::ConfidentialInstanceConfig

Returns Specifies the Confidential Instance options. Note that for MachineImage, this is not supported yet.

Returns:



35489
35490
35491
35492
35493
35494
35495
35496
35497
35498
35499
35500
35501
35502
35503
35504
35505
35506
35507
35508
35509
35510
35511
35512
35513
35514
35515
35516
35517
35518
35519
35520
35521
35522
35523
35524
35525
35526
35527
35528
35529
35530
35531
35532
35533
35534
35535
35536
35537
35538
35539
35540
35541
35542
35543
35544
35545
35546
35547
35548
35549
35550
35551
35552
35553
35554
35555
35556
35557
35558
35559
35560
35561
35562
35563
35564
35565
35566
35567
35568
35569
35570
35571
35572
35573
# File 'proto_docs/google/cloud/compute/v1/compute.rb', line 35489

class InstanceProperties
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class LabelsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class ResourceManagerTagsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # KeyRevocationActionType of the instance. Supported options are "STOP" and
  # "NONE". The default value is "NONE" if it is not specified.
  module KeyRevocationActionType
    # A value indicating that the enum field is not set.
    UNDEFINED_KEY_REVOCATION_ACTION_TYPE = 0

    # Default value. This value is unused.
    KEY_REVOCATION_ACTION_TYPE_UNSPECIFIED = 467_110_106

    # Indicates user chose no operation.
    NONE = 2_402_104

    # Indicates user chose to opt for VM shutdown on key revocation.
    STOP = 2_555_906
  end

  # Specifies which method should be used for encrypting the
  # Local SSDs attached to the VM.
  module LocalSsdEncryptionMode
    # A value indicating that the enum field is not set.
    UNDEFINED_LOCAL_SSD_ENCRYPTION_MODE = 0

    # The given VM will opt-in for using ephemeral key for
    # encryption of Local SSDs.
    # The Local SSDs will not be able to recover data in case of VM
    # crash.
    EPHEMERAL_KEY_ENCRYPTION = 413_047_941

    # The given VM will be encrypted using keys managed by the cloud
    # infrastructure and the keys will be deleted when the VM is
    # deleted.
    LOCAL_SSD_ENCRYPTION_MODE_UNSPECIFIED = 454_655_720

    # The given VM will be encrypted using keys managed by the cloud
    # infrastructure and the keys will be deleted when the VM is
    # deleted.
    STANDARD_ENCRYPTION = 269_392_453
  end

  # The private IPv6 google access type for VMs.
  # If not specified, use  INHERIT_FROM_SUBNETWORK as default.
  # Note that for MachineImage, this is not supported yet.
  module PrivateIpv6GoogleAccess
    # A value indicating that the enum field is not set.
    UNDEFINED_PRIVATE_IPV6_GOOGLE_ACCESS = 0

    # Bidirectional private IPv6 access to/from Google services. If
    # specified, the subnetwork who is attached to the instance's default network
    # interface will be assigned an internal IPv6 prefix if it doesn't have
    # before.
    ENABLE_BIDIRECTIONAL_ACCESS_TO_GOOGLE = 427_975_994

    # Outbound private IPv6 access from VMs in this subnet to Google services. If
    # specified, the subnetwork who is attached to the instance's default network
    # interface will be assigned an internal IPv6 prefix if it doesn't have
    # before.
    ENABLE_OUTBOUND_VM_ACCESS_TO_GOOGLE = 288_210_263

    # Each network interface inherits PrivateIpv6GoogleAccess from its
    # subnetwork.
    INHERIT_FROM_SUBNETWORK = 530_256_959
  end
end

#description ⇒ ::String

Returns An optional text description for the instances that are created from these properties.

Returns:

  • (::String) —

    An optional text description for the instances that are created from these properties.



35489
35490
35491
35492
35493
35494
35495
35496
35497
35498
35499
35500
35501
35502
35503
35504
35505
35506
35507
35508
35509
35510
35511
35512
35513
35514
35515
35516
35517
35518
35519
35520
35521
35522
35523
35524
35525
35526
35527
35528
35529
35530
35531
35532
35533
35534
35535
35536
35537
35538
35539
35540
35541
35542
35543
35544
35545
35546
35547
35548
35549
35550
35551
35552
35553
35554
35555
35556
35557
35558
35559
35560
35561
35562
35563
35564
35565
35566
35567
35568
35569
35570
35571
35572
35573
# File 'proto_docs/google/cloud/compute/v1/compute.rb', line 35489

class InstanceProperties
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class LabelsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class ResourceManagerTagsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # KeyRevocationActionType of the instance. Supported options are "STOP" and
  # "NONE". The default value is "NONE" if it is not specified.
  module KeyRevocationActionType
    # A value indicating that the enum field is not set.
    UNDEFINED_KEY_REVOCATION_ACTION_TYPE = 0

    # Default value. This value is unused.
    KEY_REVOCATION_ACTION_TYPE_UNSPECIFIED = 467_110_106

    # Indicates user chose no operation.
    NONE = 2_402_104

    # Indicates user chose to opt for VM shutdown on key revocation.
    STOP = 2_555_906
  end

  # Specifies which method should be used for encrypting the
  # Local SSDs attached to the VM.
  module LocalSsdEncryptionMode
    # A value indicating that the enum field is not set.
    UNDEFINED_LOCAL_SSD_ENCRYPTION_MODE = 0

    # The given VM will opt-in for using ephemeral key for
    # encryption of Local SSDs.
    # The Local SSDs will not be able to recover data in case of VM
    # crash.
    EPHEMERAL_KEY_ENCRYPTION = 413_047_941

    # The given VM will be encrypted using keys managed by the cloud
    # infrastructure and the keys will be deleted when the VM is
    # deleted.
    LOCAL_SSD_ENCRYPTION_MODE_UNSPECIFIED = 454_655_720

    # The given VM will be encrypted using keys managed by the cloud
    # infrastructure and the keys will be deleted when the VM is
    # deleted.
    STANDARD_ENCRYPTION = 269_392_453
  end

  # The private IPv6 google access type for VMs.
  # If not specified, use  INHERIT_FROM_SUBNETWORK as default.
  # Note that for MachineImage, this is not supported yet.
  module PrivateIpv6GoogleAccess
    # A value indicating that the enum field is not set.
    UNDEFINED_PRIVATE_IPV6_GOOGLE_ACCESS = 0

    # Bidirectional private IPv6 access to/from Google services. If
    # specified, the subnetwork who is attached to the instance's default network
    # interface will be assigned an internal IPv6 prefix if it doesn't have
    # before.
    ENABLE_BIDIRECTIONAL_ACCESS_TO_GOOGLE = 427_975_994

    # Outbound private IPv6 access from VMs in this subnet to Google services. If
    # specified, the subnetwork who is attached to the instance's default network
    # interface will be assigned an internal IPv6 prefix if it doesn't have
    # before.
    ENABLE_OUTBOUND_VM_ACCESS_TO_GOOGLE = 288_210_263

    # Each network interface inherits PrivateIpv6GoogleAccess from its
    # subnetwork.
    INHERIT_FROM_SUBNETWORK = 530_256_959
  end
end

#disks ⇒ ::Array<::Google::Cloud::Compute::V1::AttachedDisk>

Returns An array of disks that are associated with the instances that are created from these properties.

Returns:



35489
35490
35491
35492
35493
35494
35495
35496
35497
35498
35499
35500
35501
35502
35503
35504
35505
35506
35507
35508
35509
35510
35511
35512
35513
35514
35515
35516
35517
35518
35519
35520
35521
35522
35523
35524
35525
35526
35527
35528
35529
35530
35531
35532
35533
35534
35535
35536
35537
35538
35539
35540
35541
35542
35543
35544
35545
35546
35547
35548
35549
35550
35551
35552
35553
35554
35555
35556
35557
35558
35559
35560
35561
35562
35563
35564
35565
35566
35567
35568
35569
35570
35571
35572
35573
# File 'proto_docs/google/cloud/compute/v1/compute.rb', line 35489

class InstanceProperties
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class LabelsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class ResourceManagerTagsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # KeyRevocationActionType of the instance. Supported options are "STOP" and
  # "NONE". The default value is "NONE" if it is not specified.
  module KeyRevocationActionType
    # A value indicating that the enum field is not set.
    UNDEFINED_KEY_REVOCATION_ACTION_TYPE = 0

    # Default value. This value is unused.
    KEY_REVOCATION_ACTION_TYPE_UNSPECIFIED = 467_110_106

    # Indicates user chose no operation.
    NONE = 2_402_104

    # Indicates user chose to opt for VM shutdown on key revocation.
    STOP = 2_555_906
  end

  # Specifies which method should be used for encrypting the
  # Local SSDs attached to the VM.
  module LocalSsdEncryptionMode
    # A value indicating that the enum field is not set.
    UNDEFINED_LOCAL_SSD_ENCRYPTION_MODE = 0

    # The given VM will opt-in for using ephemeral key for
    # encryption of Local SSDs.
    # The Local SSDs will not be able to recover data in case of VM
    # crash.
    EPHEMERAL_KEY_ENCRYPTION = 413_047_941

    # The given VM will be encrypted using keys managed by the cloud
    # infrastructure and the keys will be deleted when the VM is
    # deleted.
    LOCAL_SSD_ENCRYPTION_MODE_UNSPECIFIED = 454_655_720

    # The given VM will be encrypted using keys managed by the cloud
    # infrastructure and the keys will be deleted when the VM is
    # deleted.
    STANDARD_ENCRYPTION = 269_392_453
  end

  # The private IPv6 google access type for VMs.
  # If not specified, use  INHERIT_FROM_SUBNETWORK as default.
  # Note that for MachineImage, this is not supported yet.
  module PrivateIpv6GoogleAccess
    # A value indicating that the enum field is not set.
    UNDEFINED_PRIVATE_IPV6_GOOGLE_ACCESS = 0

    # Bidirectional private IPv6 access to/from Google services. If
    # specified, the subnetwork who is attached to the instance's default network
    # interface will be assigned an internal IPv6 prefix if it doesn't have
    # before.
    ENABLE_BIDIRECTIONAL_ACCESS_TO_GOOGLE = 427_975_994

    # Outbound private IPv6 access from VMs in this subnet to Google services. If
    # specified, the subnetwork who is attached to the instance's default network
    # interface will be assigned an internal IPv6 prefix if it doesn't have
    # before.
    ENABLE_OUTBOUND_VM_ACCESS_TO_GOOGLE = 288_210_263

    # Each network interface inherits PrivateIpv6GoogleAccess from its
    # subnetwork.
    INHERIT_FROM_SUBNETWORK = 530_256_959
  end
end

#guest_accelerators ⇒ ::Array<::Google::Cloud::Compute::V1::AcceleratorConfig>

Returns A list of guest accelerator cards' type and count to use for instances created from these properties.

Returns:



35489
35490
35491
35492
35493
35494
35495
35496
35497
35498
35499
35500
35501
35502
35503
35504
35505
35506
35507
35508
35509
35510
35511
35512
35513
35514
35515
35516
35517
35518
35519
35520
35521
35522
35523
35524
35525
35526
35527
35528
35529
35530
35531
35532
35533
35534
35535
35536
35537
35538
35539
35540
35541
35542
35543
35544
35545
35546
35547
35548
35549
35550
35551
35552
35553
35554
35555
35556
35557
35558
35559
35560
35561
35562
35563
35564
35565
35566
35567
35568
35569
35570
35571
35572
35573
# File 'proto_docs/google/cloud/compute/v1/compute.rb', line 35489

class InstanceProperties
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class LabelsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class ResourceManagerTagsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # KeyRevocationActionType of the instance. Supported options are "STOP" and
  # "NONE". The default value is "NONE" if it is not specified.
  module KeyRevocationActionType
    # A value indicating that the enum field is not set.
    UNDEFINED_KEY_REVOCATION_ACTION_TYPE = 0

    # Default value. This value is unused.
    KEY_REVOCATION_ACTION_TYPE_UNSPECIFIED = 467_110_106

    # Indicates user chose no operation.
    NONE = 2_402_104

    # Indicates user chose to opt for VM shutdown on key revocation.
    STOP = 2_555_906
  end

  # Specifies which method should be used for encrypting the
  # Local SSDs attached to the VM.
  module LocalSsdEncryptionMode
    # A value indicating that the enum field is not set.
    UNDEFINED_LOCAL_SSD_ENCRYPTION_MODE = 0

    # The given VM will opt-in for using ephemeral key for
    # encryption of Local SSDs.
    # The Local SSDs will not be able to recover data in case of VM
    # crash.
    EPHEMERAL_KEY_ENCRYPTION = 413_047_941

    # The given VM will be encrypted using keys managed by the cloud
    # infrastructure and the keys will be deleted when the VM is
    # deleted.
    LOCAL_SSD_ENCRYPTION_MODE_UNSPECIFIED = 454_655_720

    # The given VM will be encrypted using keys managed by the cloud
    # infrastructure and the keys will be deleted when the VM is
    # deleted.
    STANDARD_ENCRYPTION = 269_392_453
  end

  # The private IPv6 google access type for VMs.
  # If not specified, use  INHERIT_FROM_SUBNETWORK as default.
  # Note that for MachineImage, this is not supported yet.
  module PrivateIpv6GoogleAccess
    # A value indicating that the enum field is not set.
    UNDEFINED_PRIVATE_IPV6_GOOGLE_ACCESS = 0

    # Bidirectional private IPv6 access to/from Google services. If
    # specified, the subnetwork who is attached to the instance's default network
    # interface will be assigned an internal IPv6 prefix if it doesn't have
    # before.
    ENABLE_BIDIRECTIONAL_ACCESS_TO_GOOGLE = 427_975_994

    # Outbound private IPv6 access from VMs in this subnet to Google services. If
    # specified, the subnetwork who is attached to the instance's default network
    # interface will be assigned an internal IPv6 prefix if it doesn't have
    # before.
    ENABLE_OUTBOUND_VM_ACCESS_TO_GOOGLE = 288_210_263

    # Each network interface inherits PrivateIpv6GoogleAccess from its
    # subnetwork.
    INHERIT_FROM_SUBNETWORK = 530_256_959
  end
end

#key_revocation_action_type ⇒ ::String

Returns KeyRevocationActionType of the instance. Supported options are "STOP" and "NONE". The default value is "NONE" if it is not specified. Check the KeyRevocationActionType enum for the list of possible values.

Returns:

  • (::String) —

    KeyRevocationActionType of the instance. Supported options are "STOP" and "NONE". The default value is "NONE" if it is not specified. Check the KeyRevocationActionType enum for the list of possible values.



35489
35490
35491
35492
35493
35494
35495
35496
35497
35498
35499
35500
35501
35502
35503
35504
35505
35506
35507
35508
35509
35510
35511
35512
35513
35514
35515
35516
35517
35518
35519
35520
35521
35522
35523
35524
35525
35526
35527
35528
35529
35530
35531
35532
35533
35534
35535
35536
35537
35538
35539
35540
35541
35542
35543
35544
35545
35546
35547
35548
35549
35550
35551
35552
35553
35554
35555
35556
35557
35558
35559
35560
35561
35562
35563
35564
35565
35566
35567
35568
35569
35570
35571
35572
35573
# File 'proto_docs/google/cloud/compute/v1/compute.rb', line 35489

class InstanceProperties
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class LabelsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class ResourceManagerTagsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # KeyRevocationActionType of the instance. Supported options are "STOP" and
  # "NONE". The default value is "NONE" if it is not specified.
  module KeyRevocationActionType
    # A value indicating that the enum field is not set.
    UNDEFINED_KEY_REVOCATION_ACTION_TYPE = 0

    # Default value. This value is unused.
    KEY_REVOCATION_ACTION_TYPE_UNSPECIFIED = 467_110_106

    # Indicates user chose no operation.
    NONE = 2_402_104

    # Indicates user chose to opt for VM shutdown on key revocation.
    STOP = 2_555_906
  end

  # Specifies which method should be used for encrypting the
  # Local SSDs attached to the VM.
  module LocalSsdEncryptionMode
    # A value indicating that the enum field is not set.
    UNDEFINED_LOCAL_SSD_ENCRYPTION_MODE = 0

    # The given VM will opt-in for using ephemeral key for
    # encryption of Local SSDs.
    # The Local SSDs will not be able to recover data in case of VM
    # crash.
    EPHEMERAL_KEY_ENCRYPTION = 413_047_941

    # The given VM will be encrypted using keys managed by the cloud
    # infrastructure and the keys will be deleted when the VM is
    # deleted.
    LOCAL_SSD_ENCRYPTION_MODE_UNSPECIFIED = 454_655_720

    # The given VM will be encrypted using keys managed by the cloud
    # infrastructure and the keys will be deleted when the VM is
    # deleted.
    STANDARD_ENCRYPTION = 269_392_453
  end

  # The private IPv6 google access type for VMs.
  # If not specified, use  INHERIT_FROM_SUBNETWORK as default.
  # Note that for MachineImage, this is not supported yet.
  module PrivateIpv6GoogleAccess
    # A value indicating that the enum field is not set.
    UNDEFINED_PRIVATE_IPV6_GOOGLE_ACCESS = 0

    # Bidirectional private IPv6 access to/from Google services. If
    # specified, the subnetwork who is attached to the instance's default network
    # interface will be assigned an internal IPv6 prefix if it doesn't have
    # before.
    ENABLE_BIDIRECTIONAL_ACCESS_TO_GOOGLE = 427_975_994

    # Outbound private IPv6 access from VMs in this subnet to Google services. If
    # specified, the subnetwork who is attached to the instance's default network
    # interface will be assigned an internal IPv6 prefix if it doesn't have
    # before.
    ENABLE_OUTBOUND_VM_ACCESS_TO_GOOGLE = 288_210_263

    # Each network interface inherits PrivateIpv6GoogleAccess from its
    # subnetwork.
    INHERIT_FROM_SUBNETWORK = 530_256_959
  end
end

#labels ⇒ ::Google::Protobuf::Map{::String => ::String}

Returns Labels to apply to instances that are created from these properties.

Returns:

  • (::Google::Protobuf::Map{::String => ::String}) —

    Labels to apply to instances that are created from these properties.



35489
35490
35491
35492
35493
35494
35495
35496
35497
35498
35499
35500
35501
35502
35503
35504
35505
35506
35507
35508
35509
35510
35511
35512
35513
35514
35515
35516
35517
35518
35519
35520
35521
35522
35523
35524
35525
35526
35527
35528
35529
35530
35531
35532
35533
35534
35535
35536
35537
35538
35539
35540
35541
35542
35543
35544
35545
35546
35547
35548
35549
35550
35551
35552
35553
35554
35555
35556
35557
35558
35559
35560
35561
35562
35563
35564
35565
35566
35567
35568
35569
35570
35571
35572
35573
# File 'proto_docs/google/cloud/compute/v1/compute.rb', line 35489

class InstanceProperties
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class LabelsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class ResourceManagerTagsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # KeyRevocationActionType of the instance. Supported options are "STOP" and
  # "NONE". The default value is "NONE" if it is not specified.
  module KeyRevocationActionType
    # A value indicating that the enum field is not set.
    UNDEFINED_KEY_REVOCATION_ACTION_TYPE = 0

    # Default value. This value is unused.
    KEY_REVOCATION_ACTION_TYPE_UNSPECIFIED = 467_110_106

    # Indicates user chose no operation.
    NONE = 2_402_104

    # Indicates user chose to opt for VM shutdown on key revocation.
    STOP = 2_555_906
  end

  # Specifies which method should be used for encrypting the
  # Local SSDs attached to the VM.
  module LocalSsdEncryptionMode
    # A value indicating that the enum field is not set.
    UNDEFINED_LOCAL_SSD_ENCRYPTION_MODE = 0

    # The given VM will opt-in for using ephemeral key for
    # encryption of Local SSDs.
    # The Local SSDs will not be able to recover data in case of VM
    # crash.
    EPHEMERAL_KEY_ENCRYPTION = 413_047_941

    # The given VM will be encrypted using keys managed by the cloud
    # infrastructure and the keys will be deleted when the VM is
    # deleted.
    LOCAL_SSD_ENCRYPTION_MODE_UNSPECIFIED = 454_655_720

    # The given VM will be encrypted using keys managed by the cloud
    # infrastructure and the keys will be deleted when the VM is
    # deleted.
    STANDARD_ENCRYPTION = 269_392_453
  end

  # The private IPv6 google access type for VMs.
  # If not specified, use  INHERIT_FROM_SUBNETWORK as default.
  # Note that for MachineImage, this is not supported yet.
  module PrivateIpv6GoogleAccess
    # A value indicating that the enum field is not set.
    UNDEFINED_PRIVATE_IPV6_GOOGLE_ACCESS = 0

    # Bidirectional private IPv6 access to/from Google services. If
    # specified, the subnetwork who is attached to the instance's default network
    # interface will be assigned an internal IPv6 prefix if it doesn't have
    # before.
    ENABLE_BIDIRECTIONAL_ACCESS_TO_GOOGLE = 427_975_994

    # Outbound private IPv6 access from VMs in this subnet to Google services. If
    # specified, the subnetwork who is attached to the instance's default network
    # interface will be assigned an internal IPv6 prefix if it doesn't have
    # before.
    ENABLE_OUTBOUND_VM_ACCESS_TO_GOOGLE = 288_210_263

    # Each network interface inherits PrivateIpv6GoogleAccess from its
    # subnetwork.
    INHERIT_FROM_SUBNETWORK = 530_256_959
  end
end

#local_ssd_encryption_mode ⇒ ::String

Returns Specifies which method should be used for encrypting the Local SSDs attached to the VM. Check the LocalSsdEncryptionMode enum for the list of possible values.

Returns:

  • (::String) —

    Specifies which method should be used for encrypting the Local SSDs attached to the VM. Check the LocalSsdEncryptionMode enum for the list of possible values.



35489
35490
35491
35492
35493
35494
35495
35496
35497
35498
35499
35500
35501
35502
35503
35504
35505
35506
35507
35508
35509
35510
35511
35512
35513
35514
35515
35516
35517
35518
35519
35520
35521
35522
35523
35524
35525
35526
35527
35528
35529
35530
35531
35532
35533
35534
35535
35536
35537
35538
35539
35540
35541
35542
35543
35544
35545
35546
35547
35548
35549
35550
35551
35552
35553
35554
35555
35556
35557
35558
35559
35560
35561
35562
35563
35564
35565
35566
35567
35568
35569
35570
35571
35572
35573
# File 'proto_docs/google/cloud/compute/v1/compute.rb', line 35489

class InstanceProperties
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class LabelsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class ResourceManagerTagsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # KeyRevocationActionType of the instance. Supported options are "STOP" and
  # "NONE". The default value is "NONE" if it is not specified.
  module KeyRevocationActionType
    # A value indicating that the enum field is not set.
    UNDEFINED_KEY_REVOCATION_ACTION_TYPE = 0

    # Default value. This value is unused.
    KEY_REVOCATION_ACTION_TYPE_UNSPECIFIED = 467_110_106

    # Indicates user chose no operation.
    NONE = 2_402_104

    # Indicates user chose to opt for VM shutdown on key revocation.
    STOP = 2_555_906
  end

  # Specifies which method should be used for encrypting the
  # Local SSDs attached to the VM.
  module LocalSsdEncryptionMode
    # A value indicating that the enum field is not set.
    UNDEFINED_LOCAL_SSD_ENCRYPTION_MODE = 0

    # The given VM will opt-in for using ephemeral key for
    # encryption of Local SSDs.
    # The Local SSDs will not be able to recover data in case of VM
    # crash.
    EPHEMERAL_KEY_ENCRYPTION = 413_047_941

    # The given VM will be encrypted using keys managed by the cloud
    # infrastructure and the keys will be deleted when the VM is
    # deleted.
    LOCAL_SSD_ENCRYPTION_MODE_UNSPECIFIED = 454_655_720

    # The given VM will be encrypted using keys managed by the cloud
    # infrastructure and the keys will be deleted when the VM is
    # deleted.
    STANDARD_ENCRYPTION = 269_392_453
  end

  # The private IPv6 google access type for VMs.
  # If not specified, use  INHERIT_FROM_SUBNETWORK as default.
  # Note that for MachineImage, this is not supported yet.
  module PrivateIpv6GoogleAccess
    # A value indicating that the enum field is not set.
    UNDEFINED_PRIVATE_IPV6_GOOGLE_ACCESS = 0

    # Bidirectional private IPv6 access to/from Google services. If
    # specified, the subnetwork who is attached to the instance's default network
    # interface will be assigned an internal IPv6 prefix if it doesn't have
    # before.
    ENABLE_BIDIRECTIONAL_ACCESS_TO_GOOGLE = 427_975_994

    # Outbound private IPv6 access from VMs in this subnet to Google services. If
    # specified, the subnetwork who is attached to the instance's default network
    # interface will be assigned an internal IPv6 prefix if it doesn't have
    # before.
    ENABLE_OUTBOUND_VM_ACCESS_TO_GOOGLE = 288_210_263

    # Each network interface inherits PrivateIpv6GoogleAccess from its
    # subnetwork.
    INHERIT_FROM_SUBNETWORK = 530_256_959
  end
end

#machine_type ⇒ ::String

Returns The machine type to use for instances that are created from these properties. This field only accepts a machine type name, for example n2-standard-4. If you use the machine type full or partial URL, for example projects/my-l7ilb-project/zones/us-central1-a/machineTypes/n2-standard-4, the request will result in an INTERNAL_ERROR.

Returns:

  • (::String) —

    The machine type to use for instances that are created from these properties. This field only accepts a machine type name, for example n2-standard-4. If you use the machine type full or partial URL, for example projects/my-l7ilb-project/zones/us-central1-a/machineTypes/n2-standard-4, the request will result in an INTERNAL_ERROR.



35489
35490
35491
35492
35493
35494
35495
35496
35497
35498
35499
35500
35501
35502
35503
35504
35505
35506
35507
35508
35509
35510
35511
35512
35513
35514
35515
35516
35517
35518
35519
35520
35521
35522
35523
35524
35525
35526
35527
35528
35529
35530
35531
35532
35533
35534
35535
35536
35537
35538
35539
35540
35541
35542
35543
35544
35545
35546
35547
35548
35549
35550
35551
35552
35553
35554
35555
35556
35557
35558
35559
35560
35561
35562
35563
35564
35565
35566
35567
35568
35569
35570
35571
35572
35573
# File 'proto_docs/google/cloud/compute/v1/compute.rb', line 35489

class InstanceProperties
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class LabelsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class ResourceManagerTagsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # KeyRevocationActionType of the instance. Supported options are "STOP" and
  # "NONE". The default value is "NONE" if it is not specified.
  module KeyRevocationActionType
    # A value indicating that the enum field is not set.
    UNDEFINED_KEY_REVOCATION_ACTION_TYPE = 0

    # Default value. This value is unused.
    KEY_REVOCATION_ACTION_TYPE_UNSPECIFIED = 467_110_106

    # Indicates user chose no operation.
    NONE = 2_402_104

    # Indicates user chose to opt for VM shutdown on key revocation.
    STOP = 2_555_906
  end

  # Specifies which method should be used for encrypting the
  # Local SSDs attached to the VM.
  module LocalSsdEncryptionMode
    # A value indicating that the enum field is not set.
    UNDEFINED_LOCAL_SSD_ENCRYPTION_MODE = 0

    # The given VM will opt-in for using ephemeral key for
    # encryption of Local SSDs.
    # The Local SSDs will not be able to recover data in case of VM
    # crash.
    EPHEMERAL_KEY_ENCRYPTION = 413_047_941

    # The given VM will be encrypted using keys managed by the cloud
    # infrastructure and the keys will be deleted when the VM is
    # deleted.
    LOCAL_SSD_ENCRYPTION_MODE_UNSPECIFIED = 454_655_720

    # The given VM will be encrypted using keys managed by the cloud
    # infrastructure and the keys will be deleted when the VM is
    # deleted.
    STANDARD_ENCRYPTION = 269_392_453
  end

  # The private IPv6 google access type for VMs.
  # If not specified, use  INHERIT_FROM_SUBNETWORK as default.
  # Note that for MachineImage, this is not supported yet.
  module PrivateIpv6GoogleAccess
    # A value indicating that the enum field is not set.
    UNDEFINED_PRIVATE_IPV6_GOOGLE_ACCESS = 0

    # Bidirectional private IPv6 access to/from Google services. If
    # specified, the subnetwork who is attached to the instance's default network
    # interface will be assigned an internal IPv6 prefix if it doesn't have
    # before.
    ENABLE_BIDIRECTIONAL_ACCESS_TO_GOOGLE = 427_975_994

    # Outbound private IPv6 access from VMs in this subnet to Google services. If
    # specified, the subnetwork who is attached to the instance's default network
    # interface will be assigned an internal IPv6 prefix if it doesn't have
    # before.
    ENABLE_OUTBOUND_VM_ACCESS_TO_GOOGLE = 288_210_263

    # Each network interface inherits PrivateIpv6GoogleAccess from its
    # subnetwork.
    INHERIT_FROM_SUBNETWORK = 530_256_959
  end
end

#metadata ⇒ ::Google::Cloud::Compute::V1::Metadata

Returns The metadata key/value pairs to assign to instances that are created from these properties. These pairs can consist of custom metadata or predefined keys. SeeProject and instance metadata for more information.

Returns:

  • (::Google::Cloud::Compute::V1::Metadata) —

    The metadata key/value pairs to assign to instances that are created from these properties. These pairs can consist of custom metadata or predefined keys. SeeProject and instance metadata for more information.



35489
35490
35491
35492
35493
35494
35495
35496
35497
35498
35499
35500
35501
35502
35503
35504
35505
35506
35507
35508
35509
35510
35511
35512
35513
35514
35515
35516
35517
35518
35519
35520
35521
35522
35523
35524
35525
35526
35527
35528
35529
35530
35531
35532
35533
35534
35535
35536
35537
35538
35539
35540
35541
35542
35543
35544
35545
35546
35547
35548
35549
35550
35551
35552
35553
35554
35555
35556
35557
35558
35559
35560
35561
35562
35563
35564
35565
35566
35567
35568
35569
35570
35571
35572
35573
# File 'proto_docs/google/cloud/compute/v1/compute.rb', line 35489

class InstanceProperties
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class LabelsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class ResourceManagerTagsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # KeyRevocationActionType of the instance. Supported options are "STOP" and
  # "NONE". The default value is "NONE" if it is not specified.
  module KeyRevocationActionType
    # A value indicating that the enum field is not set.
    UNDEFINED_KEY_REVOCATION_ACTION_TYPE = 0

    # Default value. This value is unused.
    KEY_REVOCATION_ACTION_TYPE_UNSPECIFIED = 467_110_106

    # Indicates user chose no operation.
    NONE = 2_402_104

    # Indicates user chose to opt for VM shutdown on key revocation.
    STOP = 2_555_906
  end

  # Specifies which method should be used for encrypting the
  # Local SSDs attached to the VM.
  module LocalSsdEncryptionMode
    # A value indicating that the enum field is not set.
    UNDEFINED_LOCAL_SSD_ENCRYPTION_MODE = 0

    # The given VM will opt-in for using ephemeral key for
    # encryption of Local SSDs.
    # The Local SSDs will not be able to recover data in case of VM
    # crash.
    EPHEMERAL_KEY_ENCRYPTION = 413_047_941

    # The given VM will be encrypted using keys managed by the cloud
    # infrastructure and the keys will be deleted when the VM is
    # deleted.
    LOCAL_SSD_ENCRYPTION_MODE_UNSPECIFIED = 454_655_720

    # The given VM will be encrypted using keys managed by the cloud
    # infrastructure and the keys will be deleted when the VM is
    # deleted.
    STANDARD_ENCRYPTION = 269_392_453
  end

  # The private IPv6 google access type for VMs.
  # If not specified, use  INHERIT_FROM_SUBNETWORK as default.
  # Note that for MachineImage, this is not supported yet.
  module PrivateIpv6GoogleAccess
    # A value indicating that the enum field is not set.
    UNDEFINED_PRIVATE_IPV6_GOOGLE_ACCESS = 0

    # Bidirectional private IPv6 access to/from Google services. If
    # specified, the subnetwork who is attached to the instance's default network
    # interface will be assigned an internal IPv6 prefix if it doesn't have
    # before.
    ENABLE_BIDIRECTIONAL_ACCESS_TO_GOOGLE = 427_975_994

    # Outbound private IPv6 access from VMs in this subnet to Google services. If
    # specified, the subnetwork who is attached to the instance's default network
    # interface will be assigned an internal IPv6 prefix if it doesn't have
    # before.
    ENABLE_OUTBOUND_VM_ACCESS_TO_GOOGLE = 288_210_263

    # Each network interface inherits PrivateIpv6GoogleAccess from its
    # subnetwork.
    INHERIT_FROM_SUBNETWORK = 530_256_959
  end
end

#min_cpu_platform ⇒ ::String

Returns Minimum cpu/platform to be used by instances. The instance may be scheduled on the specified or newer cpu/platform. Applicable values are the friendly names of CPU platforms, such asminCpuPlatform: "Intel Haswell" orminCpuPlatform: "Intel Sandy Bridge". For more information, read Specifying a Minimum CPU Platform.

Returns:

  • (::String) —

    Minimum cpu/platform to be used by instances. The instance may be scheduled on the specified or newer cpu/platform. Applicable values are the friendly names of CPU platforms, such asminCpuPlatform: "Intel Haswell" orminCpuPlatform: "Intel Sandy Bridge". For more information, read Specifying a Minimum CPU Platform.



35489
35490
35491
35492
35493
35494
35495
35496
35497
35498
35499
35500
35501
35502
35503
35504
35505
35506
35507
35508
35509
35510
35511
35512
35513
35514
35515
35516
35517
35518
35519
35520
35521
35522
35523
35524
35525
35526
35527
35528
35529
35530
35531
35532
35533
35534
35535
35536
35537
35538
35539
35540
35541
35542
35543
35544
35545
35546
35547
35548
35549
35550
35551
35552
35553
35554
35555
35556
35557
35558
35559
35560
35561
35562
35563
35564
35565
35566
35567
35568
35569
35570
35571
35572
35573
# File 'proto_docs/google/cloud/compute/v1/compute.rb', line 35489

class InstanceProperties
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class LabelsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class ResourceManagerTagsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # KeyRevocationActionType of the instance. Supported options are "STOP" and
  # "NONE". The default value is "NONE" if it is not specified.
  module KeyRevocationActionType
    # A value indicating that the enum field is not set.
    UNDEFINED_KEY_REVOCATION_ACTION_TYPE = 0

    # Default value. This value is unused.
    KEY_REVOCATION_ACTION_TYPE_UNSPECIFIED = 467_110_106

    # Indicates user chose no operation.
    NONE = 2_402_104

    # Indicates user chose to opt for VM shutdown on key revocation.
    STOP = 2_555_906
  end

  # Specifies which method should be used for encrypting the
  # Local SSDs attached to the VM.
  module LocalSsdEncryptionMode
    # A value indicating that the enum field is not set.
    UNDEFINED_LOCAL_SSD_ENCRYPTION_MODE = 0

    # The given VM will opt-in for using ephemeral key for
    # encryption of Local SSDs.
    # The Local SSDs will not be able to recover data in case of VM
    # crash.
    EPHEMERAL_KEY_ENCRYPTION = 413_047_941

    # The given VM will be encrypted using keys managed by the cloud
    # infrastructure and the keys will be deleted when the VM is
    # deleted.
    LOCAL_SSD_ENCRYPTION_MODE_UNSPECIFIED = 454_655_720

    # The given VM will be encrypted using keys managed by the cloud
    # infrastructure and the keys will be deleted when the VM is
    # deleted.
    STANDARD_ENCRYPTION = 269_392_453
  end

  # The private IPv6 google access type for VMs.
  # If not specified, use  INHERIT_FROM_SUBNETWORK as default.
  # Note that for MachineImage, this is not supported yet.
  module PrivateIpv6GoogleAccess
    # A value indicating that the enum field is not set.
    UNDEFINED_PRIVATE_IPV6_GOOGLE_ACCESS = 0

    # Bidirectional private IPv6 access to/from Google services. If
    # specified, the subnetwork who is attached to the instance's default network
    # interface will be assigned an internal IPv6 prefix if it doesn't have
    # before.
    ENABLE_BIDIRECTIONAL_ACCESS_TO_GOOGLE = 427_975_994

    # Outbound private IPv6 access from VMs in this subnet to Google services. If
    # specified, the subnetwork who is attached to the instance's default network
    # interface will be assigned an internal IPv6 prefix if it doesn't have
    # before.
    ENABLE_OUTBOUND_VM_ACCESS_TO_GOOGLE = 288_210_263

    # Each network interface inherits PrivateIpv6GoogleAccess from its
    # subnetwork.
    INHERIT_FROM_SUBNETWORK = 530_256_959
  end
end

#network_interfaces ⇒ ::Array<::Google::Cloud::Compute::V1::NetworkInterface>

Returns An array of network access configurations for this interface.

Returns:



35489
35490
35491
35492
35493
35494
35495
35496
35497
35498
35499
35500
35501
35502
35503
35504
35505
35506
35507
35508
35509
35510
35511
35512
35513
35514
35515
35516
35517
35518
35519
35520
35521
35522
35523
35524
35525
35526
35527
35528
35529
35530
35531
35532
35533
35534
35535
35536
35537
35538
35539
35540
35541
35542
35543
35544
35545
35546
35547
35548
35549
35550
35551
35552
35553
35554
35555
35556
35557
35558
35559
35560
35561
35562
35563
35564
35565
35566
35567
35568
35569
35570
35571
35572
35573
# File 'proto_docs/google/cloud/compute/v1/compute.rb', line 35489

class InstanceProperties
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class LabelsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class ResourceManagerTagsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # KeyRevocationActionType of the instance. Supported options are "STOP" and
  # "NONE". The default value is "NONE" if it is not specified.
  module KeyRevocationActionType
    # A value indicating that the enum field is not set.
    UNDEFINED_KEY_REVOCATION_ACTION_TYPE = 0

    # Default value. This value is unused.
    KEY_REVOCATION_ACTION_TYPE_UNSPECIFIED = 467_110_106

    # Indicates user chose no operation.
    NONE = 2_402_104

    # Indicates user chose to opt for VM shutdown on key revocation.
    STOP = 2_555_906
  end

  # Specifies which method should be used for encrypting the
  # Local SSDs attached to the VM.
  module LocalSsdEncryptionMode
    # A value indicating that the enum field is not set.
    UNDEFINED_LOCAL_SSD_ENCRYPTION_MODE = 0

    # The given VM will opt-in for using ephemeral key for
    # encryption of Local SSDs.
    # The Local SSDs will not be able to recover data in case of VM
    # crash.
    EPHEMERAL_KEY_ENCRYPTION = 413_047_941

    # The given VM will be encrypted using keys managed by the cloud
    # infrastructure and the keys will be deleted when the VM is
    # deleted.
    LOCAL_SSD_ENCRYPTION_MODE_UNSPECIFIED = 454_655_720

    # The given VM will be encrypted using keys managed by the cloud
    # infrastructure and the keys will be deleted when the VM is
    # deleted.
    STANDARD_ENCRYPTION = 269_392_453
  end

  # The private IPv6 google access type for VMs.
  # If not specified, use  INHERIT_FROM_SUBNETWORK as default.
  # Note that for MachineImage, this is not supported yet.
  module PrivateIpv6GoogleAccess
    # A value indicating that the enum field is not set.
    UNDEFINED_PRIVATE_IPV6_GOOGLE_ACCESS = 0

    # Bidirectional private IPv6 access to/from Google services. If
    # specified, the subnetwork who is attached to the instance's default network
    # interface will be assigned an internal IPv6 prefix if it doesn't have
    # before.
    ENABLE_BIDIRECTIONAL_ACCESS_TO_GOOGLE = 427_975_994

    # Outbound private IPv6 access from VMs in this subnet to Google services. If
    # specified, the subnetwork who is attached to the instance's default network
    # interface will be assigned an internal IPv6 prefix if it doesn't have
    # before.
    ENABLE_OUTBOUND_VM_ACCESS_TO_GOOGLE = 288_210_263

    # Each network interface inherits PrivateIpv6GoogleAccess from its
    # subnetwork.
    INHERIT_FROM_SUBNETWORK = 530_256_959
  end
end

#network_performance_config ⇒ ::Google::Cloud::Compute::V1::NetworkPerformanceConfig

Returns Note that for MachineImage, this is not supported yet.

Returns:



35489
35490
35491
35492
35493
35494
35495
35496
35497
35498
35499
35500
35501
35502
35503
35504
35505
35506
35507
35508
35509
35510
35511
35512
35513
35514
35515
35516
35517
35518
35519
35520
35521
35522
35523
35524
35525
35526
35527
35528
35529
35530
35531
35532
35533
35534
35535
35536
35537
35538
35539
35540
35541
35542
35543
35544
35545
35546
35547
35548
35549
35550
35551
35552
35553
35554
35555
35556
35557
35558
35559
35560
35561
35562
35563
35564
35565
35566
35567
35568
35569
35570
35571
35572
35573
# File 'proto_docs/google/cloud/compute/v1/compute.rb', line 35489

class InstanceProperties
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class LabelsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class ResourceManagerTagsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # KeyRevocationActionType of the instance. Supported options are "STOP" and
  # "NONE". The default value is "NONE" if it is not specified.
  module KeyRevocationActionType
    # A value indicating that the enum field is not set.
    UNDEFINED_KEY_REVOCATION_ACTION_TYPE = 0

    # Default value. This value is unused.
    KEY_REVOCATION_ACTION_TYPE_UNSPECIFIED = 467_110_106

    # Indicates user chose no operation.
    NONE = 2_402_104

    # Indicates user chose to opt for VM shutdown on key revocation.
    STOP = 2_555_906
  end

  # Specifies which method should be used for encrypting the
  # Local SSDs attached to the VM.
  module LocalSsdEncryptionMode
    # A value indicating that the enum field is not set.
    UNDEFINED_LOCAL_SSD_ENCRYPTION_MODE = 0

    # The given VM will opt-in for using ephemeral key for
    # encryption of Local SSDs.
    # The Local SSDs will not be able to recover data in case of VM
    # crash.
    EPHEMERAL_KEY_ENCRYPTION = 413_047_941

    # The given VM will be encrypted using keys managed by the cloud
    # infrastructure and the keys will be deleted when the VM is
    # deleted.
    LOCAL_SSD_ENCRYPTION_MODE_UNSPECIFIED = 454_655_720

    # The given VM will be encrypted using keys managed by the cloud
    # infrastructure and the keys will be deleted when the VM is
    # deleted.
    STANDARD_ENCRYPTION = 269_392_453
  end

  # The private IPv6 google access type for VMs.
  # If not specified, use  INHERIT_FROM_SUBNETWORK as default.
  # Note that for MachineImage, this is not supported yet.
  module PrivateIpv6GoogleAccess
    # A value indicating that the enum field is not set.
    UNDEFINED_PRIVATE_IPV6_GOOGLE_ACCESS = 0

    # Bidirectional private IPv6 access to/from Google services. If
    # specified, the subnetwork who is attached to the instance's default network
    # interface will be assigned an internal IPv6 prefix if it doesn't have
    # before.
    ENABLE_BIDIRECTIONAL_ACCESS_TO_GOOGLE = 427_975_994

    # Outbound private IPv6 access from VMs in this subnet to Google services. If
    # specified, the subnetwork who is attached to the instance's default network
    # interface will be assigned an internal IPv6 prefix if it doesn't have
    # before.
    ENABLE_OUTBOUND_VM_ACCESS_TO_GOOGLE = 288_210_263

    # Each network interface inherits PrivateIpv6GoogleAccess from its
    # subnetwork.
    INHERIT_FROM_SUBNETWORK = 530_256_959
  end
end

#private_ipv6_google_access ⇒ ::String

Returns The private IPv6 google access type for VMs. If not specified, use INHERIT_FROM_SUBNETWORK as default. Note that for MachineImage, this is not supported yet. Check the PrivateIpv6GoogleAccess enum for the list of possible values.

Returns:

  • (::String) —

    The private IPv6 google access type for VMs. If not specified, use INHERIT_FROM_SUBNETWORK as default. Note that for MachineImage, this is not supported yet. Check the PrivateIpv6GoogleAccess enum for the list of possible values.



35489
35490
35491
35492
35493
35494
35495
35496
35497
35498
35499
35500
35501
35502
35503
35504
35505
35506
35507
35508
35509
35510
35511
35512
35513
35514
35515
35516
35517
35518
35519
35520
35521
35522
35523
35524
35525
35526
35527
35528
35529
35530
35531
35532
35533
35534
35535
35536
35537
35538
35539
35540
35541
35542
35543
35544
35545
35546
35547
35548
35549
35550
35551
35552
35553
35554
35555
35556
35557
35558
35559
35560
35561
35562
35563
35564
35565
35566
35567
35568
35569
35570
35571
35572
35573
# File 'proto_docs/google/cloud/compute/v1/compute.rb', line 35489

class InstanceProperties
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class LabelsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class ResourceManagerTagsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # KeyRevocationActionType of the instance. Supported options are "STOP" and
  # "NONE". The default value is "NONE" if it is not specified.
  module KeyRevocationActionType
    # A value indicating that the enum field is not set.
    UNDEFINED_KEY_REVOCATION_ACTION_TYPE = 0

    # Default value. This value is unused.
    KEY_REVOCATION_ACTION_TYPE_UNSPECIFIED = 467_110_106

    # Indicates user chose no operation.
    NONE = 2_402_104

    # Indicates user chose to opt for VM shutdown on key revocation.
    STOP = 2_555_906
  end

  # Specifies which method should be used for encrypting the
  # Local SSDs attached to the VM.
  module LocalSsdEncryptionMode
    # A value indicating that the enum field is not set.
    UNDEFINED_LOCAL_SSD_ENCRYPTION_MODE = 0

    # The given VM will opt-in for using ephemeral key for
    # encryption of Local SSDs.
    # The Local SSDs will not be able to recover data in case of VM
    # crash.
    EPHEMERAL_KEY_ENCRYPTION = 413_047_941

    # The given VM will be encrypted using keys managed by the cloud
    # infrastructure and the keys will be deleted when the VM is
    # deleted.
    LOCAL_SSD_ENCRYPTION_MODE_UNSPECIFIED = 454_655_720

    # The given VM will be encrypted using keys managed by the cloud
    # infrastructure and the keys will be deleted when the VM is
    # deleted.
    STANDARD_ENCRYPTION = 269_392_453
  end

  # The private IPv6 google access type for VMs.
  # If not specified, use  INHERIT_FROM_SUBNETWORK as default.
  # Note that for MachineImage, this is not supported yet.
  module PrivateIpv6GoogleAccess
    # A value indicating that the enum field is not set.
    UNDEFINED_PRIVATE_IPV6_GOOGLE_ACCESS = 0

    # Bidirectional private IPv6 access to/from Google services. If
    # specified, the subnetwork who is attached to the instance's default network
    # interface will be assigned an internal IPv6 prefix if it doesn't have
    # before.
    ENABLE_BIDIRECTIONAL_ACCESS_TO_GOOGLE = 427_975_994

    # Outbound private IPv6 access from VMs in this subnet to Google services. If
    # specified, the subnetwork who is attached to the instance's default network
    # interface will be assigned an internal IPv6 prefix if it doesn't have
    # before.
    ENABLE_OUTBOUND_VM_ACCESS_TO_GOOGLE = 288_210_263

    # Each network interface inherits PrivateIpv6GoogleAccess from its
    # subnetwork.
    INHERIT_FROM_SUBNETWORK = 530_256_959
  end
end

#reservation_affinity ⇒ ::Google::Cloud::Compute::V1::ReservationAffinity

Returns Specifies the reservations that instances can consume from. Note that for MachineImage, this is not supported yet.

Returns:



35489
35490
35491
35492
35493
35494
35495
35496
35497
35498
35499
35500
35501
35502
35503
35504
35505
35506
35507
35508
35509
35510
35511
35512
35513
35514
35515
35516
35517
35518
35519
35520
35521
35522
35523
35524
35525
35526
35527
35528
35529
35530
35531
35532
35533
35534
35535
35536
35537
35538
35539
35540
35541
35542
35543
35544
35545
35546
35547
35548
35549
35550
35551
35552
35553
35554
35555
35556
35557
35558
35559
35560
35561
35562
35563
35564
35565
35566
35567
35568
35569
35570
35571
35572
35573
# File 'proto_docs/google/cloud/compute/v1/compute.rb', line 35489

class InstanceProperties
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class LabelsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class ResourceManagerTagsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # KeyRevocationActionType of the instance. Supported options are "STOP" and
  # "NONE". The default value is "NONE" if it is not specified.
  module KeyRevocationActionType
    # A value indicating that the enum field is not set.
    UNDEFINED_KEY_REVOCATION_ACTION_TYPE = 0

    # Default value. This value is unused.
    KEY_REVOCATION_ACTION_TYPE_UNSPECIFIED = 467_110_106

    # Indicates user chose no operation.
    NONE = 2_402_104

    # Indicates user chose to opt for VM shutdown on key revocation.
    STOP = 2_555_906
  end

  # Specifies which method should be used for encrypting the
  # Local SSDs attached to the VM.
  module LocalSsdEncryptionMode
    # A value indicating that the enum field is not set.
    UNDEFINED_LOCAL_SSD_ENCRYPTION_MODE = 0

    # The given VM will opt-in for using ephemeral key for
    # encryption of Local SSDs.
    # The Local SSDs will not be able to recover data in case of VM
    # crash.
    EPHEMERAL_KEY_ENCRYPTION = 413_047_941

    # The given VM will be encrypted using keys managed by the cloud
    # infrastructure and the keys will be deleted when the VM is
    # deleted.
    LOCAL_SSD_ENCRYPTION_MODE_UNSPECIFIED = 454_655_720

    # The given VM will be encrypted using keys managed by the cloud
    # infrastructure and the keys will be deleted when the VM is
    # deleted.
    STANDARD_ENCRYPTION = 269_392_453
  end

  # The private IPv6 google access type for VMs.
  # If not specified, use  INHERIT_FROM_SUBNETWORK as default.
  # Note that for MachineImage, this is not supported yet.
  module PrivateIpv6GoogleAccess
    # A value indicating that the enum field is not set.
    UNDEFINED_PRIVATE_IPV6_GOOGLE_ACCESS = 0

    # Bidirectional private IPv6 access to/from Google services. If
    # specified, the subnetwork who is attached to the instance's default network
    # interface will be assigned an internal IPv6 prefix if it doesn't have
    # before.
    ENABLE_BIDIRECTIONAL_ACCESS_TO_GOOGLE = 427_975_994

    # Outbound private IPv6 access from VMs in this subnet to Google services. If
    # specified, the subnetwork who is attached to the instance's default network
    # interface will be assigned an internal IPv6 prefix if it doesn't have
    # before.
    ENABLE_OUTBOUND_VM_ACCESS_TO_GOOGLE = 288_210_263

    # Each network interface inherits PrivateIpv6GoogleAccess from its
    # subnetwork.
    INHERIT_FROM_SUBNETWORK = 530_256_959
  end
end

#resource_manager_tags ⇒ ::Google::Protobuf::Map{::String => ::String}

Returns Input only. Resource manager tags to be bound to the instance. Tag keys and values have the same definition as resource manager tags. Keys and values can be either in numeric format, such as tagKeys/{tag_key_id} and tagValues/{tag_value_id} or in namespaced format such as {org_id|project_id}/{tag_key_short_name} and {tag_value_short_name}. The field is ignored (both PUT & PATCH) when empty.

Returns:

  • (::Google::Protobuf::Map{::String => ::String}) —

    Input only. Resource manager tags to be bound to the instance. Tag keys and values have the same definition as resource manager tags. Keys and values can be either in numeric format, such as tagKeys/{tag_key_id} and tagValues/{tag_value_id} or in namespaced format such as {org_id|project_id}/{tag_key_short_name} and {tag_value_short_name}. The field is ignored (both PUT & PATCH) when empty.



35489
35490
35491
35492
35493
35494
35495
35496
35497
35498
35499
35500
35501
35502
35503
35504
35505
35506
35507
35508
35509
35510
35511
35512
35513
35514
35515
35516
35517
35518
35519
35520
35521
35522
35523
35524
35525
35526
35527
35528
35529
35530
35531
35532
35533
35534
35535
35536
35537
35538
35539
35540
35541
35542
35543
35544
35545
35546
35547
35548
35549
35550
35551
35552
35553
35554
35555
35556
35557
35558
35559
35560
35561
35562
35563
35564
35565
35566
35567
35568
35569
35570
35571
35572
35573
# File 'proto_docs/google/cloud/compute/v1/compute.rb', line 35489

class InstanceProperties
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class LabelsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class ResourceManagerTagsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # KeyRevocationActionType of the instance. Supported options are "STOP" and
  # "NONE". The default value is "NONE" if it is not specified.
  module KeyRevocationActionType
    # A value indicating that the enum field is not set.
    UNDEFINED_KEY_REVOCATION_ACTION_TYPE = 0

    # Default value. This value is unused.
    KEY_REVOCATION_ACTION_TYPE_UNSPECIFIED = 467_110_106

    # Indicates user chose no operation.
    NONE = 2_402_104

    # Indicates user chose to opt for VM shutdown on key revocation.
    STOP = 2_555_906
  end

  # Specifies which method should be used for encrypting the
  # Local SSDs attached to the VM.
  module LocalSsdEncryptionMode
    # A value indicating that the enum field is not set.
    UNDEFINED_LOCAL_SSD_ENCRYPTION_MODE = 0

    # The given VM will opt-in for using ephemeral key for
    # encryption of Local SSDs.
    # The Local SSDs will not be able to recover data in case of VM
    # crash.
    EPHEMERAL_KEY_ENCRYPTION = 413_047_941

    # The given VM will be encrypted using keys managed by the cloud
    # infrastructure and the keys will be deleted when the VM is
    # deleted.
    LOCAL_SSD_ENCRYPTION_MODE_UNSPECIFIED = 454_655_720

    # The given VM will be encrypted using keys managed by the cloud
    # infrastructure and the keys will be deleted when the VM is
    # deleted.
    STANDARD_ENCRYPTION = 269_392_453
  end

  # The private IPv6 google access type for VMs.
  # If not specified, use  INHERIT_FROM_SUBNETWORK as default.
  # Note that for MachineImage, this is not supported yet.
  module PrivateIpv6GoogleAccess
    # A value indicating that the enum field is not set.
    UNDEFINED_PRIVATE_IPV6_GOOGLE_ACCESS = 0

    # Bidirectional private IPv6 access to/from Google services. If
    # specified, the subnetwork who is attached to the instance's default network
    # interface will be assigned an internal IPv6 prefix if it doesn't have
    # before.
    ENABLE_BIDIRECTIONAL_ACCESS_TO_GOOGLE = 427_975_994

    # Outbound private IPv6 access from VMs in this subnet to Google services. If
    # specified, the subnetwork who is attached to the instance's default network
    # interface will be assigned an internal IPv6 prefix if it doesn't have
    # before.
    ENABLE_OUTBOUND_VM_ACCESS_TO_GOOGLE = 288_210_263

    # Each network interface inherits PrivateIpv6GoogleAccess from its
    # subnetwork.
    INHERIT_FROM_SUBNETWORK = 530_256_959
  end
end

#resource_policies ⇒ ::Array<::String>

Returns Resource policies (names, not URLs) applied to instances created from these properties. Note that for MachineImage, this is not supported yet.

Returns:

  • (::Array<::String>) —

    Resource policies (names, not URLs) applied to instances created from these properties. Note that for MachineImage, this is not supported yet.



35489
35490
35491
35492
35493
35494
35495
35496
35497
35498
35499
35500
35501
35502
35503
35504
35505
35506
35507
35508
35509
35510
35511
35512
35513
35514
35515
35516
35517
35518
35519
35520
35521
35522
35523
35524
35525
35526
35527
35528
35529
35530
35531
35532
35533
35534
35535
35536
35537
35538
35539
35540
35541
35542
35543
35544
35545
35546
35547
35548
35549
35550
35551
35552
35553
35554
35555
35556
35557
35558
35559
35560
35561
35562
35563
35564
35565
35566
35567
35568
35569
35570
35571
35572
35573
# File 'proto_docs/google/cloud/compute/v1/compute.rb', line 35489

class InstanceProperties
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class LabelsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class ResourceManagerTagsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # KeyRevocationActionType of the instance. Supported options are "STOP" and
  # "NONE". The default value is "NONE" if it is not specified.
  module KeyRevocationActionType
    # A value indicating that the enum field is not set.
    UNDEFINED_KEY_REVOCATION_ACTION_TYPE = 0

    # Default value. This value is unused.
    KEY_REVOCATION_ACTION_TYPE_UNSPECIFIED = 467_110_106

    # Indicates user chose no operation.
    NONE = 2_402_104

    # Indicates user chose to opt for VM shutdown on key revocation.
    STOP = 2_555_906
  end

  # Specifies which method should be used for encrypting the
  # Local SSDs attached to the VM.
  module LocalSsdEncryptionMode
    # A value indicating that the enum field is not set.
    UNDEFINED_LOCAL_SSD_ENCRYPTION_MODE = 0

    # The given VM will opt-in for using ephemeral key for
    # encryption of Local SSDs.
    # The Local SSDs will not be able to recover data in case of VM
    # crash.
    EPHEMERAL_KEY_ENCRYPTION = 413_047_941

    # The given VM will be encrypted using keys managed by the cloud
    # infrastructure and the keys will be deleted when the VM is
    # deleted.
    LOCAL_SSD_ENCRYPTION_MODE_UNSPECIFIED = 454_655_720

    # The given VM will be encrypted using keys managed by the cloud
    # infrastructure and the keys will be deleted when the VM is
    # deleted.
    STANDARD_ENCRYPTION = 269_392_453
  end

  # The private IPv6 google access type for VMs.
  # If not specified, use  INHERIT_FROM_SUBNETWORK as default.
  # Note that for MachineImage, this is not supported yet.
  module PrivateIpv6GoogleAccess
    # A value indicating that the enum field is not set.
    UNDEFINED_PRIVATE_IPV6_GOOGLE_ACCESS = 0

    # Bidirectional private IPv6 access to/from Google services. If
    # specified, the subnetwork who is attached to the instance's default network
    # interface will be assigned an internal IPv6 prefix if it doesn't have
    # before.
    ENABLE_BIDIRECTIONAL_ACCESS_TO_GOOGLE = 427_975_994

    # Outbound private IPv6 access from VMs in this subnet to Google services. If
    # specified, the subnetwork who is attached to the instance's default network
    # interface will be assigned an internal IPv6 prefix if it doesn't have
    # before.
    ENABLE_OUTBOUND_VM_ACCESS_TO_GOOGLE = 288_210_263

    # Each network interface inherits PrivateIpv6GoogleAccess from its
    # subnetwork.
    INHERIT_FROM_SUBNETWORK = 530_256_959
  end
end

#scheduling ⇒ ::Google::Cloud::Compute::V1::Scheduling

Returns Specifies the scheduling options for the instances that are created from these properties.

Returns:



35489
35490
35491
35492
35493
35494
35495
35496
35497
35498
35499
35500
35501
35502
35503
35504
35505
35506
35507
35508
35509
35510
35511
35512
35513
35514
35515
35516
35517
35518
35519
35520
35521
35522
35523
35524
35525
35526
35527
35528
35529
35530
35531
35532
35533
35534
35535
35536
35537
35538
35539
35540
35541
35542
35543
35544
35545
35546
35547
35548
35549
35550
35551
35552
35553
35554
35555
35556
35557
35558
35559
35560
35561
35562
35563
35564
35565
35566
35567
35568
35569
35570
35571
35572
35573
# File 'proto_docs/google/cloud/compute/v1/compute.rb', line 35489

class InstanceProperties
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class LabelsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class ResourceManagerTagsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # KeyRevocationActionType of the instance. Supported options are "STOP" and
  # "NONE". The default value is "NONE" if it is not specified.
  module KeyRevocationActionType
    # A value indicating that the enum field is not set.
    UNDEFINED_KEY_REVOCATION_ACTION_TYPE = 0

    # Default value. This value is unused.
    KEY_REVOCATION_ACTION_TYPE_UNSPECIFIED = 467_110_106

    # Indicates user chose no operation.
    NONE = 2_402_104

    # Indicates user chose to opt for VM shutdown on key revocation.
    STOP = 2_555_906
  end

  # Specifies which method should be used for encrypting the
  # Local SSDs attached to the VM.
  module LocalSsdEncryptionMode
    # A value indicating that the enum field is not set.
    UNDEFINED_LOCAL_SSD_ENCRYPTION_MODE = 0

    # The given VM will opt-in for using ephemeral key for
    # encryption of Local SSDs.
    # The Local SSDs will not be able to recover data in case of VM
    # crash.
    EPHEMERAL_KEY_ENCRYPTION = 413_047_941

    # The given VM will be encrypted using keys managed by the cloud
    # infrastructure and the keys will be deleted when the VM is
    # deleted.
    LOCAL_SSD_ENCRYPTION_MODE_UNSPECIFIED = 454_655_720

    # The given VM will be encrypted using keys managed by the cloud
    # infrastructure and the keys will be deleted when the VM is
    # deleted.
    STANDARD_ENCRYPTION = 269_392_453
  end

  # The private IPv6 google access type for VMs.
  # If not specified, use  INHERIT_FROM_SUBNETWORK as default.
  # Note that for MachineImage, this is not supported yet.
  module PrivateIpv6GoogleAccess
    # A value indicating that the enum field is not set.
    UNDEFINED_PRIVATE_IPV6_GOOGLE_ACCESS = 0

    # Bidirectional private IPv6 access to/from Google services. If
    # specified, the subnetwork who is attached to the instance's default network
    # interface will be assigned an internal IPv6 prefix if it doesn't have
    # before.
    ENABLE_BIDIRECTIONAL_ACCESS_TO_GOOGLE = 427_975_994

    # Outbound private IPv6 access from VMs in this subnet to Google services. If
    # specified, the subnetwork who is attached to the instance's default network
    # interface will be assigned an internal IPv6 prefix if it doesn't have
    # before.
    ENABLE_OUTBOUND_VM_ACCESS_TO_GOOGLE = 288_210_263

    # Each network interface inherits PrivateIpv6GoogleAccess from its
    # subnetwork.
    INHERIT_FROM_SUBNETWORK = 530_256_959
  end
end

#service_accounts ⇒ ::Array<::Google::Cloud::Compute::V1::ServiceAccount>

Returns A list of service accounts with specified scopes. Access tokens for these service accounts are available to the instances that are created from these properties. Use metadata queries to obtain the access tokens for these instances.

Returns:

  • (::Array<::Google::Cloud::Compute::V1::ServiceAccount>) —

    A list of service accounts with specified scopes. Access tokens for these service accounts are available to the instances that are created from these properties. Use metadata queries to obtain the access tokens for these instances.



35489
35490
35491
35492
35493
35494
35495
35496
35497
35498
35499
35500
35501
35502
35503
35504
35505
35506
35507
35508
35509
35510
35511
35512
35513
35514
35515
35516
35517
35518
35519
35520
35521
35522
35523
35524
35525
35526
35527
35528
35529
35530
35531
35532
35533
35534
35535
35536
35537
35538
35539
35540
35541
35542
35543
35544
35545
35546
35547
35548
35549
35550
35551
35552
35553
35554
35555
35556
35557
35558
35559
35560
35561
35562
35563
35564
35565
35566
35567
35568
35569
35570
35571
35572
35573
# File 'proto_docs/google/cloud/compute/v1/compute.rb', line 35489

class InstanceProperties
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class LabelsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class ResourceManagerTagsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # KeyRevocationActionType of the instance. Supported options are "STOP" and
  # "NONE". The default value is "NONE" if it is not specified.
  module KeyRevocationActionType
    # A value indicating that the enum field is not set.
    UNDEFINED_KEY_REVOCATION_ACTION_TYPE = 0

    # Default value. This value is unused.
    KEY_REVOCATION_ACTION_TYPE_UNSPECIFIED = 467_110_106

    # Indicates user chose no operation.
    NONE = 2_402_104

    # Indicates user chose to opt for VM shutdown on key revocation.
    STOP = 2_555_906
  end

  # Specifies which method should be used for encrypting the
  # Local SSDs attached to the VM.
  module LocalSsdEncryptionMode
    # A value indicating that the enum field is not set.
    UNDEFINED_LOCAL_SSD_ENCRYPTION_MODE = 0

    # The given VM will opt-in for using ephemeral key for
    # encryption of Local SSDs.
    # The Local SSDs will not be able to recover data in case of VM
    # crash.
    EPHEMERAL_KEY_ENCRYPTION = 413_047_941

    # The given VM will be encrypted using keys managed by the cloud
    # infrastructure and the keys will be deleted when the VM is
    # deleted.
    LOCAL_SSD_ENCRYPTION_MODE_UNSPECIFIED = 454_655_720

    # The given VM will be encrypted using keys managed by the cloud
    # infrastructure and the keys will be deleted when the VM is
    # deleted.
    STANDARD_ENCRYPTION = 269_392_453
  end

  # The private IPv6 google access type for VMs.
  # If not specified, use  INHERIT_FROM_SUBNETWORK as default.
  # Note that for MachineImage, this is not supported yet.
  module PrivateIpv6GoogleAccess
    # A value indicating that the enum field is not set.
    UNDEFINED_PRIVATE_IPV6_GOOGLE_ACCESS = 0

    # Bidirectional private IPv6 access to/from Google services. If
    # specified, the subnetwork who is attached to the instance's default network
    # interface will be assigned an internal IPv6 prefix if it doesn't have
    # before.
    ENABLE_BIDIRECTIONAL_ACCESS_TO_GOOGLE = 427_975_994

    # Outbound private IPv6 access from VMs in this subnet to Google services. If
    # specified, the subnetwork who is attached to the instance's default network
    # interface will be assigned an internal IPv6 prefix if it doesn't have
    # before.
    ENABLE_OUTBOUND_VM_ACCESS_TO_GOOGLE = 288_210_263

    # Each network interface inherits PrivateIpv6GoogleAccess from its
    # subnetwork.
    INHERIT_FROM_SUBNETWORK = 530_256_959
  end
end

#shielded_instance_config ⇒ ::Google::Cloud::Compute::V1::ShieldedInstanceConfig

Returns Note that for MachineImage, this is not supported yet.

Returns:



35489
35490
35491
35492
35493
35494
35495
35496
35497
35498
35499
35500
35501
35502
35503
35504
35505
35506
35507
35508
35509
35510
35511
35512
35513
35514
35515
35516
35517
35518
35519
35520
35521
35522
35523
35524
35525
35526
35527
35528
35529
35530
35531
35532
35533
35534
35535
35536
35537
35538
35539
35540
35541
35542
35543
35544
35545
35546
35547
35548
35549
35550
35551
35552
35553
35554
35555
35556
35557
35558
35559
35560
35561
35562
35563
35564
35565
35566
35567
35568
35569
35570
35571
35572
35573
# File 'proto_docs/google/cloud/compute/v1/compute.rb', line 35489

class InstanceProperties
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class LabelsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class ResourceManagerTagsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # KeyRevocationActionType of the instance. Supported options are "STOP" and
  # "NONE". The default value is "NONE" if it is not specified.
  module KeyRevocationActionType
    # A value indicating that the enum field is not set.
    UNDEFINED_KEY_REVOCATION_ACTION_TYPE = 0

    # Default value. This value is unused.
    KEY_REVOCATION_ACTION_TYPE_UNSPECIFIED = 467_110_106

    # Indicates user chose no operation.
    NONE = 2_402_104

    # Indicates user chose to opt for VM shutdown on key revocation.
    STOP = 2_555_906
  end

  # Specifies which method should be used for encrypting the
  # Local SSDs attached to the VM.
  module LocalSsdEncryptionMode
    # A value indicating that the enum field is not set.
    UNDEFINED_LOCAL_SSD_ENCRYPTION_MODE = 0

    # The given VM will opt-in for using ephemeral key for
    # encryption of Local SSDs.
    # The Local SSDs will not be able to recover data in case of VM
    # crash.
    EPHEMERAL_KEY_ENCRYPTION = 413_047_941

    # The given VM will be encrypted using keys managed by the cloud
    # infrastructure and the keys will be deleted when the VM is
    # deleted.
    LOCAL_SSD_ENCRYPTION_MODE_UNSPECIFIED = 454_655_720

    # The given VM will be encrypted using keys managed by the cloud
    # infrastructure and the keys will be deleted when the VM is
    # deleted.
    STANDARD_ENCRYPTION = 269_392_453
  end

  # The private IPv6 google access type for VMs.
  # If not specified, use  INHERIT_FROM_SUBNETWORK as default.
  # Note that for MachineImage, this is not supported yet.
  module PrivateIpv6GoogleAccess
    # A value indicating that the enum field is not set.
    UNDEFINED_PRIVATE_IPV6_GOOGLE_ACCESS = 0

    # Bidirectional private IPv6 access to/from Google services. If
    # specified, the subnetwork who is attached to the instance's default network
    # interface will be assigned an internal IPv6 prefix if it doesn't have
    # before.
    ENABLE_BIDIRECTIONAL_ACCESS_TO_GOOGLE = 427_975_994

    # Outbound private IPv6 access from VMs in this subnet to Google services. If
    # specified, the subnetwork who is attached to the instance's default network
    # interface will be assigned an internal IPv6 prefix if it doesn't have
    # before.
    ENABLE_OUTBOUND_VM_ACCESS_TO_GOOGLE = 288_210_263

    # Each network interface inherits PrivateIpv6GoogleAccess from its
    # subnetwork.
    INHERIT_FROM_SUBNETWORK = 530_256_959
  end
end

#tags ⇒ ::Google::Cloud::Compute::V1::Tags

Returns A list of tags to apply to the instances that are created from these properties. The tags identify valid sources or targets for network firewalls. The setTags method can modify this list of tags. Each tag within the list must comply with RFC1035.

Returns:

  • (::Google::Cloud::Compute::V1::Tags) —

    A list of tags to apply to the instances that are created from these properties. The tags identify valid sources or targets for network firewalls. The setTags method can modify this list of tags. Each tag within the list must comply with RFC1035.



35489
35490
35491
35492
35493
35494
35495
35496
35497
35498
35499
35500
35501
35502
35503
35504
35505
35506
35507
35508
35509
35510
35511
35512
35513
35514
35515
35516
35517
35518
35519
35520
35521
35522
35523
35524
35525
35526
35527
35528
35529
35530
35531
35532
35533
35534
35535
35536
35537
35538
35539
35540
35541
35542
35543
35544
35545
35546
35547
35548
35549
35550
35551
35552
35553
35554
35555
35556
35557
35558
35559
35560
35561
35562
35563
35564
35565
35566
35567
35568
35569
35570
35571
35572
35573
# File 'proto_docs/google/cloud/compute/v1/compute.rb', line 35489

class InstanceProperties
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class LabelsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class ResourceManagerTagsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # KeyRevocationActionType of the instance. Supported options are "STOP" and
  # "NONE". The default value is "NONE" if it is not specified.
  module KeyRevocationActionType
    # A value indicating that the enum field is not set.
    UNDEFINED_KEY_REVOCATION_ACTION_TYPE = 0

    # Default value. This value is unused.
    KEY_REVOCATION_ACTION_TYPE_UNSPECIFIED = 467_110_106

    # Indicates user chose no operation.
    NONE = 2_402_104

    # Indicates user chose to opt for VM shutdown on key revocation.
    STOP = 2_555_906
  end

  # Specifies which method should be used for encrypting the
  # Local SSDs attached to the VM.
  module LocalSsdEncryptionMode
    # A value indicating that the enum field is not set.
    UNDEFINED_LOCAL_SSD_ENCRYPTION_MODE = 0

    # The given VM will opt-in for using ephemeral key for
    # encryption of Local SSDs.
    # The Local SSDs will not be able to recover data in case of VM
    # crash.
    EPHEMERAL_KEY_ENCRYPTION = 413_047_941

    # The given VM will be encrypted using keys managed by the cloud
    # infrastructure and the keys will be deleted when the VM is
    # deleted.
    LOCAL_SSD_ENCRYPTION_MODE_UNSPECIFIED = 454_655_720

    # The given VM will be encrypted using keys managed by the cloud
    # infrastructure and the keys will be deleted when the VM is
    # deleted.
    STANDARD_ENCRYPTION = 269_392_453
  end

  # The private IPv6 google access type for VMs.
  # If not specified, use  INHERIT_FROM_SUBNETWORK as default.
  # Note that for MachineImage, this is not supported yet.
  module PrivateIpv6GoogleAccess
    # A value indicating that the enum field is not set.
    UNDEFINED_PRIVATE_IPV6_GOOGLE_ACCESS = 0

    # Bidirectional private IPv6 access to/from Google services. If
    # specified, the subnetwork who is attached to the instance's default network
    # interface will be assigned an internal IPv6 prefix if it doesn't have
    # before.
    ENABLE_BIDIRECTIONAL_ACCESS_TO_GOOGLE = 427_975_994

    # Outbound private IPv6 access from VMs in this subnet to Google services. If
    # specified, the subnetwork who is attached to the instance's default network
    # interface will be assigned an internal IPv6 prefix if it doesn't have
    # before.
    ENABLE_OUTBOUND_VM_ACCESS_TO_GOOGLE = 288_210_263

    # Each network interface inherits PrivateIpv6GoogleAccess from its
    # subnetwork.
    INHERIT_FROM_SUBNETWORK = 530_256_959
  end
end

#workload_identity_config ⇒ ::Google::Cloud::Compute::V1::WorkloadIdentityConfig



35489
35490
35491
35492
35493
35494
35495
35496
35497
35498
35499
35500
35501
35502
35503
35504
35505
35506
35507
35508
35509
35510
35511
35512
35513
35514
35515
35516
35517
35518
35519
35520
35521
35522
35523
35524
35525
35526
35527
35528
35529
35530
35531
35532
35533
35534
35535
35536
35537
35538
35539
35540
35541
35542
35543
35544
35545
35546
35547
35548
35549
35550
35551
35552
35553
35554
35555
35556
35557
35558
35559
35560
35561
35562
35563
35564
35565
35566
35567
35568
35569
35570
35571
35572
35573
# File 'proto_docs/google/cloud/compute/v1/compute.rb', line 35489

class InstanceProperties
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class LabelsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class ResourceManagerTagsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # KeyRevocationActionType of the instance. Supported options are "STOP" and
  # "NONE". The default value is "NONE" if it is not specified.
  module KeyRevocationActionType
    # A value indicating that the enum field is not set.
    UNDEFINED_KEY_REVOCATION_ACTION_TYPE = 0

    # Default value. This value is unused.
    KEY_REVOCATION_ACTION_TYPE_UNSPECIFIED = 467_110_106

    # Indicates user chose no operation.
    NONE = 2_402_104

    # Indicates user chose to opt for VM shutdown on key revocation.
    STOP = 2_555_906
  end

  # Specifies which method should be used for encrypting the
  # Local SSDs attached to the VM.
  module LocalSsdEncryptionMode
    # A value indicating that the enum field is not set.
    UNDEFINED_LOCAL_SSD_ENCRYPTION_MODE = 0

    # The given VM will opt-in for using ephemeral key for
    # encryption of Local SSDs.
    # The Local SSDs will not be able to recover data in case of VM
    # crash.
    EPHEMERAL_KEY_ENCRYPTION = 413_047_941

    # The given VM will be encrypted using keys managed by the cloud
    # infrastructure and the keys will be deleted when the VM is
    # deleted.
    LOCAL_SSD_ENCRYPTION_MODE_UNSPECIFIED = 454_655_720

    # The given VM will be encrypted using keys managed by the cloud
    # infrastructure and the keys will be deleted when the VM is
    # deleted.
    STANDARD_ENCRYPTION = 269_392_453
  end

  # The private IPv6 google access type for VMs.
  # If not specified, use  INHERIT_FROM_SUBNETWORK as default.
  # Note that for MachineImage, this is not supported yet.
  module PrivateIpv6GoogleAccess
    # A value indicating that the enum field is not set.
    UNDEFINED_PRIVATE_IPV6_GOOGLE_ACCESS = 0

    # Bidirectional private IPv6 access to/from Google services. If
    # specified, the subnetwork who is attached to the instance's default network
    # interface will be assigned an internal IPv6 prefix if it doesn't have
    # before.
    ENABLE_BIDIRECTIONAL_ACCESS_TO_GOOGLE = 427_975_994

    # Outbound private IPv6 access from VMs in this subnet to Google services. If
    # specified, the subnetwork who is attached to the instance's default network
    # interface will be assigned an internal IPv6 prefix if it doesn't have
    # before.
    ENABLE_OUTBOUND_VM_ACCESS_TO_GOOGLE = 288_210_263

    # Each network interface inherits PrivateIpv6GoogleAccess from its
    # subnetwork.
    INHERIT_FROM_SUBNETWORK = 530_256_959
  end
end