models.gcp_protection_source module

class models.gcp_protection_source.GcpProtectionSource(client_email_address=None, client_private_key=None, gcp_type=None, host_project_id=None, host_type=None, ip_addresses_vm=None, name=None, owner_id=None, physical_source_id=None, project_id=None, region_id=None, resource_id=None, restore_task_id=None, mtype=None, tag_attributes=None, vpc_network=None, vpc_subnetwork=None)[source]

Bases: object

Implementation of the ‘GcpProtectionSource’ model.

Specifies a Protection Source in GCP environment.

Attributes:
client_email_address (string): Specifies Client email address

associated with the service account.

client_private_key (string): Specifies Client private associated with

the service account.

gcp_type (GcpTypeEnum): Specifies the entity type such as ‘kIAMUser’

if the environment is kGCP. Specifies the type of a GCP source entity. ‘kIAMUser’ indicates a unique user within a GCP account. ‘kProject’ represents compute resources and storage. ‘kRegion’ indicates a geographical region in the global infrastructure. ‘kAvailabilityZone’ indicates an availability zone within a region. ‘kVirtualMachine’ indicates a Virtual Machine running in GCP environment. ‘kVPC’ indicates a virtual private cloud (VPC) network within GCP. ‘kSubnet’ indicates a subnet inside the VPC. ‘kNetworkSecurityGroup’ represents a network security group. ‘kInstanceType’ represents various machine types. ‘kLabel’ represents a label present on the instances. ‘kMetaData’ represents a custom metadata present on instances. ‘kTag’ represents a network tag on instances. ‘kVPCConnector’ represents a VPC connector used for serverless VPC access.

host_project_id (string): Specifies the host project id. It is

populated in entities of type kSubnet if the subnet is part of a shared VPC. This contains the ID of host project the subnet belongs to. Populated in entities of type kProject if the project is a service project in a Shared VPC setup. This contains the ID of the host project it is attached to.

host_type (HostTypeEnum): Specifies the OS type of the Protection

Source of type ‘kVirtualMachine’ such as ‘kWindows’ or ‘kLinux’. overrideDescription: true ‘kLinux’ indicates the Linux operating system. ‘kWindows’ indicates the Microsoft Windows operating system. ‘kAix’ indicates the IBM AIX operating system. ‘kSolaris’ indicates the Oracle Solaris operating system. ‘kSapHana’ indicates the Sap Hana database system developed by SAP SE. ‘kOther’ indicates the other types of operating system.

ip_addresses_vm (string): Specifies the IP address of the entity of

type ‘kVirtualMachine’.

name (string): Specifies the name of the Object set by the Cloud

Provider. If the provider did not set a name for the object, this field is not set.

owner_id (string): Specifies the owner id of the resource in GCP

environment. With type, name and ownerId gives a globally unique identity to the GCP entity.

physical_source_id (long|int): Specifies the Protection Source id of

the registered Physical Host. If the cloud entity is protected using a Physical Agent, it must be registered as a physical host.

project_id (string): Specifies the project Id. For the kIAMUser entity

this contains the id of the project to be used to deploy proxy VMs. For entities of type kVirtualMachine this contains the id of the project the virtual machine belongs to.

region_id (string): Specifies the region Id. For the kIAMUser entity

this contains the region to be used to deploy proxy VMs. For entities of type kVirtualMachine this contains the region the virtual machine belongs to.

resource_id (string): Specifies the unique Id of the resource given by

the cloud provider.

restore_task_id (long|int): Specifies the id of the “convert and

deploy” restore task that created the entity in the cloud. It is required to support the DR-to-cloud usecase where we replicate an on-prem entity to a cluster running in cloud, bring it up using “convert and deploy” mechanism, protect it using a cloud job that uses physical adapter, and convert it back to the on-prem format before replication. Before replicating, we need to update the backup task state of the backed up entity using the on-prem entity and on-prem entity’s parent. The id is used to lookup the restore entity that contains details about the on-prem entity. It is set at the time of refreshing the cloud entity hierarchy if all the following conditions are met: Name of the current entity matches with name of any cloud entity deployed using the “convert and deploy” restore task. Restore entity associated with the above matched cloud entity has ‘failed_over’ flag set to true in its cloud extension.

tag_attributes (list of TagAttribute): Specifies the list of GCP tag

attributes.

mtype (TypeGcpProtectionSourceEnum): Specifies the type of an GCP

Protection Source Object such as ‘kIAMUser’, ‘kProject’, ‘kRegion’, etc. Specifies the type of a GCP source entity. ‘kIAMUser’ indicates a unique user within a GCP account. ‘kProject’ represents compute resources and storage. ‘kRegion’ indicates a geographical region in the global infrastructure. ‘kAvailabilityZone’ indicates an availability zone within a region. ‘kVirtualMachine’ indicates a Virtual Machine running in GCP environment. ‘kVPC’ indicates a virtual private cloud (VPC) network within GCP. ‘kSubnet’ indicates a subnet inside the VPC. ‘kNetworkSecurityGroup’ represents a network security group. ‘kInstanceType’ represents various machine types. ‘kLabel’ represents a label present on the instances. ‘kMetaData’ represents a custom metadata present on instances. ‘kTag’ represents a network tag on instances. ‘kVPCConnector’ represents a VPC connector used for serverless VPC access.

vpc_network (string): Specifies the VPC Network to deploy proxy VMs. vpc_subnetwork (string): Specifies the subnetwork to deploy proxy

VMs.

classmethod from_dictionary(dictionary)[source]

Creates an instance of this model from a dictionary

Args:

dictionary (dictionary): A dictionary representation of the object as obtained from the deserialization of the server’s response. The keys MUST match property names in the API description.

Returns:

object: An instance of this structure class.