Outscale Driver Documentation¶
Outscale provides an IaaS platform allowing developers to benefit from all the flexibility of the Cloud. This IaaS platform relies on TINA OS, its Cloud manager whose purpose is to provide great performances on the Cloud. TINA OS is software developed by Outscale.
Outscale users can start virtual machines in the following regions:
- cloudgouv-west-1, France
- eu-west-2, France
- us-est-2, US
- us-west-1, US
- cn-southeast-1, China
Outscale is an European company and is priced in Euros.
Instantiating a driver¶
When you instantiate a driver you need to pass the following arguments to the driver constructor:
key- Your Outscale access keysecret- Your Outscale secret keyregion- The region you want to make action onservice- The Outscale service you want to use
Once you have some credentials you can instantiate the driver as shown below.
from libcloud.compute.types import Provider
from libcloud.compute.providers import get_driver
cls = get_driver(Provider.OUTSCALE)
driver = cls(key="my_key", secret="my_secret", region="my_region", service="my_service")
List the Virtual Machines (node)¶
Listing the Virtual Machines on Outscale using libcloud works the same as on any other platform. This example is just to show exactly that.
This example will list the Virtual Machines in eu-west-2 region.
from libcloud.compute.types import Provider
from libcloud.compute.providers import get_driver
key = "my_key"
secret = "my_secret"
region = "eu-west-2"
service = "api"
Driver = get_driver(Provider.OUTSCALE)
driver = Driver(key=key, secret=secret, region=region, service=service)
nodes = driver.list_nodes()
print(nodes)
API Documentation¶
-
class
libcloud.compute.drivers.outscale.OutscaleNodeDriver(key: str = None, secret: str = None, region: str = 'eu-west-2', service: str = 'api', version: str = 'latest', base_uri: str = 'outscale.com')[source]¶ Outscale SDK node driver
-
attach_volume(node: libcloud.compute.base.Node, volume: libcloud.compute.base.StorageVolume, device: str = None)[source]¶ Attach a volume to a node.
Parameters: - node (
Node) – the ID of the VM you want to attach the volume to (required) - volume (
StorageVolume) – the ID of the volume you want to attach (required) - device (
str) – the name of the device (required)
Returns: the attached volume
Return type: dict- node (
-
connectionCls¶ alias of
libcloud.common.base.ConnectionKey
-
copy_image(source_region, node_image, name, description=None)¶ Copies an image from a source region to the current region.
Parameters: - source_region (
str) – Region to copy the node from. - node_image (
NodeImage:) – NodeImage to copy. - name (
str) – name for new image. - description – description for new image.
Return type: Returns: NodeImage instance on success.
- source_region (
-
create_image(ex_architecture: str = None, node: libcloud.compute.base.Node = None, name: str = None, description: str = None, ex_block_device_mapping: dict = None, ex_no_reboot: bool = False, ex_root_device_name: str = None, ex_dry_run: bool = False, ex_source_region_name: str = None, ex_file_location: str = None)[source]¶ Create a new image.
Parameters: - node (
str) – a valid Node object - ex_architecture – The architecture of the OMI (by default,
i386). :type ex_architecture:
strParameters: - description (
str) – a description for the new OMI - name (
str) – A unique name for the new OMI. - ex_block_device_mapping (
dict) – One or more block device mappings. - ex_no_reboot – If false, the VM shuts down before creating
the OMI and then reboots. If true, the VM does not. :type ex_no_reboot:
boolParameters: - ex_root_device_name (
str) – The name of the root device. - ex_source_region_name – The name of the source Region,
which must be the same as the Region of your account. :type ex_source_region_name:
strParameters: ex_file_location – The pre-signed URL of the OMI manifest file, or the full path to the OMI stored in an OSU bucket. If you specify this parameter, a copy of the OMI is created in your account. :type ex_file_location:
strParameters: ex_dry_run – If true, checks whether you have the required permissions to perform the action. :type ex_dry_run:
boolReturns: the created image Return type: dict- node (
-
create_key_pair(name: str, ex_dry_run: bool = False, ex_public_key: str = None)[source]¶ Create a new key pair.
Parameters: name – A unique name for the keypair, with a maximum length of 255 ASCII printable characters. :type name:
strParameters: ex_dry_run – If true, checks whether you have the required permissions to perform the action. :type ex_dry_run:
boolParameters: ex_public_key ( str) – The public key. It must be base64-encoded.Returns: the created key pair Return type: dict
-
create_node(image: libcloud.compute.base.NodeImage, name: str = None, ex_dry_run: bool = False, ex_block_device_mapping: dict = None, ex_boot_on_creation: bool = True, ex_bsu_optimized: bool = True, ex_client_token: str = None, ex_deletion_protection: bool = False, ex_keypair_name: str = None, ex_max_vms_count: int = None, ex_min_vms_count: int = None, ex_nics: List[dict] = None, ex_performance: str = None, ex_placement: dict = None, ex_private_ips: List[str] = None, ex_security_group_ids: List[str] = None, ex_security_groups: List[str] = None, ex_subnet_id: str = None, ex_user_data: str = None, ex_vm_initiated_shutdown_behavior: str = None, ex_vm_type: str = None)[source]¶ Create a new instance.
Parameters: - image (
NodeImage) – The image used to create the VM. - name (
str) – The name of the Node. - ex_dry_run – If true, checks whether you have the required
permissions to perform the action. :type ex_dry_run:
boolParameters: - ex_block_device_mapping (
dict) – One or more block device mappings. - ex_boot_on_creation – By default or if true, the VM is
started on creation. If false, the VM is stopped on creation. :type ex_boot_on_creation:
boolParameters: ex_bsu_optimized – If true, the VM is created with optimized BSU I/O. :type ex_bsu_optimized:
boolParameters: ex_client_token – A unique identifier which enables you to manage the idempotency. :type ex_client_token:
boolParameters: ex_deletion_protection – If true, you cannot terminate the VM using Cockpit, the CLI or the API. If false, you can. :type ex_deletion_protection:
boolParameters: - ex_keypair_name (
str) – The name of the keypair. - ex_max_vms_count – The maximum number of VMs you want to
create. If all the VMs cannot be created, the largest possible number of VMs above MinVmsCount is created. :type ex_max_vms_count:
integerParameters: ex_min_vms_count – The minimum number of VMs you want to create. If this number of VMs cannot be created, no VMs are created. :type ex_min_vms_count:
integerParameters: ex_nics – One or more NICs. If you specify this parameter, you must define one NIC as the primary network interface of the VM with 0 as its device number. :type ex_nics:
listofdictParameters: ex_performance – The performance of the VM (standard | high highest).Parameters: - ex_placement (
dict) – Information about the placement of the VM. - ex_private_ips (
list) – One or more private IP addresses of the VM. - ex_security_group_ids – One or more IDs of security group
for the VMs. :type ex_security_group_ids:
listParameters: ex_security_groups – One or more names of security groups for the VMs. :type ex_security_groups:
listParameters: ex_subnet_id – The ID of the Subnet in which you want to create the VM. :type ex_subnet_id:
strParameters: ex_user_data – Data or script used to add a specific configuration to the VM. It must be base64-encoded. :type ex_user_data:
strParameters: ex_vm_initiated_shutdown_behavior – The VM behavior when you stop it. By default or if set to stop, the VM stops. If set to restart, the VM stops then automatically restarts. If set to terminate, the VM stops and is terminated. create the VM. :type ex_vm_initiated_shutdown_behavior:
strParameters: ex_vm_type ( str) – The type of VM (t2.small by default).Returns: the created instance Return type: dict- image (
-
create_volume(ex_subregion_name: str, ex_dry_run: bool = False, ex_iops: int = None, size: int = None, snapshot: libcloud.compute.base.VolumeSnapshot = None, ex_volume_type: str = None)[source]¶ Create a new volume.
Parameters: - snapshot (
str) – the ID of the snapshot from which you want to create the volume (required) - ex_dry_run – If true, checks whether you have the required
permissions to perform the action. :type ex_dry_run:
boolParameters: - size (
int) – the size of the volume, in gibibytes (GiB), the maximum allowed size for a volume is 14,901 GiB - ex_subregion_name – The Subregion in which you want to
create the volume. :type ex_subregion_name:
strParameters: ex_volume_type – the type of volume you want to create (io1 gp2 | standard)Parameters: ex_iops – The number of I/O operations per second (IOPS). This parameter must be specified only if you create an io1 volume. The maximum number of IOPS allowed for io1 volumes is 13000. :type ex_iops:
integerReturns: the created volume Return type: dict- snapshot (
-
create_volume_snapshot(ex_description: str = None, ex_dry_run: bool = False, ex_file_location: str = None, ex_snapshot_size: int = None, ex_source_region_name: str = None, ex_source_snapshot: libcloud.compute.base.VolumeSnapshot = None, volume: libcloud.compute.base.StorageVolume = None)[source]¶ Create a new volume snapshot.
Parameters: - ex_description (
str) – a description for the new OMI - ex_snapshot_size – The size of the snapshot created in your
account, in bytes. This size must be exactly the same as the source snapshot one. :type ex_snapshot_size:
integerParameters: ex_source_snapshot – The ID of the snapshot you want to copy. :type ex_source_snapshot:
strParameters: volume – The ID of the volume you want to create a snapshot of. :type volume:
strParameters: ex_source_region_name – The name of the source Region, which must be the same as the Region of your account. :type ex_source_region_name:
strParameters: ex_file_location – The pre-signed URL of the OMI manifest file, or the full path to the OMI stored in an OSU bucket. If you specify this parameter, a copy of the OMI is created in your account. :type ex_file_location:
strParameters: ex_dry_run – If true, checks whether you have the required permissions to perform the action. :type ex_dry_run:
boolReturns: the created snapshot Return type: dict- ex_description (
-
delete_image(node_image: libcloud.compute.base.NodeImage)[source]¶ Delete an image.
Parameters: node_image ( str) – the ID of the OMI you want to delete (required)Returns: request Return type: bool
-
delete_key_pair(key_pair: libcloud.compute.base.KeyPair)[source]¶ Delete a key pair.
Parameters: key_pair – the name of the keypair you want to delete (required) :type key_pair:
KeyPairReturns: bool Return type: bool
-
deploy_node(deploy, ssh_username='root', ssh_alternate_usernames=None, ssh_port=22, ssh_timeout=10, ssh_key=None, ssh_key_password=None, auth=None, timeout=300, max_tries=3, ssh_interface='public_ips', at_exit_func=None, wait_period=5, **create_node_kwargs)¶ Create a new node, and start deployment.
In order to be able to SSH into a created node access credentials are required.
A user can pass either a
NodeAuthPasswordorNodeAuthSSHKeyto theauthargument. If thecreate_nodeimplementation supports that kind if credential (as declared inself.features['create_node']) then it is passed on tocreate_node. Otherwise it is not passed on tocreate_nodeand it is only used for authentication.If the
authparameter is not supplied but the driver declares it supportsgenerates_passwordthen the password returned bycreate_nodewill be used to SSH into the server.Finally, if the
ssh_key_fileis supplied that key will be used to SSH into the server.This function may raise a
DeploymentException, if a create_node call was successful, but there is a later error (like SSH failing or timing out). This exception includes a Node object which you may want to destroy if incomplete deployments are not desirable.>>> from libcloud.compute.drivers.dummy import DummyNodeDriver >>> from libcloud.compute.deployment import ScriptDeployment >>> from libcloud.compute.deployment import MultiStepDeployment >>> from libcloud.compute.base import NodeAuthSSHKey >>> driver = DummyNodeDriver(0) >>> key = NodeAuthSSHKey('...') # read from file >>> script = ScriptDeployment("yum -y install emacs strace tcpdump") >>> msd = MultiStepDeployment([key, script]) >>> def d(): ... try: ... driver.deploy_node(deploy=msd) ... except NotImplementedError: ... print ("not implemented for dummy driver") >>> d() not implemented for dummy driver
Deploy node is typically not overridden in subclasses. The existing implementation should be able to handle most such.
Parameters: - deploy (
Deployment) – Deployment to run once machine is online and available to SSH. - ssh_username (
str) – Optional name of the account which is used when connecting to SSH server (default is root) - ssh_alternate_usernames (
list) – Optional list of ssh usernames to try to connect with if using the default one fails - ssh_port (
int) – Optional SSH server port (default is 22) - ssh_timeout (
float) – Optional SSH connection timeout in seconds (default is 10) - auth (
NodeAuthSSHKeyorNodeAuthPassword) – Initial authentication information for the node (optional) - ssh_key (
strorlistofstr) – A path (or paths) to an SSH private key with which to attempt to authenticate. (optional) - ssh_key_password (
str) – Optional password used for encrypted keys. - timeout (
int) – How many seconds to wait before timing out. (default is 600) - max_tries (
int) – How many times to retry if a deployment fails before giving up (default is 3) - ssh_interface (
str) – The interface to wait for. Default is ‘public_ips’, other option is ‘private_ips’. - at_exit_func (
func) –Optional atexit handler function which will be registered and called with created node if user cancels the deploy process (e.g. CTRL+C), after the node has been created, but before the deploy process has finished.
This method gets passed in two keyword arguments:
- driver -> node driver in question
- node -> created Node object
Keep in mind that this function will only be called in such scenario. In case the method finishes (this includes throwing an exception), at exit handler function won’t be called.
- wait_period (
int) – How many seconds to wait between each iteration while waiting for node to transition into running state and have IP assigned. (default is 5)
- deploy (
-
destroy_node(node: libcloud.compute.base.Node)[source]¶ Delete instance.
Parameters: node ( Node) – one or more IDs of VMs (required)Returns: request Return type: bool
-
destroy_volume(volume: libcloud.compute.base.StorageVolume)[source]¶ Delete a volume.
Parameters: volume ( StorageVolume) – the ID of the volume you want to delete (required)Returns: request Return type: bool
-
destroy_volume_snapshot(snapshot: libcloud.compute.base.VolumeSnapshot)[source]¶ Delete a volume snapshot.
Parameters: snapshot ( VolumeSnapshot) – the ID of the snapshot you want to delete (required)Returns: request Return type: bool
-
detach_volume(volume: libcloud.compute.base.StorageVolume, ex_dry_run: bool = False, ex_force_unlink: bool = False)[source]¶ Detach a volume from a node.
Parameters: volume – the ID of the volume you want to detach (required) :type volume:
strParameters: ex_force_unlink – Forces the detachment of the volume in case of previous failure. Important: This action may damage your data or file systems. :type ex_force_unlink:
boolParameters: ex_dry_run – If true, checks whether you have the required permissions to perform the action. :type ex_dry_run:
boolReturns: the attached volume Return type: dict
-
ex_accept_net_peering(net_peering_id: List[str] = None, dry_run: bool = False)[source]¶ Accepts a Net peering connection request. To accept this request, you must be the owner of the peer Net. If you do not accept the request within 7 days, the state of the Net peering connection becomes expired.
Parameters: net_peering_id – The ID of the Net peering connection you want to accept. (required) :type net_peering_id:
strParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: The accepted Net Peering Return type: dict
-
ex_attach_public_ip(allow_relink: bool = None, dry_run: bool = False, nic_id: str = None, vm_id: str = None, public_ip: str = None, public_ip_id: str = None)[source]¶ Attach public ip to a node.
Parameters: allow_relink – If true, allows the EIP to be associated with the VM or NIC that you specify even if it is already associated with another VM or NIC. :type allow_relink:
boolParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool:param nic_id:(Net only) The ID of the NIC. This parameter is required if the VM has more than one NIC attached. Otherwise, you need to specify the VmId parameter instead. You cannot specify both parameters at the same time. :type nic_id:
strParameters: - vm_id – the ID of the VM
- public_ip – The EIP. In the public Cloud, this parameter
is required. :type public_ip:
strParameters: public_ip_id – The allocation ID of the EIP. In a Net, this parameter is required. :type public_ip_id:
strReturns: the attached volume Return type: dict
-
ex_check_account(login: str, password: str, dry_run: bool = False)[source]¶ Validates the authenticity of the account.
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolParameters: - login (
str) – the login of the account - password (
str) – the password of the account - dry_run (
bool) – the password of the account
Returns: True if the action successful
Return type: bool- login (
-
ex_create_access_key(expiration_date: datetime.datetime = None, dry_run: bool = False)[source]¶ Creates a new secret access key and the corresponding access key ID for a specified user. The created key is automatically set to ACTIVE.
Parameters: expiration_date – The date and time at which you want the access key to expire, in ISO 8601 format (for example, 2017-06-14 or 2017-06-14T00:00:00Z). If not specified, the access key has no expiration date. :type expiration_date:
datetimeParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: access key if action is successful Return type: dict
-
ex_create_account(city: str = None, company_name: str = None, country: str = None, customer_id: str = None, email: str = None, first_name: str = None, last_name: str = None, zip_code: str = None, job_title: str = None, mobile_number: str = None, phone_number: str = None, state_province: str = None, vat_number: str = None, dry_run: bool = False)[source]¶ Creates a new 3DS OUTSCALE account.
You need 3DS OUTSCALE credentials and the appropriate quotas to create a new account via API. To get quotas, you can send an email to sales@outscale.com. If you want to pass a numeral value as a string instead of an integer, you must wrap your string in additional quotes (for example, ‘“92000”’).
Parameters: - city (
str) – The city of the account owner. - company_name – The name of the company for the account.
permissions to perform the action. :type company_name:
strParameters: - country (
str) – The country of the account owner. - customer_id (
str) – The ID of the customer. It must be 8 digits. - email (
str) – The email address for the account. - first_name (
str) – The first name of the account owner. - last_name (
str) – The last name of the account owner. - zip_code (
str) – The ZIP code of the city. - job_title (
str) – The job title of the account owner. - mobile_number – The mobile phone number of the account
owner. :type mobile_number:
strParameters: phone_number – The landline phone number of the account owner. :type phone_number:
strParameters: - state_province (
str) – The state/province of the account. - vat_number – The value added tax (VAT) number for
the account. :type vat_number:
strParameters: dry_run ( bool) – the password of the accountReturns: True if the action is successful Return type: bool- city (
-
ex_create_api_access_rule(description: str = None, ip_ranges: List[str] = None, ca_ids: List[str] = None, cns: List[str] = None, dry_run: bool = False)[source]¶ Create an API access rule. It is a rule to allow access to the API from your account. You need to specify at least the CaIds or the IpRanges parameter.
Parameters: - description (
str) – The description of the new rule. - ip_ranges – One or more IP ranges, in CIDR notation
(for example, 192.0.2.0/16). :type ip_ranges:
ListofstrParameters: ca_ids – One or more IDs of Client Certificate Authorities (CAs). :type ca_ids:
ListofstrParameters: cns – One or more Client Certificate Common Names (CNs). If this parameter is specified, you must also specify the ca_ids parameter. :type cns:
ListofstrParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: a dict containing the API access rule created. Return type: dict- description (
Creates a Client Certificate Authority (CA).
Parameters: - ca_perm (
str) – The CA in PEM format. (required) - description (
bool) – The description of the CA. - dry_run – If true, checks whether you have the required
permissions to perform the action. :type dry_run:
boolReturns: the created Ca. Return type: dict- ca_perm (
-
ex_create_client_gateway(bgp_asn: int = None, connection_type: str = None, public_ip: str = None, dry_run: bool = False)[source]¶ Provides information about your client gateway. This action registers information to identify the client gateway that you deployed in your network. To open a tunnel to the client gateway, you must provide the communication protocol type, the valid fixed public IP address of the gateway, and an Autonomous System Number (ASN).
Parameters: bgp_asn – An Autonomous System Number (ASN) used by the Border Gateway Protocol (BGP) to find the path to your client gateway through the Internet. (required) :type bgp_asn:
int(required)Parameters: connection_type – The communication protocol used to establish tunnel with your client gateway (only ipsec.1 is supported). (required) :type connection_type:
strParameters: public_ip – The public fixed IPv4 address of your client gateway. (required) :type public_ip:
strParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: Client Gateway as dictReturn type: dict
-
ex_create_dhcp_options(domaine_name: str = None, domaine_name_servers: list = None, ntp_servers: list = None, dry_run: bool = False)[source]¶ Creates a new set of DHCP options, that you can then associate with a Net using the UpdateNet method.
Parameters: domaine_name – Specify a domain name (for example, MyCompany.com). You can specify only one domain name. :type domaine_name:
strParameters: domaine_name_servers – The IP addresses of domain name servers. If no IP addresses are specified, the OutscaleProvidedDNS value is set by default. :type domaine_name_servers:
listofstrParameters: ntp_servers – The IP addresses of the Network Time Protocol (NTP) servers. :type ntp_servers:
listofstrParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: The created Dhcp Options Return type: dict
-
ex_create_direct_link(bandwidth: str = None, direct_link_name: str = None, location: str = None, dry_run: bool = False)[source]¶ Creates a new DirectLink between a customer network and a specified DirectLink location.
Parameters: bandwidth – The bandwidth of the DirectLink (1Gbps | 10Gbps). (required) :type bandwidth:
strParameters: - direct_link_name (
str) – The name of the DirectLink. (required) - location – The code of the requested location for
the DirectLink, returned by the list_locations method. Protocol (NTP) servers. :type location:
strParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: The new Direct Link Return type: dict- direct_link_name (
-
ex_create_direct_link_interface(direct_link_id: str = None, bgp_asn: int = None, bgp_key: str = None, client_private_ip: str = None, direct_link_interface_name: str = None, outscale_private_ip: str = None, virtual_gateway_id: str = None, vlan: int = None, dry_run: bool = False)[source]¶ Creates a DirectLink interface. DirectLink interfaces enable you to reach one of your Nets through a virtual gateway.
Parameters: direct_link_id – The ID of the existing DirectLink for which you want to create the DirectLink interface. (required) :type direct_link_id:
strParameters: bgp_asn – The BGP (Border Gateway Protocol) ASN (Autonomous System Number) on the customer’s side of the DirectLink interface. (required) :type bgp_asn:
intParameters: - bgp_key (
str) – The BGP authentication key. - client_private_ip – The IP address on the customer’s side
of the DirectLink interface. (required) :type client_private_ip:
strParameters: direct_link_interface_name – The name of the DirectLink interface. (required) :type direct_link_interface_name:
strParameters: outscale_private_ip – The IP address on 3DS OUTSCALE’s side of the DirectLink interface. :type outscale_private_ip:
str:param virtual_gateway_id:The ID of the target virtual gateway. (required) :type virtual_gateway_id:
strParameters: vlan – The VLAN number associated with the DirectLink interface. (required) :type vlan:
strParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: The new Direct Link Interface Return type: dict- bgp_key (
-
ex_create_flexible_gpu(delete_on_vm_deletion: bool = None, generation: str = None, model_name: str = None, subregion_name: str = None, dry_run: bool = False)[source]¶ Allocates a flexible GPU (fGPU) to your account. You can then attach this fGPU to a virtual machine (VM).
Parameters: delete_on_vm_deletion – If true, the fGPU is deleted when the VM is terminated. :type delete_on_vm_deletion:
boolParameters: generation – The processor generation that the fGPU must be compatible with. If not specified, the oldest possible processor generation is selected (as provided by ReadFlexibleGpuCatalog for the specified model of fGPU). :type generation:
strParameters: model_name – The model of fGPU you want to allocate. For more information, see About Flexible GPUs: https://wiki.outscale.net/display/EN/About+Flexible+GPUs (required) :type model_name:
strParameters: subregion_name – The Subregion in which you want to create the fGPU. (required) :type subregion_name:
strParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: The new Flexible GPU Return type: dict
-
ex_create_image_export_task(image: libcloud.compute.base.NodeImage = None, osu_export_disk_image_format: str = None, osu_export_api_key_id: str = None, osu_export_api_secret_key: str = None, osu_export_bucket: str = None, osu_export_manifest_url: str = None, osu_export_prefix: str = None, dry_run: bool = False)[source]¶ Exports an Outscale machine image (OMI) to an Object Storage Unit (OSU) bucket. This action enables you to copy an OMI between accounts in different Regions. To copy an OMI in the same Region, you can also use the CreateImage method. The copy of the OMI belongs to you and is independent from the source OMI.
Parameters: - image (
NodeImage) – The ID of the OMI to export. (required) - dry_run – If true, checks whether you have the required
permissions to perform the action. :type dry_run:
boolParameters: osu_export_disk_image_format – The format of the export disk (qcow2 | vdi | vmdk). (required) :type osu_export_disk_image_format:
strParameters: osu_export_api_key_id – The API key of the OSU account that enables you to access the bucket. :type osu_export_api_key_id:
strParameters: osu_export_api_secret_key – The secret key of the OSU account that enables you to access the bucket. :type osu_export_api_secret_key:
strParameters: osu_export_bucket – The name of the OSU bucket you want to export the object to. (required) :type osu_export_bucket:
strParameters: - osu_export_manifest_url (
str) – The URL of the manifest file. - osu_export_prefix – The prefix for the key of
the OSU object. This key follows this format: prefix + object_export_task_id + ‘.’ + disk_image_format. :type osu_export_prefix:
strReturns: the created image export task Return type: dict- image (
-
ex_create_internet_service(dry_run: bool = False)[source]¶ Creates an Internet service you can use with a Net. An Internet service enables your virtual machines (VMs) launched in a Net to connect to the Internet. By default, a Net includes an Internet service, and each Subnet is public. Every VM launched within a default Subnet has a private and a public IP addresses.
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: The new Internet Service Return type: dict
-
ex_create_listener_rule(vms: [<class 'libcloud.compute.base.Node'>] = None, l_load_balancer_name: str = None, l_load_balancer_port: str = None, lr_action: str = None, lr_host_name_pattern: str = None, lr_id: str = None, lr_name: str = None, lr_path_pattern: str = None, lr_priority: int = None, dry_run: bool = False)[source]¶ Creates a rule for traffic redirection for the specified listener. Each rule must have either the HostNamePattern or PathPattern parameter specified. Rules are treated in priority order, from the highest value to the lowest value. Once the rule is created, you need to register backend VMs with it. For more information, see the RegisterVmsInLoadBalancer method. https://docs.outscale.com/api#registervmsinloadbalancer
Parameters: - vms (
listofNode) – The IDs of the backend VMs. (required) - l_load_balancer_name – The name of the load balancer to
which the listener is attached. (required) :type l_load_balancer_name:
strParameters: l_load_balancer_port – The port of load balancer on which the load balancer is listening (between 1 and 65535 both included). (required) :type l_load_balancer_port:
intParameters: lr_action – The type of action for the rule (always forward). :type lr_action:
strParameters: lr_host_name_pattern – A host-name pattern for the rule, with a maximum length of 128 characters. This host-name pattern supports maximum three wildcards, and must not contain any special characters except [-.?]. :type lr_host_name_pattern:
strParameters: - lr_id (
str) – The ID of the listener. - lr_name (
str) – A human-readable name for the listener rule. - lr_path_pattern – A path pattern for the rule, with a
maximum length of 128 characters. This path pattern supports maximum three wildcards, and must not contain any special characters except [_-.$/~”’@:+?]. :type lr_path_pattern:
strParameters: lr_priority – The priority level of the listener rule, between 1 and 19999 both included. Each rule must have a unique priority level. Otherwise, an error is returned. (required) :type lr_priority:
intParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: The new Listener Rule Return type: dict- vms (
-
ex_create_load_balancer(load_balancer_name: str = None, load_balancer_type: str = None, security_groups: List[str] = None, subnets: List[str] = None, subregion_names: str = None, tag_keys: List[str] = None, tag_values: List[str] = None, l_backend_port: int = None, l_backend_protocol: str = None, l_load_balancer_port: int = None, l_load_balancer_protocol: str = None, l_server_certificate_id: str = None, dry_run: bool = False)[source]¶ Creates a load balancer. The load balancer is created with a unique Domain Name Service (DNS) name. It receives the incoming traffic and routes it to its registered virtual machines (VMs). By default, this action creates an Internet-facing load balancer, resolving to public IP addresses. To create an internal load balancer in a Net, resolving to private IP addresses, use the LoadBalancerType parameter.
Parameters: load_balancer_name – The name of the load balancer for which you want to create listeners. (required) :type load_balancer_name:
strParameters: load_balancer_type – The type of load balancer: internet-facing or internal. Use this parameter only for load balancers in a Net. :type load_balancer_type:
strParameters: security_groups – One or more IDs of security groups you want to assign to the load balancer. :type security_groups:
listofstrParameters: subnets – One or more IDs of Subnets in your Net that you want to attach to the load balancer. :type subnets:
listofstrParameters: subregion_names – One or more names of Subregions (currently, only one Subregion is supported). This parameter is not required if you create a load balancer in a Net. To create an internal load balancer, use the LoadBalancerType parameter. :type subregion_names:
listofstrParameters: tag_keys – The key of the tag, with a minimum of 1 character. (required) :type tag_keys:
listofstrParameters: tag_values – The value of the tag, between 0 and 255 characters. (required) :type tag_values:
listofstrParameters: l_backend_port – The port on which the back-end VM is listening (between 1 and 65535, both included). (required) :type l_backend_port:
intParameters: l_backend_protocol – The protocol for routing traffic to back-end VMs (HTTP | HTTPS | TCP | SSL | UDP). :type l_backend_protocol:
intParameters: l_load_balancer_port – The port on which the load balancer is listening (between 1 and 65535, both included). (required) :type l_load_balancer_port:
intParameters: l_load_balancer_protocol – The routing protocol (HTTP | HTTPS | TCP | SSL | UDP). (required) :type l_load_balancer_protocol:
strParameters: l_server_certificate_id – The ID of the server certificate. (required) :type l_server_certificate_id:
strParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: The new Load Balancer Return type: dict
-
ex_create_load_balancer_listeners(load_balancer_name: str = None, l_backend_port: int = None, l_backend_protocol: str = None, l_load_balancer_port: int = None, l_load_balancer_protocol: str = None, l_server_certificate_id: str = None, dry_run: bool = False)[source]¶ Creates one or more listeners for a specified load balancer.
Parameters: load_balancer_name – The name of the load balancer for which you want to create listeners. (required) :type load_balancer_name:
strParameters: l_backend_port – The port on which the back-end VM is listening (between 1 and 65535, both included). (required) :type l_backend_port:
intParameters: l_backend_protocol – The protocol for routing traffic to back-end VMs (HTTP | HTTPS | TCP | SSL | UDP). :type l_backend_protocol:
intParameters: l_load_balancer_port – The port on which the load balancer is listening (between 1 and 65535, both included). (required) :type l_load_balancer_port:
intParameters: l_load_balancer_protocol – The routing protocol (HTTP | HTTPS | TCP | SSL | UDP). (required) :type l_load_balancer_protocol:
strParameters: l_server_certificate_id – The ID of the server certificate. (required) :type l_server_certificate_id:
strParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: The new Load Balancer Listener Return type: dict
-
ex_create_load_balancer_policy(cookie_name: str = None, load_balancer_name: str = None, policy_name: str = None, policy_type: str = None, dry_run: bool = False)[source]¶ Creates a stickiness policy with sticky session lifetimes defined by the browser lifetime. The created policy can be used with HTTP or HTTPS listeners only. If this policy is implemented by a load balancer, this load balancer uses this cookie in all incoming requests to direct them to the specified back-end server virtual machine (VM). If this cookie is not present, the load balancer sends the request to any other server according to its load-balancing algorithm.
You can also create a stickiness policy with sticky session lifetimes following the lifetime of an application-generated cookie. Unlike the other type of stickiness policy, the lifetime of the special Load Balancer Unit (LBU) cookie follows the lifetime of the application-generated cookie specified in the policy configuration. The load balancer inserts a new stickiness cookie only when the application response includes a new application cookie. The session stops being sticky if the application cookie is removed or expires, until a new application cookie is issued.
Parameters: cookie_name – The name of the application cookie used for stickiness. This parameter is required if you create a stickiness policy based on an application-generated cookie. :type cookie_name:
strParameters: load_balancer_name – The name of the load balancer for which you want to create a policy. (required) :type load_balancer_name:
strParameters: policy_name – The name of the policy. This name must be unique and consist of alphanumeric characters and dashes (-). (required) :type policy_name:
strParameters: policy_type – The type of stickiness policy you want to create: app or load_balancer. (required) :type policy_type:
strParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: The new Load Balancer Policy Return type: dict
Adds one or more tags to the specified load balancers. If a tag with the same key already exists for the load balancer, the tag value is replaced.
Parameters: load_balancer_names – The name of the load balancer for which you want to create listeners. (required) :type load_balancer_names:
strParameters: tag_keys – The key of the tag, with a minimum of 1 character. (required) :type tag_keys:
listofstrParameters: tag_values – The value of the tag, between 0 and 255 characters. (required) :type tag_values:
listofstrParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: The new Load Balancer Tags Return type: dict
-
ex_create_nat_service(public_ip: str = None, subnet_id: str = None, dry_run: bool = False)[source]¶ Creates a network address translation (NAT) service in the specified public Subnet of a Net. A NAT service enables virtual machines (VMs) placed in the private Subnet of this Net to connect to the Internet, without being accessible from the Internet. When creating a NAT service, you specify the allocation ID of the External IP (EIP) you want to use as public IP for the NAT service. Once the NAT service is created, you need to create a route in the route table of the private Subnet, with 0.0.0.0/0 as destination and the ID of the NAT service as target. For more information, see LinkPublicIP and CreateRoute. This action also enables you to create multiple NAT services in the same Net (one per public Subnet).
Parameters: public_ip – The allocation ID of the EIP to associate with the NAT service. (required) :type public_ip:
strParameters: subnet_id – The ID of the Subnet in which you want to create the NAT service. (required) :type subnet_id:
strParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: The new Nat Service Return type: dict
-
ex_create_net(ip_range: str = None, tenancy: str = None, dry_run: bool = False)[source]¶ Creates a Net with a specified IP range. The IP range (network range) of your Net must be between a /28 netmask (16 IP addresses) and a /16 netmask (65 536 IP addresses).
Parameters: ip_range – The IP range for the Net, in CIDR notation (for example, 10.0.0.0/16). (required) :type ip_range:
strParameters: tenancy – The tenancy options for the VMs (default if a VM created in a Net can be launched with any tenancy, dedicated if it can be launched with dedicated tenancy VMs running on single-tenant hardware). :type tenancy:
strParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: The new Nat Service Return type: dict
-
ex_create_net_access_point(net_id: str = None, route_table_ids: List[str] = None, service_name: str = None, dry_run: bool = False)[source]¶ Creates a Net access point to access a 3DS OUTSCALE service from this Net without using the Internet and External IP addresses. You specify the service using its prefix list name. For more information, see DescribePrefixLists: https://docs.outscale.com/api#describeprefixlists To control the routing of traffic between the Net and the specified service, you can specify one or more route tables. Virtual machines placed in Subnets associated with the specified route table thus use the Net access point to access the service. When you specify a route table, a route is automatically added to it with the destination set to the prefix list ID of the service, and the target set to the ID of the access point.
Parameters: - net_id (
str) – The ID of the Net. (required) - route_table_ids – One or more IDs of route tables to use
for the connection. :type route_table_ids:
listofstrParameters: service_name – The prefix list name corresponding to the service (for example, com.outscale.eu-west-2.osu for OSU). (required) :type service_name:
strParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: The new Access Net Point Return type: dict- net_id (
-
ex_create_net_peering(accepter_net_id: str = None, source_net_id: str = None, dry_run: bool = False)[source]¶ Requests a Net peering connection between a Net you own and a peer Net that belongs to you or another account. This action creates a Net peering connection that remains in the pending-acceptance state until it is accepted by the owner of the peer Net. If the owner of the peer Net does not accept the request within 7 days, the state of the Net peering connection becomes expired. For more information, see AcceptNetPeering: https://docs.outscale.com/api#acceptnetpeering
Parameters: accepter_net_id – The ID of the Net you want to connect with. (required) :type accepter_net_id:
strParameters: source_net_id – The ID of the Net you send the peering request from. (required) :type source_net_id:
strParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: The new Net Peering Return type: dict
-
ex_create_nic(description: str = None, private_ips_is_primary: List[str] = None, private_ips: List[str] = None, security_group_ids: List[str] = None, subnet_id: str = None, dry_run: bool = False)[source]¶ Creates a network interface card (NIC) in the specified Subnet.
Parameters: - description (
str) – A description for the NIC. - private_ips_is_primary – If true, the IP address is the
primary private IP address of the NIC. :type private_ips_is_primary:
listofstrParameters: - private_ips (
listofstr) – The private IP addresses of the NIC. - security_group_ids – One or more IDs of security groups for
the NIC. :type security_group_ids:
listofstrParameters: subnet_id – The ID of the Subnet in which you want to create the NIC. (required) :type subnet_id:
listofstrParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: The new Nic Return type: dict- description (
-
ex_create_public_ip(dry_run: bool = False)[source]¶ Create a new public ip.
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: the created public ip Return type: dict
-
ex_create_route(destination_ip_range: str = None, gateway_id: str = None, nat_service_id: str = None, net_peering_id: str = None, nic_id: str = None, route_table_id: str = None, vm_id: str = None, dry_run: bool = False)[source]¶ Creates a route in a specified route table within a specified Net. You must specify one of the following elements as the target:
- Net peering connection
- NAT VM
- Internet service
- Virtual gateway
- NAT service
- Network interface card (NIC)
The routing algorithm is based on the most specific match.
Parameters: destination_ip_range – The IP range used for the destination match, in CIDR notation (for example, 10.0.0.0/24). (required) :type destination_ip_range:
strParameters: gateway_id – The ID of an Internet service or virtual gateway attached to your Net. :type gateway_id:
strParameters: - nat_service_id (
str) – The ID of a NAT service. - net_peering_id (
str) – The ID of a Net peering connection. - nic_id (
str) – The ID of a NIC. - vm_id – The ID of a NAT VM in your Net (attached to exactly
one NIC). :type vm_id:
strParameters: route_table_id – The ID of the route table for which you want to create a route. (required) :type route_table_id: str`
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: The new Route Return type: dict
-
ex_create_route_table(net_id: str = None, dry_run: bool = False)[source]¶ Creates a route table for a specified Net. You can then add routes and associate this route table with a Subnet.
Parameters: net_id – The ID of the Net for which you want to create a route table. (required) :type net_id:
strParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: The new Route Table Return type: dict
-
ex_create_security_group(description: str = None, net_id: str = None, security_group_name: str = None, dry_run: bool = False)[source]¶ Creates a security group. This action creates a security group either in the public Cloud or in a specified Net. By default, a default security group for use in the public Cloud and a default security group for use in a Net are created. When launching a virtual machine (VM), if no security group is explicitly specified, the appropriate default security group is assigned to the VM. Default security groups include a default rule granting VMs network access to each other. When creating a security group, you specify a name. Two security groups for use in the public Cloud or for use in a Net cannot have the same name. You can have up to 500 security groups in the public Cloud. You can create up to 500 security groups per Net. To add or remove rules, use the ex_create_security_group_rule method.
Parameters: description – A description for the security group, with a maximum length of 255 ASCII printable characters. (required) :type description:
strParameters: - net_id (
str) – The ID of the Net for the security group. - security_group_name – The name of the security group.
(required) :type security_group_name:
strParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: The new Security Group Return type: dict- net_id (
-
ex_create_security_group_rule(flow: str = None, from_port_range: int = None, ip_range: str = None, rules: List[dict] = None, sg_account_id_to_link: str = None, sg_id: str = None, sg_name_to_link: str = None, to_port_range: int = None, dry_run: bool = False)[source]¶ Configures the rules for a security group. The modifications are effective at virtual machine (VM) level as quickly as possible, but a small delay may occur.
You can add one or more egress rules to a security group for use with a Net. It allows VMs to send traffic to either one or more destination IP address ranges or destination security groups for the same Net. We recommend using a set of IP permissions to authorize outbound access to a destination security group. We also recommended this method to create a rule with a specific IP protocol and a specific port range. In a set of IP permissions, we recommend to specify the the protocol.
You can also add one or more ingress rules to a security group. In the public Cloud, this action allows one or more IP address ranges to access a security group for your account, or allows one or more security groups (source groups) to access a security group for your own 3DS OUTSCALE account or another one. In a Net, this action allows one or more IP address ranges to access a security group for your Net, or allows one or more other security groups (source groups) to access a security group for your Net. All the security groups must be for the same Net.
Parameters: flow – The direction of the flow: Inbound or Outbound. You can specify Outbound for Nets only.type (required) description:
boolParameters: from_port_range – The beginning of the port range for the TCP and UDP protocols, or an ICMP type number. :type from_port_range:
intParameters: ip_range – The name The IP range for the security group rule, in CIDR notation (for example, 10.0.0.0/16). :type ip_range:
strParameters: rules – Information about the security group rule to create: https://docs.outscale.com/api#createsecuritygrouprule :type rules:
listofdictParameters: sg_account_id_to_link – The account ID of the owner of the security group for which you want to create a rule. :type sg_account_id_to_link:
strParameters: sg_id – The ID of the security group for which you want to create a rule. (required) :type sg_id:
strParameters: sg_name_to_link – The ID of the source security group. If you are in the Public Cloud, you can also specify the name of the source security group. :type sg_name_to_link:
strParameters: to_port_range – the end of the port range for the TCP and UDP protocols, or an ICMP type number. :type to_port_range:
intParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: The new Security Group Rule Return type: dict
-
ex_create_server_certificate(body: str = None, chain: str = None, name: str = None, path: str = None, private_key: str = None, dry_run: bool = False)[source]¶ Creates a server certificate and its matching private key. These elements can be used with other services (for example, to configure SSL termination on load balancers). You can also specify the chain of intermediate certification authorities if your certificate is not directly signed by a root one. You can specify multiple intermediate certification authorities in the CertificateChain parameter. To do so, concatenate all certificates in the correct order (the first certificate must be the authority of your certificate, the second must the the authority of the first one, and so on). The private key must be a RSA key in PKCS1 form. To check this, open the PEM file and ensure its header reads as follows: BEGIN RSA PRIVATE KEY. [IMPORTANT] This private key must not be protected by a password or a passphrase.
Parameters: - body (
str) – The PEM-encoded X509 certificate. (required) - chain – The PEM-encoded intermediate certification
authorities. :type chain:
strParameters: name – A unique name for the certificate. Constraints: 1-128 alphanumeric characters, pluses (+), equals (=), commas (,), periods (.), at signs (@), minuses (-), or underscores (_). (required) :type name:
strParameters: path – The path to the server certificate, set to a slash (/) if not specified. :type path:
strParameters: private_key – The PEM-encoded private key matching the certificate. (required) :type private_key:
strParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: The new server certificate Return type: dict- body (
-
ex_create_snapshot_export_task(osu_export_disk_image_format: str = None, osu_export_api_key_id: str = None, osu_export_api_secret_key: str = None, osu_export_bucket: str = None, osu_export_manifest_url: str = None, osu_export_prefix: str = None, snapshot: libcloud.compute.base.VolumeSnapshot = None, dry_run: bool = False)[source]¶ Exports a snapshot to an Object Storage Unit (OSU) bucket. This action enables you to create a backup of your snapshot or to copy it to another account. You, or other users you send a pre-signed URL to, can then download this snapshot from the OSU bucket using the CreateSnapshot method. This procedure enables you to copy a snapshot between accounts within the same Region or in different Regions. To copy a snapshot within the same Region, you can also use the CreateSnapshot direct method. The copy of the source snapshot is independent and belongs to you.
Parameters: osu_export_disk_image_format – The format of the export disk (qcow2 | vdi | vmdk). (required) :type osu_export_disk_image_format:
strParameters: osu_export_api_key_id – The API key of the OSU account that enables you to access the bucket. :type osu_export_api_key_id :
strParameters: osu_export_api_secret_key – The secret key of the OSU account that enables you to access the bucket. :type osu_export_api_secret_key :
strParameters: osu_export_bucket – The name of the OSU bucket you want to export the object to. (required) :type osu_export_bucket :
strParameters: osu_export_manifest_url – The URL of the manifest file. :type osu_export_manifest_url :
strParameters: osu_export_prefix – The prefix for the key of the OSU object. This key follows this format: prefix + object_export_task_id + ‘.’ + disk_image_format. :type osu_export_prefix :
strParameters: snapshot – The ID of the snapshot to export. (required) :type snapshot :
VolumeSnapshotParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run :
boolReturns: the created snapshot export task Return type: dict
-
ex_create_subnet(ip_range: str = None, net_id: str = None, subregion_name: str = None, dry_run: bool = False)[source]¶ Creates a Subnet in an existing Net. To create a Subnet in a Net, you have to provide the ID of the Net and the IP range for the Subnet (its network range). Once the Subnet is created, you cannot modify its IP range. The IP range of the Subnet can be either the same as the Net one if you create only a single Subnet in this Net, or a subset of the Net one. In case of several Subnets in a Net, their IP ranges must not overlap. The smallest Subnet you can create uses a /30 netmask (four IP addresses).
Parameters: ip_range – The IP range in the Subnet, in CIDR notation (for example, 10.0.0.0/16). (required) :type ip_range:
strParameters: net_id – The ID of the Net for which you want to create a Subnet. (required) :type net_id:
strParameters: subregion_name – the name of the Subregion in which you want to create the Subnet. :type subregion_name:
strParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: The new Subnet Return type: dict
-
ex_create_tag(resource_ids: list, tag_key: str = None, tag_value: str = None, dry_run: bool = False)[source]¶ Adds one tag to the specified resources. If a tag with the same key already exists for the resource, the tag value is replaced. You can tag the following resources using their IDs:
Parameters: - resource_ids (
list) – One or more resource IDs. (required) - tag_key – The key of the tag, with a minimum of 1 character.
(required) :type tag_key:
strParameters: tag_value – The value of the tag, between 0 and 255 characters. (required) :type tag_value:
strParameters: dry_run – If true, checks whether you have the required permissions to perform the action. (required) :type dry_run:
boolReturns: True if the action is successful Return type: bool- resource_ids (
Adds one or more tags to the specified resources. If a tag with the same key already exists for the resource, the tag value is replaced. You can tag the following resources using their IDs:
Parameters: - resource_ids (
list) – One or more resource IDs. (required) - tags – The key of the tag, with a minimum of 1 character.
(required) :type tags:
listofdictParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: True if the action is successful Return type: bool- resource_ids (
-
ex_create_virtual_gateway(connection_type: str = None, dry_run: bool = False)[source]¶ Creates a virtual gateway. A virtual gateway is the access point on the Net side of a VPN connection.
Parameters: connection_type – The type of VPN connection supported by the virtual gateway (only ipsec.1 is supported). (required) :type connection_type:
strParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: The new virtual gateway Return type: dict
-
ex_create_vpn_connection(client_gateway_id: str = None, connection_type: str = None, static_routes_only: bool = None, virtual_gateway_id: str = None, dry_run: bool = False)[source]¶ Creates a VPN connection between a specified virtual gateway and a specified client gateway. You can create only one VPN connection between a virtual gateway and a client gateway.
Parameters: - client_gateway_id (
str) – The ID of the client gateway. (required) - connection_type – The type of VPN connection (only ipsec.1
is supported). (required) :type connection_type:
strParameters: static_routes_only – If false, the VPN connection uses dynamic routing with Border Gateway Protocol (BGP). If true, routing is controlled using static routes. For more information about how to create and delete static routes, see CreateVpnConnectionRoute: https://docs.outscale.com/api#createvpnconnectionroute and DeleteVpnConnectionRoute: https://docs.outscale.com/api#deletevpnconnectionroute :type static_routes_only:
boolParameters: virtual_gateway_id – The ID of the virtual gateway. (required) :type virtual_gateway_id:
strParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: The new Vpn Connection Return type: dict- client_gateway_id (
-
ex_create_vpn_connection_route(destination_ip_range: str = None, vpn_connection_id: str = None, dry_run: bool = False)[source]¶ Creates a static route to a VPN connection. This enables you to select the network flows sent by the virtual gateway to the target VPN connection.
Parameters: destination_ip_range – The network prefix of the route, in CIDR notation (for example, 10.12.0.0/16).(required) :type destination_ip_range:
strParameters: vpn_connection_id – The ID of the target VPN connection of the static route. (required) :type vpn_connection_id:
strParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: True if the action is successful Return type: bool
-
ex_delete_access_key(access_key_id: str, dry_run: bool = False)[source]¶ Deletes the specified access key associated with the account that sends the request.
Parameters: access_key_id – The ID of the access key you want to delete. (required) :type access_key_id:
strParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: True if the action is successful Return type: bool
-
ex_delete_api_access_rule(api_access_rule_id: str, dry_run: bool = False)[source]¶ Delete an API access rule. You cannot delete the last remaining API access rule.
Parameters: api_access_rule_id – The id of the targeted rule (required). :type api_access_rule_id:
strParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: true if successful. Return type: boolif successful ordict
Deletes a specified Client Certificate Authority (CA).
Parameters: - ca_id (
str) – The ID of the CA you want to delete. (required) - dry_run – If true, checks whether you have the required
permissions to perform the action. :type dry_run:
bool- ca_id (
-
ex_delete_client_gateway(client_gateway_id: str = None, dry_run: bool = False)[source]¶ Deletes a client gateway. You must delete the VPN connection before deleting the client gateway.
Parameters: client_gateway_id – The ID of the client gateway you want to delete. (required) :type client_gateway_id:
strParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: Returns True if action is successful Return type: bool
-
ex_delete_dhcp_options(dhcp_options_set_id: str = None, dry_run: bool = False)[source]¶ Deletes a specified DHCP options set. Before deleting a DHCP options set, you must disassociate it from the Nets you associated it with. To do so, you need to associate with each Net a new set of DHCP options, or the default one if you do not want to associate any DHCP options with the Net.
Parameters: dhcp_options_set_id – The ID of the DHCP options set you want to delete. (required) :type dhcp_options_set_id:
strParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: True if the action is successful Return type: bool
-
ex_delete_direct_link(direct_link_id: str = None, dry_run: bool = False)[source]¶ Deletes a specified DirectLink. Before deleting a DirectLink, ensure that all your DirectLink interfaces related to this DirectLink are deleted.
Parameters: direct_link_id – The ID of the DirectLink you want to delete. (required) :type direct_link_id:
strParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: True if the action is successful Return type: bool
-
ex_delete_direct_link_interface(direct_link_interface_id: str = None, dry_run: bool = False)[source]¶ Deletes a specified DirectLink interface.
Parameters: direct_link_interface_id – the ID of the DirectLink interface you want to delete. (required) :type direct_link_interface_id:
strParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: True if the action is successful Return type: bool
-
ex_delete_export_task(export_task_id: str = None, dry_run: bool = False)[source]¶ Deletes an export task. If the export task is not running, the command fails and an error is returned.
Parameters: export_task_id – The ID of the export task to delete. (required) :type export_task_id:
strParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: True if the action is successful Return type: bool
-
ex_delete_flexible_gpu(flexible_gpu_id: str = None, dry_run: bool = False)[source]¶ Releases a flexible GPU (fGPU) from your account. The fGPU becomes free to be used by someone else.
Parameters: flexible_gpu_id – The ID of the fGPU you want to delete. (required) :type flexible_gpu_id:
strParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: True if the action is successful Return type: bool
-
ex_delete_internet_service(internet_service_id: str = None, dry_run: bool = False)[source]¶ Deletes an Internet service. Before deleting an Internet service, you must detach it from any Net it is attached to.
Parameters: internet_service_id – The ID of the Internet service you want to delete.(required) :type internet_service_id:
strParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: True if the action is successful Return type: bool
-
ex_delete_listener_rule(listener_rule_name: str = None, dry_run: bool = False)[source]¶ Deletes a listener rule. The previously active rule is disabled after deletion.
Parameters: listener_rule_name – The name of the rule you want to delete. (required) :type listener_rule_name:
strParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: True if the action is successful Return type: bool
-
ex_delete_load_balancer(load_balancer_name: str = None, dry_run: bool = False)[source]¶ Deletes a specified load balancer.
Parameters: load_balancer_name – The name of the load balancer you want to delete. (required) :type load_balancer_name:
strParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: True if the action is successful Return type: bool
-
ex_delete_load_balancer_listeners(load_balancer_name: str = None, load_balancer_ports: List[int] = None, dry_run: bool = False)[source]¶ Deletes listeners of a specified load balancer.
Parameters: load_balancer_name – The name of the load balancer for which you want to delete listeners. (required) :type load_balancer_name:
strParameters: load_balancer_ports – One or more port numbers of the listeners you want to delete.. (required) :type load_balancer_ports:
listofintParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: True if the action is successful Return type: bool
-
ex_delete_load_balancer_policy(load_balancer_name: str = None, policy_name: str = None, dry_run: bool = False)[source]¶ Deletes a specified policy from a load balancer. In order to be deleted, the policy must not be enabled for any listener.
Parameters: load_balancer_name – The name of the load balancer for which you want to delete a policy. (required) :type load_balancer_name:
strParameters: policy_name – The name of the policy you want to delete. (required) :type policy_name:
strParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: True if the action is successful Return type: bool
Deletes a specified load balancer tags.
Parameters: load_balancer_names – The names of the load balancer for which you want to delete tags. (required) :type load_balancer_names:
strParameters: tag_keys – The key of the tag, with a minimum of 1 character. :type tag_keys:
strParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: True if the action is successful Return type: bool
-
ex_delete_nat_service(nat_service_id: str = None, dry_run: bool = False)[source]¶ Deletes a specified network address translation (NAT) service. This action disassociates the External IP address (EIP) from the NAT service, but does not release this EIP from your account. However, it does not delete any NAT service routes in your route tables.
Parameters: nat_service_id – the ID of the NAT service you want to delete. (required) :type nat_service_id:
strParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: True if the action is successful Return type: bool
-
ex_delete_net(net_id: str = None, dry_run: bool = False)[source]¶ Deletes a specified Net. Before deleting the Net, you need to delete or detach all the resources associated with the Net:
- Virtual machines (VMs)
- Net peering connections
- Custom route tables
- External IP addresses (EIPs) allocated to resources in the Net
- Network Interface Cards (NICs) created in the Subnets
- Virtual gateways, Internet services and NAT services
- Load balancers
- Security groups
- Subnets
Parameters: - net_id (
str) – The ID of the Net you want to delete. (required) - dry_run – If true, checks whether you have the required
permissions to perform the action. :type dry_run:
boolReturns: True if the action is successful Return type: bool
-
ex_delete_net_access_point(net_access_point_id: str = None, dry_run: bool = False)[source]¶ Deletes one or more Net access point. This action also deletes the corresponding routes added to the route tables you specified for the Net access point.
Parameters: net_access_point_id – The ID of the Net access point. (required) :type net_access_point_id:
strParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: True if the action is successful Return type: bool
-
ex_delete_net_peering(net_peering_id: List[str] = None, dry_run: bool = False)[source]¶ Deletes a Net peering connection. If the Net peering connection is in the active state, it can be deleted either by the owner of the requester Net or the owner of the peer Net. If it is in the pending-acceptance state, it can be deleted only by the owner of the requester Net. If it is in the rejected, failed, or expired states, it cannot be deleted.
Parameters: net_peering_id – The ID of the Net peering connection you want to delete. (required) :type net_peering_id:
strParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: True if the action is successful Return type: bool
-
ex_delete_nic(nic_id: str = None, dry_run: bool = False)[source]¶ Deletes the specified network interface card (NIC). The network interface must not be attached to any virtual machine (VM).
Parameters: - nic_id (
str) – The ID of the NIC you want to delete. (required) - dry_run – If true, checks whether you have the required
permissions to perform the action. :type dry_run:
boolReturns: True if the action is successful Return type: bool- nic_id (
-
ex_delete_public_ip(dry_run: bool = False, public_ip: str = None, public_ip_id: str = None)[source]¶ Delete public ip.
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolParameters: public_ip – The EIP. In the public Cloud, this parameter is required. :type public_ip:
strParameters: public_ip_id – The ID representing the association of the EIP with the VM or the NIC. In a Net, this parameter is required. :type public_ip_id:
strReturns: request Return type: dict
-
ex_delete_route(destination_ip_range: str = None, route_table_id: str = None, dry_run: bool = False)[source]¶ Deletes a route from a specified route table.
Parameters: destination_ip_range – The exact IP range for the route. (required) :type destination_ip_range:
strParameters: route_table_id – The ID of the route table from which you want to delete a route. (required) :type route_table_id:
strParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: True if the action is successful Return type: bool
-
ex_delete_route_table(route_table_id: str = None, dry_run: bool = False)[source]¶ Deletes a specified route table. Before deleting a route table, you must disassociate it from any Subnet. You cannot delete the main route table.
Parameters: route_table_id – The ID of the route table you want to delete. (required) :type route_table_id:
strParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: True if the action is successful Return type: bool
-
ex_delete_security_group(security_group_id: str = None, security_group_name: str = None, dry_run: bool = False)[source]¶ Deletes a specified security group. You can specify either the name of the security group or its ID. This action fails if the specified group is associated with a virtual machine (VM) or referenced by another security group.
Parameters: security_group_id – The ID of the security group you want to delete. :type security_group_id:
strParameters: - security_group_name (
str) – the name of the security group. - dry_run – If true, checks whether you have the required
permissions to perform the action. :type dry_run:
boolReturns: True if the action is successful Return type: bool- security_group_name (
-
ex_delete_security_group_rule(flow: str = None, from_port_range: int = None, ip_protocol: str = None, ip_range: str = None, rules: List[dict] = None, sg_account_id_to_unlink: str = None, sg_id: str = None, sg_name_to_unlink: str = None, to_port_range: int = None, dry_run: bool = False)[source]¶ Deletes one or more inbound or outbound rules from a security group. For the rule to be deleted, the values specified in the deletion request must exactly match the value of the existing rule. In case of TCP and UDP protocols, you have to indicate the destination port or range of ports. In case of ICMP protocol, you have to specify the ICMP type and code. Rules (IP permissions) consist of the protocol, IP address range or source security group. To remove outbound access to a destination security group, we recommend to use a set of IP permissions. We also recommend to specify the protocol in a set of IP permissions.
Parameters: flow – The direction of the flow: Inbound or Outbound. You can specify Outbound for Nets only.type (required) description:
boolParameters: from_port_range – The beginning of the port range for the TCP and UDP protocols, or an ICMP type number. :type from_port_range:
intParameters: ip_range – The name The IP range for the security group rule, in CIDR notation (for example, 10.0.0.0/16). :type ip_range:
strParameters: ip_protocol – The IP protocol name (tcp, udp, icmp) or protocol number. By default, -1, which means all protocols. :type ip_protocol:
strParameters: rules – Information about the security group rule to create: https://docs.outscale.com/api#createsecuritygrouprule :type rules:
listofdictParameters: sg_account_id_to_unlink – The account ID of the owner of the security group for which you want to delete a rule. :type sg_account_id_to_unlink:
strParameters: sg_id – The ID of the security group for which you want to delete a rule. (required) :type sg_id:
strParameters: sg_name_to_unlink – The ID of the source security group. If you are in the Public Cloud, you can also specify the name of the source security group. :type sg_name_to_unlink:
strParameters: to_port_range – the end of the port range for the TCP and UDP protocols, or an ICMP type number. :type to_port_range:
intParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: The new Security Group Rule Return type: dict
-
ex_delete_server_certificate(name: str = None, dry_run: bool = False)[source]¶ Deletes a specified server certificate.
Parameters: name – The name of the server certificate you want to delete. (required) :type name:
strParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: True if the action is successful Return type: bool
-
ex_delete_subnet(subnet_id: str = None, dry_run: bool = False)[source]¶ Deletes a specified Subnet. You must terminate all the running virtual machines (VMs) in the Subnet before deleting it.
Parameters: subnet_id – The ID of the Subnet you want to delete. (required) :type subnet_id:
strParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: True if the action is successful Return type: bool
Deletes one or more tags from the specified resources.
Parameters: - resource_ids (
list) – One or more resource IDs. (required) - tags – The key of the tag, with a minimum of 1 character.
(required) :type tags:
listofdictParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: True if the action is successful Return type: bool- resource_ids (
-
ex_delete_virtual_gateway(virtual_gateway_id: str = None, dry_run: bool = False)[source]¶ Deletes a specified virtual gateway. Before deleting a virtual gateway, we recommend to detach it from the Net and delete the VPN connection.
Parameters: virtual_gateway_id – The ID of the virtual gateway you want to delete. (required) :type virtual_gateway_id:
strParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: True if the action is successful Return type: bool
-
ex_delete_vpn_connection(vpn_connection_id: str = None, dry_run: bool = False)[source]¶ Deletes a specified VPN connection. If you want to delete a Net and all its dependencies, we recommend to detach the virtual gateway from the Net and delete the Net before deleting the VPN connection. This enables you to delete the Net without waiting for the VPN connection to be deleted.
Parameters: vpn_connection_id – the ID of the VPN connection you want to delete. (required) :type vpn_connection_id:
strParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: True if the action is successful Return type: bool
-
ex_delete_vpn_connection_route(vpn_connection_id: str = None, destination_ip_range: str = None, dry_run: bool = False)[source]¶ Deletes a specified VPN connection. If you want to delete a Net and all its dependencies, we recommend to detach the virtual gateway from the Net and delete the Net before deleting the VPN connection. This enables you to delete the Net without waiting for the VPN connection to be deleted.
Parameters: vpn_connection_id – the ID of the VPN connection you want to delete. (required) :type vpn_connection_id:
strParameters: destination_ip_range – The network prefix of the route to delete, in CIDR notation (for example, 10.12.0.0/16). (required) :type destination_ip_range:
strParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: True if the action is successful Return type: bool
-
ex_deregister_vms_in_load_balancer(backend_vm_ids: List[str] = None, load_balancer_name: str = None, dry_run: bool = False)[source]¶ Deregisters a specified virtual machine (VM) from a load balancer.
Parameters: backend_vm_ids – One or more IDs of back-end VMs. (required) :type backend_vm_ids:
strParameters: load_balancer_name – The name of the load balancer. (required) :type load_balancer_name:
strParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: True if the action is successful Return type: bool
-
ex_detach_public_ip(public_ip: str = None, link_public_ip_id: str = None, dry_run: bool = False)[source]¶ Detach public ip from a node.
Parameters: public_ip – (Required in a Net) The ID representing the association of the EIP with the VM or the NIC :type public_ip:
strParameters: link_public_ip_id – (Required in a Net) The ID representing the association of the EIP with the VM or the NIC. :type link_public_ip_id:
strParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: the attached volume Return type: dict
-
ex_link_flexible_gpu(flexible_gpu_id: str = None, vm_id: str = None, dry_run: bool = False)[source]¶ Attaches one of your allocated flexible GPUs (fGPUs) to one of your virtual machines (Nodes). The fGPU is in the attaching state until the VM is stopped, after which it becomes attached.
Parameters: flexible_gpu_id – The ID of the fGPU you want to attach. (required) :type flexible_gpu_id:
strParameters: vm_id – The ID of the VM you want to attach the fGPU to. (required) :type vm_id:
strParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: True if the action is successful Return type: bool
-
ex_link_internet_service(internet_service_id: str = None, net_id: str = None, dry_run: bool = False)[source]¶ Attaches an Internet service to a Net. To enable the connection between the Internet and a Net, you must attach an Internet service to this Net.
Parameters: internet_service_id – The ID of the Internet service you want to attach. (required) :type internet_service_id:
strParameters: net_id – The ID of the Net to which you want to attach the Internet service. (required) :type net_id:
strParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: True if the action is successful Return type: bool
-
ex_link_nic(device_number: int = None, nic_id: str = None, node: str = None, dry_run: bool = False)[source]¶ Attaches a network interface card (NIC) to a virtual machine (VM). The interface and the VM must be in the same Subregion. The VM can be either running or stopped. The NIC must be in the available state.
Parameters: - nic_id (
str) – The ID of the NIC you want to delete. (required) - device_number – The ID of the NIC you want to delete.
(required) :type device_number:
strParameters: node – The index of the VM device for the NIC attachment (between 1 and 7, both included). :type node:
NodeParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: a Link Id Return type: str- nic_id (
-
ex_link_private_ips(allow_relink: bool = None, nic_id: str = None, private_ips: List[str] = None, secondary_private_ip_count: int = None, dry_run: bool = False)[source]¶ Assigns one or more secondary private IP addresses to a specified network interface card (NIC). This action is only available in a Net. The private IP addresses to be assigned can be added individually using the PrivateIps parameter, or you can specify the number of private IP addresses to be automatically chosen within the Subnet range using the SecondaryPrivateIpCount parameter. You can specify only one of these two parameters. If none of these parameters are specified, a private IP address is chosen within the Subnet range.
Parameters: allow_relink – If true, allows an IP address that is already assigned to another NIC in the same Subnet to be assigned to the NIC you specified. :type allow_relink:
strParameters: - nic_id (
str) – The ID of the NIC. (required) - private_ips – The secondary private IP address or addresses
you want to assign to the NIC within the IP address range of the Subnet. :type private_ips:
listofstrParameters: secondary_private_ip_count – The secondary private IP a ddress or addresses you want to assign to the NIC within the IP address range of the Subnet. :type secondary_private_ip_count:
intParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool:return:True if the action is successful :rtype:
bool- nic_id (
-
ex_link_route_table(route_table_id: str = None, subnet_id: str = None, dry_run: bool = False)[source]¶ Associates a Subnet with a route table. The Subnet and the route table must be in the same Net. The traffic is routed according to the route table defined within this Net. You can associate a route table with several Subnets.
Parameters: - route_table_id (
str) – The ID of the route table. (required) - subnet_id (
str) – The ID of the Subnet. (required) - dry_run – If true, checks whether you have the required
permissions to perform the action. :type dry_run:
boolReturns: Link Route Table Id Return type: str- route_table_id (
-
ex_link_virtual_gateway(net_id: str = None, virtual_gateway_id: str = None, dry_run: bool = False)[source]¶ Attaches a virtual gateway to a Net.
Parameters: net_id – The ID of the Net to which you want to attach the virtual gateway. (required) :type net_id:
strParameters: virtual_gateway_id – The ID of the virtual gateway. (required) :type virtual_gateway_id:
strParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: Return type: dict
-
ex_list_access_keys(access_key_ids: list = None, states: list = None, dry_run: bool = False)[source]¶ Returns information about the access key IDs of a specified user. If the user does not have any access key ID, this action returns an empty list.
Parameters: - access_key_ids (
listofstr) – The IDs of the access keys. - states (
listofstr) – The states of the access keys (ACTIVE | INACTIVE). - dry_run – If true, checks whether you have the required
permissions to perform the action. :type dry_run:
boolReturns: listof Access KeysReturn type: listofdict- access_key_ids (
-
ex_list_client_gateways(client_gateway_ids: list = None, bgp_asns: list = None, connection_types: list = None, public_ips: list = None, states: list = None, tag_keys: list = None, tag_values: list = None, tags: list = None, dry_run: bool = False)[source]¶ Deletes a client gateway. You must delete the VPN connection before deleting the client gateway.
Parameters: client_gateway_ids – The IDs of the client gateways. you want to delete. (required) :type client_gateway_ids:
listof ``str`Parameters: bgp_asns – The Border Gateway Protocol (BGP) Autonomous System Numbers (ASNs) of the connections. :type bgp_asns:
listofintParameters: connection_types – The types of communication tunnels used by the client gateways (only ipsec.1 is supported). (required) :type connection_types:
list```of ``strParameters: public_ips – The public IPv4 addresses of the client gateways. :type public_ips:
listofstrParameters: states – The states of the client gateways (pending | available | deleting | deleted). :type states:
listofstrParameters: tag_keys – The keys of the tags associated with the client gateways. :type tag_keys:
listofstrParameters: tag_values – The values of the tags associated with the client gateways. :type tag_values:
listofstrParameters: tags – the key/value combination of the tags associated with the client gateways, in the following format: “Filters”:{“Tags”:[“TAGKEY=TAGVALUE”]}. :type tags:
listofstrParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: Returns listof Client GatewayReturn type: listofdict
-
ex_list_consumption_account(from_date: str = None, to_date: str = None, dry_run: bool = False)[source]¶ Displays information about the consumption of your account for each billable resource within the specified time period.
Parameters: from_date – The beginning of the time period, in ISO 8601 date-time format (for example, 2017-06-14 or 2017-06-14T00:00:00Z). (required) :type from_date:
strParameters: to_date – The end of the time period, in ISO 8601 date-time format (for example, 2017-06-30 or 2017-06-30T00:00:00Z). (required) :type to_date:
strParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: a list of Consumption Entries Return type: listofdict
-
ex_list_dhcp_options(default: bool = None, dhcp_options_set_id: list = None, domaine_names: list = None, domaine_name_servers: list = None, ntp_servers: list = None, tag_keys: list = None, tag_values: list = None, tags: list = None, dry_run: bool = False)[source]¶ Retrieves information about the content of one or more DHCP options sets.
Parameters: default – SIf true, lists all default DHCP options set. If false, lists all non-default DHCP options set. :type default:
listofboolParameters: - dhcp_options_set_id (
listofstr) – The IDs of the DHCP options sets. - domaine_names – The domain names used for the DHCP
options sets. :type domaine_names:
listofstrParameters: domaine_name_servers – The domain name servers used for the DHCP options sets. :type domaine_name_servers:
listofstrParameters: ntp_servers – The Network Time Protocol (NTP) servers used for the DHCP options sets. :type ntp_servers:
listofstrParameters: tag_keys – The keys of the tags associated with the DHCP options sets. :type ntp_servers:
listofstrParameters: tag_values – The values of the tags associated with the DHCP options sets. :type tag_values:
listofstrParameters: tags – The key/value combination of the tags associated with the DHCP options sets, in the following format: “Filters”:{“Tags”:[“TAGKEY=TAGVALUE”]}. :type tags:
listofstrParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: a listof Dhcp OptionsReturn type: listofdict- dhcp_options_set_id (
-
ex_list_direct_link_interfaces(direct_link_ids: list = None, direct_link_interface_ids: list = None, dry_run: bool = False)[source]¶ Lists all DirectLinks in the Region.
Parameters: direct_link_interface_ids – The IDs of the DirectLink interfaces. :type direct_link_interface_ids:
listofstrParameters: - direct_link_ids (
listofstr) – The IDs of the DirectLinks. - dry_run – If true, checks whether you have the required
permissions to perform the action. :type dry_run:
boolReturns: listof Direct Link interfacesReturn type: listofdict- direct_link_ids (
-
ex_list_direct_links(direct_link_ids: list = None, dry_run: bool = False)[source]¶ Lists all DirectLinks in the Region.
Parameters: - direct_link_ids (
listofstr) – The IDs of the DirectLinks. (required) - dry_run – If true, checks whether you have the required
permissions to perform the action. :type dry_run:
boolReturns: listof Direct LinksReturn type: listofdict- direct_link_ids (
-
ex_list_flexible_gpu_catalog(dry_run: bool = False)[source]¶ Lists all flexible GPUs available in the public catalog.
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: Returns the Flexible Gpu Catalog Return type: listofdict
-
ex_list_flexible_gpus(delete_on_vm_deletion: bool = None, flexible_gpu_ids: list = None, generations: list = None, model_names: list = None, states: list = None, subregion_names: list = None, vm_ids: list = None, dry_run: bool = False)[source]¶ Lists one or more flexible GPUs (fGPUs) allocated to your account.
Parameters: delete_on_vm_deletion – Indicates whether the fGPU is deleted when terminating the VM. :type delete_on_vm_deletion:
boolParameters: - flexible_gpu_ids (
listofstr) – One or more IDs of fGPUs. - generations – The processor generations that the fGPUs are
compatible with. (required) :type generations:
listofstrParameters: model_names – One or more models of fGPUs. For more information, see About Flexible GPUs: https://wiki.outscale.net/display/EN/About+Flexible+GPUs :type model_names:
listofstrParameters: states – The states of the fGPUs (allocated | attaching | attached | detaching). :type states:
listofstrParameters: subregion_names – The Subregions where the fGPUs are located. :type subregion_names:
listofstrParameters: - vm_ids (
listofstr) – One or more IDs of VMs. - dry_run – If true, checks whether you have the required
permissions to perform the action. :type dry_run:
boolReturns: Returns the Flexible Gpu Catalog Return type: listofdict- flexible_gpu_ids (
-
ex_list_image_export_tasks(dry_run: bool = False, task_ids: List[str] = None)[source]¶ Lists one or more image export tasks.
Parameters: - task_ids (
listofstr) – The IDs of the export tasks. - dry_run – If true, checks whether you have the required
permissions to perform the action. :type dry_run:
boolReturns: image export tasks Return type: listofdict- task_ids (
-
ex_list_internet_services(internet_service_ids: List[str] = None, link_net_ids: List[str] = None, link_states: List[str] = None, tag_keys: List[str] = None, tag_values: List[str] = None, tags: List[str] = None, dry_run: bool = False)[source]¶ Lists one or more of your Internet services. An Internet service enables your virtual machines (VMs) launched in a Net to connect to the Internet. By default, a Net includes an Internet service, and each Subnet is public. Every VM launched within a default Subnet has a private and a public IP addresses.
Parameters: - internet_service_ids (
listofstr) – One or more filters. - link_net_ids – The IDs of the Nets the Internet services
are attached to. :type link_net_ids:
listofstrParameters: link_states – The current states of the attachments between the Internet services and the Nets (only available, if the Internet gateway is attached to a VPC). (required) :type link_states:
listofstrParameters: tag_keys – The keys of the tags associated with the Internet services. :type tag_keys:
listofstrParameters: tag_values – The values of the tags associated with the Internet services. :type tag_values:
listofstrParameters: tags – The key/value combination of the tags associated with the Internet services, in the following format: “Filters”:{“Tags”:[“TAGKEY=TAGVALUE”]}. :type tags:
listofstrParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: Returns the list of Internet Services Return type: listofdict- internet_service_ids (
-
ex_list_listener_rules(listener_rule_names: List[str] = None, dry_run: bool = False)[source]¶ Describes one or more listener rules. By default, this action returns the full list of listener rules for the account.
Parameters: - listener_rule_names (
listofstr) – The names of the listener rules. - dry_run – If true, checks whether you have the required
permissions to perform the action. :type dry_run:
boolReturns: Returns the list of Listener Rules Return type: listofdict- listener_rule_names (
Describes the tags associated with one or more specified load balancers.
Parameters: load_balancer_names – The names of the load balancer. (required) :type load_balancer_names:
listofstrParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: a list of load balancer tags Return type: listofdict
-
ex_list_load_balancers(load_balancer_names: List[str] = None, dry_run: bool = False)[source]¶ Lists one or more load balancers and their attributes.
Parameters: load_balancer_names – The names of the load balancer. (required) :type load_balancer_names:
listofstrParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: a list of load balancer Return type: listofdict
-
ex_list_nat_services(nat_service_ids: List[str] = None, net_ids: List[str] = None, states: List[str] = None, subnet_ids: List[str] = None, tag_keys: List[str] = None, tag_values: List[str] = None, tags: List[str] = None, dry_run: bool = False)[source]¶ Lists one or more network address translation (NAT) services.
Parameters: - nat_service_ids (
listofstr) – The IDs of the NAT services. - net_ids (
listofstr) – The IDs of the Nets in which the NAT services are. - states – The states of the NAT services
(pending | available | deleting | deleted). :type states:
listofstrParameters: subnet_ids – The IDs of the Subnets in which the NAT services are. :type subnet_ids:
listofstrParameters: tag_keys – The keys of the tags associated with the NAT services. :type tag_keys:
listofstrParameters: tag_values – The values of the tags associated with the NAT services. :type tag_values:
listofstrParameters: tags – The values of the tags associated with the NAT services. :type tags:
listofstrParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: a list of back end vms health Return type: listofdict- nat_service_ids (
-
ex_list_net_peerings(accepter_net_account_ids: List[str] = None, accepter_net_ip_ranges: List[str] = None, accepter_net_net_ids: List[str] = None, net_peering_ids: List[str] = None, source_net_account_ids: List[str] = None, source_net_ip_ranges: List[str] = None, source_net_net_ids: List[str] = None, state_messages: List[str] = None, states_names: List[str] = None, tag_keys: List[str] = None, tag_values: List[str] = None, tags: List[str] = None, dry_run: bool = False)[source]¶ Lists one or more peering connections between two Nets.
Parameters: accepter_net_account_ids – The account IDs of the owners of the peer Nets. :type accepter_net_account_ids:
listofstrParameters: accepter_net_ip_ranges – The IP ranges of the peer Nets, in CIDR notation (for example, 10.0.0.0/24). :type accepter_net_ip_ranges:
listofstrParameters: - accepter_net_net_ids (
listofstr) – The IDs of the peer Nets. - source_net_account_ids – The account IDs of the owners of
the peer Nets. :type source_net_account_ids:
listofstrParameters: - source_net_ip_ranges (
listofstr) – The IP ranges of the peer Nets. - source_net_net_ids (
listofstr) – The IDs of the peer Nets. - net_peering_ids (
listofstr) – The IDs of the Net peering connections. - state_messages – Additional information about the states of
the Net peering connections. :type state_messages:
listofstrParameters: states_names – The states of the Net peering connections (pending-acceptance | active | rejected | failed | expired | deleted). :type states_names:
listofstrParameters: tag_keys – The keys of the tags associated with the Net peering connections. :type tag_keys:
listofstrParameters: tag_values – the values of the tags associated with the Net peering connections. :type tag_values:
listofstrParameters: tags – The key/value combination of the tags associated with the Net peering connections, in the following format: “Filters”:{“Tags”:[“TAGKEY=TAGVALUE”]}. :type tags:
listofstrParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: A list of Net Access Points Return type: listofdict- accepter_net_net_ids (
-
ex_list_nets(dhcp_options_set_ids: List[str] = None, ip_ranges: List[str] = None, is_default: bool = None, net_ids: List[str] = None, states: List[str] = None, tag_keys: List[str] = None, tag_values: List[str] = None, tags: List[str] = None, dry_run: bool = False)[source]¶ Lists one or more Nets.
Parameters: - dhcp_options_set_ids (
listofstr) – The IDs of the DHCP options sets. - ip_ranges – The IP ranges for the Nets, in CIDR notation
(for example, 10.0.0.0/16). :type ip_ranges:
listofstrParameters: - is_default (
bool) – If true, the Net used is the default one. - net_ids (
listofstr) – The IDs of the Nets. - states (
listofstr) – The states of the Nets (pending | available). - tag_keys (
listofstr) – The keys of the tags associated with the Nets. - tag_values – The values of the tags associated with the
Nets. :type tag_values:
listofstrParameters: tags – The key/value combination of the tags associated with the Nets, in the following format: “Filters”:{“Tags”:[“TAGKEY=TAGVALUE”]}. :type tags:
listofstrParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: A list of Nets Return type: listofdict- dhcp_options_set_ids (
-
ex_list_nets_access_point_services(service_ids: List[str] = None, service_names: List[str] = None, dry_run: bool = False)[source]¶ Describes 3DS OUTSCALE services available to create Net access points. For more information, see CreateNetAccessPoint: https://docs.outscale.com/api#createnetaccesspoint
Parameters: - service_ids (
listofstr) – The IDs of the services. - service_names – The names of the prefix lists, which
identify the 3DS OUTSCALE services they are associated with. :type service_names:
listofstrParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: A list of Services Return type: listofdict- service_ids (
-
ex_list_nets_access_points(net_access_point_ids: List[str] = None, net_ids: List[str] = None, service_names: List[str] = None, states: List[str] = None, tag_keys: List[str] = None, tag_values: List[str] = None, tags: List[str] = None, dry_run: bool = False)[source]¶ Describes one or more Net access points.
Parameters: - net_access_point_ids (
listofstr) – The IDs of the Net access points. - net_ids (
listofstr) – The IDs of the Nets. - service_names – The The names of the prefix lists
corresponding to the services. For more information, see DescribePrefixLists: https://docs.outscale.com/api#describeprefixlists :type service_names:
listofstrParameters: states – The states of the Net access points (pending | available | deleting | deleted). :type states:
listofstrParameters: tag_keys – The keys of the tags associated with the Net access points. :type tag_keys:
listofstrParameters: tag_values – The values of the tags associated with the Net access points. :type tag_values:
listofstrParameters: tags – The key/value combination of the tags associated with the Net access points, in the following format: “Filters”:{“Tags”:[“TAGKEY=TAGVALUE”]}. :type tags:
listofstrParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: A list of Net Access Points Return type: listofdict- net_access_point_ids (
-
ex_list_nics(link_nic_sort_numbers: List[int] = None, link_nic_vm_ids: List[str] = None, nic_ids: List[str] = None, private_ips_private_ips: List[str] = None, subnet_ids: List[str] = None, dry_run: bool = False)[source]¶ Lists one or more network interface cards (NICs). A NIC is a virtual network interface that you can attach to a virtual machine (VM) in a Net.
Parameters: link_nic_sort_numbers – The device numbers the NICs are attached to. :type link_nic_sort_numbers:
listofintParameters: link_nic_vm_ids – The IDs of the VMs the NICs are attached to. :type link_nic_vm_ids:
listofstrParameters: - nic_ids (
listofstr) – The IDs of the NICs. - private_ips_private_ips – The private IP addresses of the
NICs. :type private_ips_private_ips:
listofstrParameters: - subnet_ids (
listofstr) – The IDs of the Subnets for the NICs. - dry_run – If true, checks whether you have the required
permissions to perform the action. :type dry_run:
boolReturns: A list of the Nics Return type: listofdict- nic_ids (
-
ex_list_node_types(bsu_optimized: bool = None, memory_sizes: List[int] = None, vcore_counts: List[int] = None, vm_type_names: List[str] = None, volume_counts: List[int] = None, volume_sizes: List[int] = None, dry_run: bool = False)[source]¶ Lists one or more predefined VM types.
Parameters: bsu_optimized – Indicates whether the VM is optimized for BSU I/O. :type bsu_optimized:
boolParameters: - memory_sizes (
listofint) – The amounts of memory, in gibibytes (GiB). - vcore_counts (
listofint) – The numbers of vCores. - vm_type_names – The names of the VM types. For more
information, see Instance Types. :type vm_type_names:
listofstrParameters: volume_counts – The maximum number of ephemeral storage disks. :type volume_counts:
listofintParameters: volume_sizes – The size of one ephemeral storage disk, in gibibytes (GiB). :type volume_sizes:
listofintParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: list of vm types Return type: listofdict- memory_sizes (
-
ex_list_nodes_states(all_vms: bool = None, subregion_names: List[str] = None, vm_ids: List[str] = None, vm_states: List[str] = None, dry_run: bool = False)[source]¶ Lists the status of one or more virtual machines (VMs).
Parameters: all_vms – If true, includes the status of all VMs. By default or if set to false, only includes the status of running VMs. :type all_vms:
boolParameters: - subregion_names (
listofstr) – The names of the Subregions of the VMs. - vm_ids (
listofstr) – One or more IDs of VMs. - vm_states – The states of the VMs
(pending | running | stopping | stopped | shutting-down | terminated | quarantine) :type vm_states:
listofstrParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: list the status of one or more vms Return type: listofdict- subregion_names (
-
ex_list_product_types(product_type_ids: List[str] = None, dry_run: bool = False)[source]¶ Describes one or more product types.
Parameters: - product_type_ids (
listofstr) – The IDs of the product types. - dry_run – If true, checks whether you have the required
permissions to perform the action. :type dry_run:
boolReturns: A listof Product TypeReturn type: listofdict- product_type_ids (
-
ex_list_public_ip_ranges(dry_run: bool = False)[source]¶ Lists available regions details.
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: regions details Return type: dict
-
ex_list_public_ips(data: str = '{}')[source]¶ List all public IPs.
Parameters: data – json stringify following the outscale api documentation for filter :type data:
stringReturns: nodes Return type: dict
-
ex_list_quotas(collections: List[str] = None, quota_names: List[str] = None, quota_types: List[str] = None, short_descriptions: List[str] = None, dry_run: bool = False)[source]¶ Describes one or more of your quotas.
Parameters: - collections (
listofstr) – The group names of the quotas. - quota_names (
listofstr) – The names of the quotas. - quota_types – The resource IDs if these are
resource-specific quotas, global if they are not. :type quota_types:
listofstrParameters: - short_descriptions (
listofstr) – The description of the quotas. - dry_run – If true, checks whether you have the required
permissions to perform the action. :type dry_run:
boolReturns: A listof Product TypeReturn type: listofdict- collections (
-
ex_list_regions(ex_dry_run: bool = False)[source]¶ Lists available regions details.
Parameters: ex_dry_run – If true, checks whether you have the required permissions to perform the action. :type ex_dry_run:
bool:return: regions details :rtype:dict
-
ex_list_route_tables(link_route_table_ids: List[str] = None, link_route_table_link_route_table_ids: List[str] = None, link_route_table_main: bool = None, link_subnet_ids: List[str] = None, net_ids: List[str] = None, route_creation_methods: List[str] = None, route_destination_ip_ranges: List[str] = None, route_destination_service_ids: List[str] = None, route_gateway_ids: List[str] = None, route_nat_service_ids: List[str] = None, route_net_peering_ids: List[str] = None, route_states: List[str] = None, route_table_ids: List[str] = None, route_vm_ids: List[str] = None, tag_keys: List[str] = None, tag_values: List[str] = None, tags: List[str] = None, dry_run: bool = False)[source]¶ Lists one or more of your route tables. In your Net, each Subnet must be associated with a route table. If a Subnet is not explicitly associated with a route table, it is implicitly associated with the main route table of the Net.
Parameters: link_route_table_ids – The IDs of the route tables involved in the associations. :type link_route_table_ids:
listofstrParameters: link_route_table_link_route_table_ids – The IDs of the associations between the route tables and the Subnets. :type link_route_table_link_route_table_ids:
listofstrParameters: link_route_table_main – If true, the route tables are the main ones for their Nets. :type link_route_table_main:
boolParameters: link_subnet_ids – The IDs of the Subnets involved in the associations. :type link_subnet_ids:
listofstrParameters: net_ids – The IDs of the route tables involved in the associations. :type net_ids:
listofstrParameters: - route_creation_methods (
listofstr) – The methods used to create a route. - route_destination_ip_ranges – The IP ranges specified in
routes in the tables. :type route_destination_ip_ranges:
listofstrParameters: route_destination_service_ids – The service IDs specified in routes in the tables. :type route_destination_service_ids:
listofstrParameters: route_gateway_ids – The IDs of the gateways specified in routes in the tables. :type route_gateway_ids:
listofstrParameters: route_nat_service_ids – The IDs of the NAT services specified in routes in the tables. :type route_nat_service_ids:
listofstrParameters: route_net_peering_ids – The IDs of the Net peering connections specified in routes in the tables. :type route_net_peering_ids:
listofstrParameters: route_states – The states of routes in the route tables (active | blackhole). The blackhole state indicates that the target of the route is not available. :type route_states:
listofstrParameters: - route_table_ids (
listofstr) – The IDs of the route tables. - route_vm_ids – The IDs of the VMs specified in routes in
the tables. :type route_vm_ids:
listofstrParameters: tag_keys – The keys of the tags associated with the route tables. :type tag_keys:
listofstrParameters: tag_values – The values of the tags associated with the route tables. :type tag_values:
listofstrParameters: tags – The key/value combination of the tags associated with the route tables, in the following format: “Filters”:{“Tags”:[“TAGKEY=TAGVALUE”]}. :type tags:
listofstrParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: list of Route Tables Return type: listofdict- route_creation_methods (
-
ex_list_secret_access_key(access_key_id: str = None, dry_run: bool = False)[source]¶ Gets information about the secret access key associated with the account that sends the request.
Parameters: - access_key_id (
str) – The ID of the access key. (required) - dry_run – If true, checks whether you have the required
permissions to perform the action. :type dry_run:
boolReturns: Access Key Return type: dict- access_key_id (
-
ex_list_security_groups(account_ids: List[str] = None, net_ids: List[str] = None, security_group_ids: List[str] = None, security_group_names: List[str] = None, tag_keys: List[str] = None, tag_values: List[str] = None, tags: List[str] = None, dry_run: bool = False)[source]¶ Lists one or more security groups. You can specify either the name of the security groups or their IDs.
Parameters: account_ids – The account IDs of the owners of the security groups. :type account_ids:
listofstrParameters: net_ids – The IDs of the Nets specified when the security groups were created. :type net_ids:
listofstrParameters: - security_group_ids (
listofstr) – The IDs of the security groups. - security_group_names (
listofstr) – The names of the security groups. - tag_keys – the keys of the tags associated with the
security groups. :type tag_keys:
listofstrParameters: tag_values – The values of the tags associated with the security groups. :type tag_values:
listofstrParameters: tags – the key/value combination of the tags associated with the security groups, in the following format: “Filters”:{“Tags”:[“TAGKEY=TAGVALUE”]}. :type tags:
listofstrParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: a list of Security Groups Return type: listofdict- security_group_ids (
-
ex_list_server_certificates(paths: str = None, dry_run: bool = False)[source]¶ List your server certificates.
Parameters: - paths (
str) – The path to the server certificate. - dry_run – If true, checks whether you have the required
permissions to perform the action. :type dry_run:
boolReturns: server certificate Return type: listofdict- paths (
-
ex_list_snapshot_export_tasks(dry_run: bool = False, task_ids: List[str] = None)[source]¶ Lists one or more image export tasks.
Parameters: - task_ids (
listofstr) – The IDs of the export tasks. - dry_run – If true, checks whether you have the required
permissions to perform the action. :type dry_run:
boolReturns: snapshot export tasks Return type: listofdict- task_ids (
-
ex_list_subnets(available_ip_counts: List[str] = None, ip_ranges: List[str] = None, net_ids: List[str] = None, states: List[str] = None, subnet_ids: List[str] = None, subregion_names: List[str] = None, tag_keys: List[str] = None, tag_values: List[str] = None, tags: List[str] = None, dry_run: bool = False)[source]¶ Lists one or more of your Subnets. If you do not specify any Subnet ID, this action describes all of your Subnets.
Parameters: - available_ip_counts (
str) – The number of available IPs. - ip_ranges – The IP ranges in the Subnets, in CIDR notation
(for example, 10.0.0.0/16). :type ip_ranges:
strParameters: - net_ids (
str) – The IDs of the Nets in which the Subnets are. - states (
str) – The states of the Subnets (pending | available). - subnet_ids (
str) – The IDs of the Subnets. - subregion_names – The names of the Subregions in which the
Subnets are located. :type subregion_names:
strParameters: tag_keys – the keys of the tags associated with the subnets. :type tag_keys:
listofstrParameters: tag_values – The values of the tags associated with the subnets. :type tag_values:
listofstrParameters: tags – the key/value combination of the tags associated with the subnets, in the following format: “Filters”:{“Tags”:[“TAGKEY=TAGVALUE”]}. :type tags:
listofstrParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: a list of Subnets Return type: listofdict- available_ip_counts (
-
ex_list_subregions(ex_dry_run: bool = False)[source]¶ Lists available subregions details.
Parameters: ex_dry_run – If true, checks whether you have the required permissions to perform the action. :type ex_dry_run:
bool:return: subregions details :rtype:dict
Lists one or more tags for your resources.
Parameters: - resource_ids (
list) – One or more resource IDs. - resource_types (
list) – One or more resource IDs. - keys (
list) – One or more resource IDs. - values (
list) – One or more resource IDs. - dry_run – If true, checks whether you have the required
permissions to perform the action. :type dry_run:
boolReturns: list of tags Return type: listofdict- resource_ids (
-
ex_list_virtual_gateways(connection_types: List[str] = None, link_net_ids: List[str] = None, link_states: List[str] = None, states: List[str] = None, tag_keys: List[str] = None, tag_values: List[str] = None, tags: List[str] = None, virtual_gateway_id: List[str] = None, dry_run: bool = False)[source]¶ Lists one or more virtual gateways.
Parameters: connection_types – The types of the virtual gateways (only ipsec.1 is supported). :type connection_types:
listofdictParameters: link_net_ids – The IDs of the Nets the virtual gateways are attached to. :type link_net_ids:
listofdictParameters: link_states – The current states of the attachments between the virtual gateways and the Nets (attaching | attached | detaching | detached). :type link_states:
listofdictParameters: states – The states of the virtual gateways (pending | available | deleting | deleted). :type states:
listofdictParameters: tag_keys – The keys of the tags associated with the virtual gateways. :type tag_keys:
listofdictParameters: tag_values – The values of the tags associated with the virtual gateways. :type tag_values:
listofdictParameters: tags – The key/value combination of the tags associated with the virtual gateways, in the following format: “Filters”:{“Tags”:[“TAGKEY=TAGVALUE”]}. :type tags:
listofdictParameters: - virtual_gateway_id (
listofdict) – The IDs of the virtual gateways. - dry_run – If true, checks whether you have the required
permissions to perform the action. :type dry_run:
boolReturns: list of virtual gateway Return type: listofdict- virtual_gateway_id (
-
ex_list_vms_health(backend_vm_ids: List[str] = None, load_balancer_name: str = None, dry_run: bool = False)[source]¶ Lists the state of one or more back-end virtual machines (VMs) registered with a specified load balancer.
Parameters: load_balancer_name – The name of the load balancer. (required) :type load_balancer_name:
strParameters: - backend_vm_ids (
listofstr) – One or more IDs of back-end VMs. - dry_run – If true, checks whether you have the required
permissions to perform the action. :type dry_run:
boolReturns: a list of back end vms health Return type: listofdict- backend_vm_ids (
-
ex_list_vpn_connections(bgp_asns: List[int] = None, client_gateway_ids: List[str] = None, connection_types: List[str] = None, route_destination_ip_ranges: List[str] = None, states: List[str] = None, static_routes_only: bool = None, tag_keys: List[str] = None, tag_values: List[str] = None, tags: List[str] = None, dry_run: bool = False)[source]¶ Describes one or more VPN connections.
Parameters: bgp_asns – The Border Gateway Protocol (BGP) Autonomous System Numbers (ASNs) of the connections. :type bgp_asns:
listofintParameters: - client_gateway_ids (
listofstr) – The IDs of the client gateways. - connection_types – The types of the VPN connections (only
ipsec.1 is supported). :type connection_types:
listofstrParameters: states – The states of the vpn connections (pending | available). :type states:
strParameters: - route_destination_ip_ranges (
str) – The destination IP ranges. - static_routes_only – If false, the VPN connection uses
dynamic routing with Border Gateway Protocol (BGP). If true, routing is controlled using static routes. For more information about how to create and delete static routes, see CreateVpnConnectionRoute: https://docs.outscale.com/api#createvpnconnectionroute and DeleteVpnConnectionRoute: https://docs.outscale.com/api#deletevpnconnectionroute :type static_routes_only:
boolParameters: tag_keys – the keys of the tags associated with the subnets. :type tag_keys:
listofstrParameters: tag_values – The values of the tags associated with the subnets. :type tag_values:
listofstrParameters: tags – the key/value combination of the tags associated with the subnets, in the following format: “Filters”:{“Tags”:[“TAGKEY=TAGVALUE”]}. :type tags:
listofstrParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: a list of Subnets Return type: listofdict- client_gateway_ids (
-
ex_read_account(dry_run: bool = False)[source]¶ Gets information about the account that sent the request.
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: the account information Return type: dict
-
ex_read_admin_password_node(node: libcloud.compute.base.Node, dry_run: bool = False)[source]¶ Retrieves the administrator password for a Windows running virtual machine (VM). The administrator password is encrypted using the keypair you specified when launching the VM.
Parameters: - node (
Node) – the ID of the VM (required) - dry_run – If true, checks whether you have the required
permissions to perform the action. :type dry_run:
boolReturns: The Admin Password of the specified Node. Return type: str- node (
-
ex_read_api_access_rules(api_access_rules_ids: List[str] = None, ca_ids: List[str] = None, cns: List[str] = None, descriptions: List[str] = None, ip_ranges: List[str] = None, dry_run: bool = False)[source]¶ Read API access rules.
Parameters: api_access_rules_ids – The List containing rules ids to filter the request. :type api_access_rules_ids:
ListofstrParameters: - ca_ids (
Listofstr) – The List containing CA ids to filter the request. - cns (
Listofstr) – The List containing cns to filter the request. - descriptions – The List containing descriptions to filter
the request. :type descriptions:
ListofstrParameters: ip_ranges – The List containing ip ranges in CIDR notation (for example, 192.0.2.0/16) to filter the request. :type ip_ranges:
ListofstrParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: a List of API access rules. Return type: Listofdictif successful ordict- ca_ids (
Returns information about one or more of your Client Certificate Authorities (CAs).
Parameters: - ca_fingerprints (
listofstr) – The fingerprints of the CAs. - ca_ids (
listofstr) – The IDs of the CAs. - descriptions (
listofstr) – The descriptions of the CAs. - dry_run – If true, checks whether you have the required
permissions to perform the action. :type dry_run:
boolReturns: a list of all Ca matching filled filters. Return type: listofdict- ca_fingerprints (
-
ex_read_console_output_node(node: libcloud.compute.base.Node, dry_run: bool = False)[source]¶ Gets the console output for a virtual machine (VM). This console provides the most recent 64 KiB output.
Parameters: - node (
Node) – the ID of the VM (required) - dry_run – If true, checks whether you have the required
permissions to perform the action. :type dry_run:
boolReturns: The Console Output of the specified Node. Return type: str- node (
-
ex_register_vms_in_load_balancer(backend_vm_ids: List[str] = None, load_balancer_name: str = None, dry_run: bool = False)[source]¶ Registers one or more virtual machines (VMs) with a specified load balancer. The VMs must be running in the same network as the load balancer (in the public Cloud or in the same Net). It may take a little time for a VM to be registered with the load balancer. Once the VM is registered with a load balancer, it receives traffic and requests from this load balancer and is called a back-end VM.
Parameters: load_balancer_name – The name of the load balancer. (required) :type load_balancer_name:
strParameters: - backend_vm_ids (
listofstr) – One or more IDs of back-end VMs. - dry_run – If true, checks whether you have the required
permissions to perform the action. :type dry_run:
boolReturns: a list of back end vms health Return type: listofdict- backend_vm_ids (
-
ex_reject_net_peering(net_peering_id: List[str] = None, dry_run: bool = False)[source]¶ Rejects a Net peering connection request. The Net peering connection must be in the pending-acceptance state to be rejected. The rejected Net peering connection is then in the rejected state.
Parameters: net_peering_id – The ID of the Net peering connection you want to reject. (required) :type net_peering_id:
strParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: The rejected Net Peering Return type: dict
-
ex_reset_account_password(password: str = '', token: str = '', dry_run: bool = False)[source]¶ Sends an email to the email address provided for the account with a token to reset your password.
Parameters: - password (
str) – The new password for the account. - token – The token you received at the email address
provided for the account. :type token:
strParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: True if the action is successful Return type: bool- password (
-
ex_send_reset_password_email(email: str, dry_run: bool = False)[source]¶ Replaces the account password with the new one you provide. You must also provide the token you received by email when asking for a password reset using the SendResetPasswordEmail method.
Parameters: - email (
str) – The email address provided for the account. - dry_run – If true, checks whether you have the required
permissions to perform the action. :type dry_run:
boolReturns: True if the action is successful Return type: bool- email (
-
ex_unlink_flexible_gpu(flexible_gpu_id: str = None, dry_run: bool = False)[source]¶ Detaches a flexible GPU (fGPU) from a virtual machine (VM). The fGPU is in the detaching state until the VM is stopped, after which it becomes available for allocation again.
Parameters: flexible_gpu_id – The ID of the fGPU you want to attach. (required) :type flexible_gpu_id:
strParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: True if the action is successful Return type: bool
-
ex_unlink_internet_service(internet_service_id: str = None, net_id: str = None, dry_run: bool = False)[source]¶ Detaches an Internet service from a Net. This action disables and detaches an Internet service from a Net. The Net must not contain any running virtual machine (VM) using an External IP address (EIP).
Parameters: internet_service_id – The ID of the Internet service you want to detach. (required) :type internet_service_id:
strParameters: net_id – The ID of the Net from which you want to detach the Internet service. (required) :type net_id:
strParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: True if the action is successful Return type: bool
-
ex_unlink_nic(link_nic_id: str = None, dry_run: bool = False)[source]¶ Detaches a network interface card (NIC) from a virtual machine (VM). The primary NIC cannot be detached.
Parameters: link_nic_id – The ID of the NIC you want to delete. (required) :type link_nic_id:
strParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: True if the action is successful Return type: bool
-
ex_unlink_private_ips(nic_id: str = None, private_ips: List[str] = None, dry_run: bool = False)[source]¶ Unassigns one or more secondary private IPs from a network interface card (NIC).
Parameters: - nic_id (
str) – The ID of the NIC. (required) - private_ips – One or more secondary private IP addresses
you want to unassign from the NIC. (required) :type private_ips:
listofstrParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: True if the action is successful Return type: bool- nic_id (
-
ex_unlink_route_table(link_route_table_id: str = None, dry_run: bool = False)[source]¶ Disassociates a Subnet from a route table. After disassociation, the Subnet can no longer use the routes in this route table, but uses the routes in the main route table of the Net instead.
Parameters: - link_route_table_id (
str) – The ID of the route table. (required) - dry_run – If true, checks whether you have the required
permissions to perform the action. :type dry_run:
boolReturns: True if the action is successful Return type: bool- link_route_table_id (
-
ex_unlink_virtual_gateway(net_id: str = None, virtual_gateway_id: str = None, dry_run: bool = False)[source]¶ Detaches a virtual gateway from a Net. You must wait until the virtual gateway is in the detached state before you can attach another Net to it or delete the Net it was previously attached to.
Parameters: net_id – The ID of the Net from which you want to detach the virtual gateway. (required) :type net_id:
strParameters: virtual_gateway_id – The ID of the Net from which you want to detach the virtual gateway. (required) :type virtual_gateway_id:
strParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: True if the action is successful Return type: bool
-
ex_update_access_key(access_key_id: str = None, state: str = None, dry_run: bool = False)[source]¶ Modifies the status of the specified access key associated with the account that sends the request. When set to ACTIVE, the access key is enabled and can be used to send requests. When set to INACTIVE, the access key is disabled.
Parameters: - access_key_id (
str) – The ID of the access key. (required) - state – The new state of the access key
(ACTIVE | INACTIVE). (required) :type state:
strParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: Access Key Return type: dict- access_key_id (
-
ex_update_account(city: str = None, company_name: str = None, country: str = None, email: str = None, first_name: str = None, last_name: str = None, zip_code: str = None, job_title: str = None, mobile_number: str = None, phone_number: str = None, state_province: str = None, vat_number: str = None, dry_run: bool = False)[source]¶ Updates the account information for the account that sends the request.
Parameters: - city (
str) – The city of the account owner. - company_name – The name of the company for the account.
permissions to perform the action. :type company_name:
strParameters: - country (
str) – The country of the account owner. - email (
str) – The email address for the account. - first_name (
str) – The first name of the account owner. - last_name (
str) – The last name of the account owner. - zip_code (
str) – The ZIP code of the city. - job_title (
str) – The job title of the account owner. - mobile_number – The mobile phone number of the account
owner. :type mobile_number:
strParameters: phone_number – The landline phone number of the account owner. :type phone_number:
strParameters: - state_province (
str) – The state/province of the account. - vat_number – The value added tax (VAT) number for
the account. :type vat_number:
strParameters: dry_run ( bool) – the password of the accountReturns: The new account information Return type: dict- city (
-
ex_update_api_access_rule(api_access_rule_id: str, ca_ids: List[str] = None, cns: List[str] = None, description: str = None, ip_ranges: List[str] = None, dry_run: bool = False)[source]¶ Update an API access rules. The new rule you specify fully replaces the old rule. Therefore, for a parameter that is not specified, any previously set value is deleted.
Parameters: api_access_rule_id – The id of the rule we want to update (required). :type api_access_rule_id:
strParameters: ca_ids – One or more IDs of Client Certificate Authorities (CAs). :type ca_ids:
ListofstrParameters: cns – One or more Client Certificate Common Names (CNs). If this parameter is specified, you must also specify the ca_ids parameter. :type cns:
ListofstrParameters: - description (
str) – The description of the new rule. - ip_ranges – One or more IP ranges, in CIDR notation
(for example, 192.0.2.0/16). :type ip_ranges:
ListofstrParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: a List of API access rules. Return type: Listofdictif successful ordict- description (
Modifies the specified attribute of a Client Certificate Authority (CA).
Parameters: - ca_id (
str) – The ID of the CA. (required) - description (
str) – The description of the CA. - dry_run – If true, checks whether you have the required
permissions to perform the action. :type dry_run:
boolReturns: a the created Ca or the request result. Return type: dict- ca_id (
-
ex_update_flexible_gpu(delete_on_vm_deletion: bool = None, flexible_gpu_id: str = None, dry_run: bool = False)[source]¶ Modifies a flexible GPU (fGPU) behavior.
Parameters: delete_on_vm_deletion – If true, the fGPU is deleted when the VM is terminated. :type delete_on_vm_deletion:
boolParameters: - flexible_gpu_id (
str) – The ID of the fGPU you want to modify. - dry_run – If true, checks whether you have the required
permissions to perform the action. :type dry_run:
boolReturns: the updated Flexible GPU Return type: dict- flexible_gpu_id (
-
ex_update_image(dry_run: bool = False, image: libcloud.compute.base.NodeImage = None, perm_to_launch_addition_account_ids: List[str] = None, perm_to_launch_addition_global_permission: bool = None, perm_to_launch_removals_account_ids: List[str] = None, perm_to_launch_removals_global_permission: bool = None)[source]¶ Modifies the specified attribute of an Outscale machine image (OMI). You can specify only one attribute at a time. You can modify the permissions to access the OMI by adding or removing account IDs or groups. You can share an OMI with a user that is in the same Region. The user can create a copy of the OMI you shared, obtaining all the rights for the copy of the OMI. For more information, see CreateImage.
Parameters: - image (
NodeImage) – The ID of the OMI to export. (required) - perm_to_launch_addition_account_ids – The account
ID of one or more users who have permissions for the resource. :type perm_to_launch_addition_account_ids:
listofdictParameters: perm_to_launch_addition_global_permission – If true, the resource is public. If false, the resource is private. :type perm_to_launch_addition_global_permission:
booleanParameters: perm_to_launch_removals_account_ids – The account ID of one or more users who have permissions for the resource. :type perm_to_launch_removals_account_ids:
listofdictParameters: perm_to_launch_removals_global_permission – If true, the resource is public. If false, the resource is private. :type perm_to_launch_removals_global_permission:
booleanParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: the new image Return type: dict- image (
-
ex_update_listener_rule(host_pattern: str = None, listener_rule_name: str = None, path_pattern: str = None, dry_run: bool = False)[source]¶ Updates the pattern of the listener rule. This call updates the pattern matching algorithm for incoming traffic.
Parameters: host_pattern – TA host-name pattern for the rule, with a maximum length of 128 characters. This host-name pattern supports maximum three wildcards, and must not contain any special characters except [-.?]. :type host_pattern: ``str`
Parameters: listener_rule_name – The name of the listener rule. (required) :type listener_rule_name:
strParameters: path_pattern – A path pattern for the rule, with a maximum length of 128 characters. This path pattern supports maximum three wildcards, and must not contain any special characters except [_-.$/~”’@:+?]. :type path_pattern:
strParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: Update the specified Listener Rule Return type: dict
-
ex_update_load_balancer(access_log_is_enabled: bool = None, access_log_osu_bucket_name: str = None, access_log_osu_bucket_prefix: str = None, access_log_publication_interval: int = None, health_check_interval: int = None, health_check_healthy_threshold: int = None, health_check_path: str = None, health_check_port: int = None, health_check_protocol: str = None, health_check_timeout: int = None, health_check_unhealthy_threshold: int = None, load_balancer_name: str = None, load_balancer_port: int = None, policy_names: List[str] = None, server_certificate_id: str = None, dry_run: bool = False)[source]¶ Modifies the specified attributes of a load balancer.
You can set a new SSL certificate to an SSL or HTTPS listener of a load balancer. This certificate replaces any certificate used on the same load balancer and port.
You can also replace the current set of policies for a load balancer with another specified one. If the PolicyNames parameter is empty, all current policies are disabled.
Parameters: access_log_is_enabled – If true, access logs are enabled for your load balancer. If false, they are not. If you set this to true in your request, the OsuBucketName parameter is required. :type access_log_is_enabled: ``bool`
Parameters: access_log_osu_bucket_name – The name of the Object Storage Unit (OSU) bucket for the access logs. :type access_log_osu_bucket_name:
strParameters: access_log_osu_bucket_prefix – The path to the folder of the access logs in your Object Storage Unit (OSU) bucket (by default, the root level of your bucket). :type access_log_osu_bucket_prefix:
strParameters: access_log_publication_interval – The time interval for the publication of access logs in the Object Storage Unit (OSU) bucket, in minutes. This value can be either 5 or 60 (by default, 60). :type access_log_publication_interval:
intParameters: health_check_interval – Information about the health check configuration. (required) :type health_check_interval:
intParameters: health_check_path – The path for HTTP or HTTPS requests. (required) :type health_check_path:
strParameters: health_check_port – The port number (between 1 and 65535, both included). (required) :type health_check_port:
intParameters: health_check_protocol – The protocol for the URL of the VM (HTTP | HTTPS | TCP | SSL | UDP). (required) :type health_check_protocol:
strParameters: health_check_timeout – The maximum waiting time for a response before considering the VM as unhealthy, in seconds (between 2 and 60 both included). (required) :type health_check_timeout:
intParameters: health_check_healthy_threshold – The number of consecutive failed pings before considering the VM as unhealthy (between 2 and 10 both included). (required) :type health_check_healthy_threshold:
intParameters: health_check_unhealthy_threshold – The number of consecutive failed pings before considering the VM as unhealthy (between 2 and 10 both included).(required) :type health_check_unhealthy_threshold:
intParameters: load_balancer_name – The name of the load balancer. (required) :type load_balancer_name:
strParameters: load_balancer_port – The port on which the load balancer is listening (between 1 and 65535, both included). :type load_balancer_port:
intParameters: policy_names – The list of policy names (must contain all the policies to be enabled). :type policy_names:
listofstrParameters: server_certificate_id – The list of policy names (must contain all the policies to be enabled). :type server_certificate_id:
strParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: Update the specified Load Balancer Return type: dict
-
ex_update_net(net_id: str = None, dhcp_options_set_id: str = None, dry_run: bool = False)[source]¶ Associates a DHCP options set with a specified Net.
Parameters: - net_id (
str) – The ID of the Net. (required) - dhcp_options_set_id – The ID of the DHCP options set
(or default if you want to associate the default one). (required) :type dhcp_options_set_id:
strParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: The modified Nat Service Return type: dict- net_id (
-
ex_update_net_access_point(add_route_table_ids: List[str] = None, net_access_point_id: str = None, remove_route_table_ids: List[str] = None, dry_run: bool = False)[source]¶ Modifies the attributes of a Net access point. This action enables you to add or remove route tables associated with the specified Net access point.
Parameters: add_route_table_ids – One or more IDs of route tables to associate with the specified Net access point. :type add_route_table_ids:
listofstrParameters: net_access_point_id – The ID of the Net access point. (required) :type net_access_point_id:
strParameters: remove_route_table_ids – One or more IDs of route tables to disassociate from the specified Net access point. :type remove_route_table_ids:
listofstrParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: The modified Net Access Point Return type: dict
-
ex_update_nic(description: str = None, link_nic_delete_on_vm_deletion: str = None, link_nic_id: str = None, security_group_ids: List[str] = None, nic_id: str = None, dry_run: bool = False)[source]¶ Modifies the specified network interface card (NIC). You can specify only one attribute at a time.
Parameters: - description (
str) – A new description for the NIC. - link_nic_delete_on_vm_deletion – If true, the NIC is
deleted when the VM is terminated. :type link_nic_delete_on_vm_deletion:
strParameters: - link_nic_id (
str) – The ID of the NIC attachment. - security_group_ids – One or more IDs of security groups
for the NIC. :type security_group_ids:
listofstrParameters: - nic_id (
listofstr) – The ID of the NIC you want to modify. (required) - dry_run – If true, checks whether you have the required
permissions to perform the action. :type dry_run:
boolReturns: The new Nic Return type: dict- description (
-
ex_update_node(block_device_mapping: List[dict], bsu_optimized: bool = None, deletion_protection: bool = False, is_source_dest_checked: bool = None, keypair_name: str = True, performance: str = True, security_group_ids: List[str] = None, user_data: str = False, vm_id: str = None, vm_initiated_shutown_behavior: str = None, vm_type: int = None, dry_run: bool = False)[source]¶ Modifies a specific attribute of a Node (VM). You can modify only one attribute at a time. You can modify the IsSourceDestChecked attribute only if the VM is in a Net. You must stop the VM before modifying the following attributes:
- VmType
- UserData
- BsuOptimized
Parameters: block_device_mapping – One or more block device mappings of the VM. :type block_device_mapping:
dictParameters: - bsu_optimized (
bool) – If true, the VM is optimized for BSU I/O. - dry_run – If true, checks whether you have the required
permissions to perform the action. :type dry_run:
boolParameters: deletion_protection – If true, you cannot terminate the VM using Cockpit, the CLI or the API. If false, you can. :type deletion_protection:
boolParameters: is_source_dest_checked – (Net only) If true, the source/destination check is enabled. If false, it is disabled. This value must be false for a NAT VM to perform network address translation (NAT) in a Net. :type is_source_dest_checked:
boolParameters: - keypair_name (
str) – The name of the keypair. - performance – The performance of the VM
(standard | high | highest). :type performance:
strParameters: security_group_ids – One or more IDs of security groups for the VM. :type security_group_ids:
boolParameters: - user_data (
str) – The Base64-encoded MIME user data. - vm_id (
str) – The ID of the VM. (required) - vm_initiated_shutown_behavior – The VM behavior when you
stop it. By default or if set to stop, the VM stops. If set to restart, the VM stops then automatically restarts. If set to terminate, the VM stops and is terminated. :type vm_initiated_shutown_behavior:
strParameters: vm_type – The type of VM. For more information, see Instance Types: https://wiki.outscale.net/display/EN/Instance+Types :type vm_type:
strReturns: the updated Node Return type: dict
-
ex_update_route(destination_ip_range: str = None, gateway_id: str = None, nat_service_id: str = None, net_peering_id: str = None, nic_id: str = None, route_table_id: str = None, vm_id: str = None, dry_run: bool = False)[source]¶ Replaces an existing route within a route table in a Net. You must specify one of the following elements as the target:
- Net peering connection
- NAT virtual machine (VM)
- Internet service
- Virtual gateway
- NAT service
- Network interface card (NIC)
The routing algorithm is based on the most specific match.
Parameters: destination_ip_range – The IP range used for the destination match, in CIDR notation (for example, 10.0.0.0/24). (required) :type destination_ip_range:
strParameters: gateway_id – The ID of an Internet service or virtual gateway attached to your Net. :type gateway_id:
strParameters: - nat_service_id (
str) – The ID of a NAT service. - net_peering_id (
str) – The ID of a Net peering connection. - nic_id (
str) – The ID of a NIC. - vm_id – The ID of a NAT VM in your Net (attached to exactly
one NIC). :type vm_id:
strParameters: route_table_id – The ID of the route table for which you want to create a route. (required) :type route_table_id: str`
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: The updated Route Return type: dict
-
ex_update_route_propagation(enable: bool = None, route_table_id: str = None, virtual_gateway_id: str = None, dry_run: bool = False)[source]¶ Configures the propagation of routes to a specified route table of a Net by a virtual gateway.
Parameters: enable – If true, a virtual gateway can propagate routes to a specified route table of a Net. If false, the propagation is disabled. (required) :type enable:
booleanParameters: - route_table_id (
str) – The ID of the route table. (required) - virtual_gateway_id – The ID of the virtual
gateway. (required) :type virtual_gateway_id:
strParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: route propagation Return type: dict- route_table_id (
-
ex_update_server_certificate(name: str = None, new_name: str = None, new_path: str = None, dry_run: bool = False)[source]¶ Modifies the name and/or the path of a specified server certificate.
Parameters: name – The name of the server certificate you want to modify. :type name:
strParameters: new_name ( str) – A new name for the server certificate.:param new_path:A new path for the server certificate. :type new_path:
strParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: the new server certificate Return type: dict
-
ex_update_snapshot(perm_to_create_volume_addition_account_id: List[str] = None, perm_to_create_volume_addition_global_perm: bool = None, perm_to_create_volume_removals_account_id: List[str] = None, perm_to_create_volume_removals_global_perm: bool = None, snapshot: libcloud.compute.base.VolumeSnapshot = None, dry_run: bool = False)[source]¶ Modifies the permissions for a specified snapshot. You can add or remove permissions for specified account IDs or groups. You can share a snapshot with a user that is in the same Region. The user can create a copy of the snapshot you shared, obtaining all the rights for the copy of the snapshot.
Parameters: perm_to_create_volume_addition_account_id – The account ID of one or more users who have permissions for the resource. :type perm_to_create_volume_addition_account_id:
listofstrParameters: perm_to_create_volume_addition_global_perm – If true, the resource is public. If false, the resource is private. :type perm_to_create_volume_addition_global_perm:
boolParameters: perm_to_create_volume_removals_account_id – The account ID of one or more users who have permissions for the resource. listofstrParameters: - perm_to_create_volume_removals_global_perm (
bool) – If true, the resource is public. If false, the resource is private. - snapshot (
VolumeSnapshot) – The ID of the snapshot. (required) - dry_run – If true, checks whether you have the required
permissions to perform the action. :type dry_run:
boolReturns: snapshot export tasks Return type: listofdict- perm_to_create_volume_removals_global_perm (
-
ex_update_subnet(subnet_id: str = None, map_public_ip_on_launch: bool = None, dry_run: bool = False)[source]¶ Deletes a specified Subnet. You must terminate all the running virtual machines (VMs) in the Subnet before deleting it.
Parameters: subnet_id – The ID of the Subnet you want to delete. (required) :type subnet_id:
strParameters: map_public_ip_on_launch – If true, a public IP address is assigned to the network interface cards (NICs) created in the s specified Subnet. (required) :type map_public_ip_on_launch:
boolParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: The updated Subnet Return type: dict
-
get_image(image_id: str)[source]¶ Get a specific image.
Parameters: image_id ( str) – the ID of the image you want to select (required)Returns: the selected image Return type: dict
-
get_key_pair(name: str)[source]¶ Get a specific key pair.
Parameters: name ( str) – the name of the key pair you want to select (required)Returns: the selected key pair Return type: dict
-
import_key_pair_from_file(name, key_file_path)¶ Import a new public key from string.
Parameters: - name (
str) – Key pair name. - key_file_path (
str) – Path to the public key file.
Return type: KeyPairobject- name (
-
import_key_pair_from_string(name, key_material)¶ Import a new public key from string.
Parameters: - name (
str) – Key pair name. - key_material (
str) – Public key material.
Return type: KeyPairobject- name (
-
list_images(account_aliases: List[str] = None, account_ids: List[str] = None, architectures: List[str] = None, block_device_mapping_delete_on_vm_deletion: bool = False, block_device_mapping_device_names: List[str] = None, block_device_mapping_snapshot_ids: List[str] = None, block_device_mapping_volume_sizes: List[int] = None, block_device_mapping_volume_types: List[str] = None, descriptions: List[str] = None, file_locations: List[str] = None, image_ids: List[str] = None, image_names: List[str] = None, permission_to_launch_account_ids: List[str] = None, permission_to_lauch_global_permission: bool = False, root_device_names: List[str] = None, root_device_types: List[str] = None, states: List[str] = None, tag_keys: List[str] = None, tag_values: List[str] = None, tags: List[str] = None, virtualization_types: List[str] = None, dry_run: bool = False)[source]¶ Lists one or more Outscale machine images (OMIs) you can use.
Parameters: account_aliases – The account aliases of the owners of the OMIs. :type account_aliases:
listofstrParameters: account_ids – The account IDs of the owners of the OMIs. By default, all the OMIs for which you have launch permissions are described. :type account_ids:
listofstrParameters: architectures – The architectures of the OMIs (i386 | x86_64). :type architectures:
listofstrParameters: block_device_mapping_delete_on_vm_deletion – Indicates whether the block device mapping is deleted when terminating the VM. :type block_device_mapping_delete_on_vm_deletion:
boolParameters: block_device_mapping_device_names – The device names for the volumes. :type block_device_mapping_device_names:
listofstrParameters: block_device_mapping_snapshot_ids – The IDs of the snapshots used to create the volumes. :type block_device_mapping_snapshot_ids:
listofstrParameters: block_device_mapping_volume_sizes – The sizes of the volumes, in gibibytes (GiB). :type block_device_mapping_volume_sizes:
listofintParameters: block_device_mapping_volume_types – The types of volumes (standard | gp2 | io1). :type block_device_mapping_volume_types:
listofstrParameters: descriptions – The descriptions of the OMIs, provided when they were created. :type descriptions:
listofstrParameters: file_locations – The locations where the OMI files are stored on Object Storage Unit (OSU). :type file_locations:
listofstrParameters: - image_ids (
listofstr) – The IDs of the OMIs. - image_names – The names of the OMIs, provided when
they were created. :type image_names:
listofstrParameters: permission_to_launch_account_ids – The account IDs of the users who have launch permissions for the OMIs. :type permission_to_launch_account_ids:
listofstrParameters: permission_to_lauch_global_permission – If true, lists all public OMIs. If false, lists all private OMIs. :type permission_to_lauch_global_permission:
listofstrParameters: root_device_names – The device names of the root devices (for example, /dev/sda1). :type root_device_names:
listofstrParameters: root_device_types – The types of root device used by the OMIs (always bsu). :type root_device_types:
listofstrParameters: states – The states of the OMIs (pending | available | failed). :type states:
listofstrParameters: - tag_keys (
listofstr) – The keys of the tags associated with the OMIs. - tag_values – The values of the tags associated
with the OMIs. :type tag_values:
listofstrParameters: tags – The key/value combination of the tags associated with the OMIs, in the following format:”Filters”: {“Tags”:[“TAGKEY=TAGVALUE”]}. :type tags:
listofstrParameters: virtualization_types – The virtualization types (always hvm). :type virtualization_types:
listofstrParameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
boolReturns: a list of image Return type: listofdict- image_ids (
-
list_locations(ex_dry_run: bool = False)[source]¶ Lists available locations details.
Parameters: ex_dry_run – If true, checks whether you have the required permissions to perform the action. :type ex_dry_run:
bool:return: locations details :rtype:dict
-
list_sizes(location=None)¶ List sizes on a provider
Parameters: location ( NodeLocation) – The location at which to list sizesReturns: list of node size objects Return type: listofNodeSize
-
list_snapshots(ex_data: str = '{}')[source]¶ List all volume snapshots.
Returns: snapshots Return type: dict
-
list_volume_snapshots(volume)[source]¶ List all snapshot for a given volume.
Parameters: volume (StorageVolume) – the volume from which to look for snapshots Return type: listof :classVolumeSnapshot
-
list_volumes(ex_data: str = '{}')[source]¶ List all volumes. :rtype:
listofStorageVolume
-
reboot_node(node: libcloud.compute.base.Node)[source]¶ Reboot instance.
Parameters: node ( list) – VM(s) you want to reboot (required)Returns: the rebooted instances Return type: dict
-
start_node(node: libcloud.compute.base.Node)[source]¶ Start a Vm.
Parameters: node ( Node) – the VM(s) you want to start (required)Returns: the rebooted instances Return type: bool
-
stop_node(node: libcloud.compute.base.Node)[source]¶ Stop a Vm.
Parameters: node ( Node) – the VM(s) you want to stop (required)Returns: the rebooted instances Return type: bool
-
wait_until_running(nodes, wait_period=5, timeout=600, ssh_interface='public_ips', force_ipv4=True, ex_list_nodes_kwargs=None)¶ Block until the provided nodes are considered running.
Node is considered running when it’s state is “running” and when it has at least one IP address assigned.
Parameters: - nodes (
listofNode) – List of nodes to wait for. - wait_period (
int) – How many seconds to wait between each loop iteration. (default is 3) - timeout (
int) – How many seconds to wait before giving up. (default is 600) - ssh_interface (
str) – Which attribute on the node to use to obtain an IP address. Valid options: public_ips, private_ips. Default is public_ips. - force_ipv4 (
bool) – Ignore IPv6 addresses (default is True). - ex_list_nodes_kwargs (
dict) – Optional driver-specific keyword arguments which are passed to thelist_nodesmethod.
Returns: [(Node, ip_addresses)]list of tuple of Node instance and list of ip_address on success.Return type: listoftuple- nodes (
-
Outscale Implementation of Libcloud¶
The Outscale driver implements the following NodeDriver functions:
Regions¶
list_locations- Returns a list ofNodeLocation
Nodes¶
create_node- Creates aNodereboot_node- Reboots aNodelist_nodes- Returns a list ofNodedestroy_node- Destroys an existingNodestart_node- Start aNodestop_node- Stop aNode
Images¶
create_images- Returns aNodeImagelist_images- Returns a list ofNodeImageget_image- Returns aNodeImagedelete_image- Return aboolex_create_image_export_task- Returns adictex_list_image_export_task- Returns alistofdictex_update_image- Returns adict
Key Pairs¶
create_key_pair- Returns aKeyPairlist_key_pairs- Returns a list ofKeyPairget_key_pair- Returns aKeyPairdelete_key_pair- Returns abool
Snapshots¶
create_volume_snapshot- Returns aVolumeSnapshotlist_snapshots- Returns a list ofVolumeSnapshotdestroy_volume_snapshot- Returns aboollist_volume_snapshots- Returns a list ofVolumeSnapshotex_create_snapshot_export_task- Returns adictex_list_snapshot_export_tasks- Returns alistofdictex_update_snapshot- Returns adict
Volumes¶
create_volume- Returns aStorageVolumelist_volumes- Returns a list ofStorageVolumedestroy_volume- Returns aboolattach_volume- Return abooldetach_volume- Returns abool
Outscale Extra Functions¶
The Outscale driver implement the following extra methods:
Public IPs¶
ex_create_public_ip- Returns aboolex_delete_public_ip- Returns aboolex_list_public_ips- Returns adictex_list_public_ip_ranges- Returns adictex_attach_public_ip- Returns aboolex_detach_public_ip- Returns abool
Accounts¶
ex_check_account- Returns aboolex_read_account- Returns adictex_reset_account_password- Returns adictex_send_reset_password_email- Returns aboolex_create_account- Returns aboolex_update_account- Returns adictex_list_consumption_account- Returns alistofdict
Tags¶
ex_create_tag- Returns aboolex_create_tags- Returns aboolex_delete_tags- Returns aboolex_list_tags- Returns adict
Regions and SubRegions¶
ex_list_regions- Returns alistofdictex_list_subregions- Returns alistofdict
Access Keys¶
ex_create_access_key- Returns adictex_delete_access_key- Returns aboolex_list_access_keys- Returns alistofdictex_list_secret_access_key- Returns adictex_update_access_key- Returns adict
Client Gateways¶
ex_create_client_gateway- Returns adictex_delete_client_gateway- Returns aboolex_list_client_gateways- Returns alistofdict
Dhcp Options¶
ex_create_dhcp_options- Returns adictex_delete_dhcp_options- Returns aboolex_list_dhcp_options- Returns alistofdict
Direct Links¶
ex_create_direct_link- Returns adictex_delete_direct_link- Returns aboolex_list_direct_links- Returns alistofdict
Direct Link Interfaces¶
ex_create_direct_link_interface- Returns adictex_delete_direct_link_interface- Returns aboolex_list_direct_link_interfaces- Returns alistofdict
Flexible GPU¶
ex_create_flexible_gpu- Returns adictex_delete_flexible_gpu- Returns aboolex_link_flexible_gpu- Returns aboolex_unlink_flexible_gpu- Returns aboolex_list_flexible_gpu_catalog- Returns alistofdictex_list_flexible_gpus- Returns alistofdictex_update_flexible_gpu- Returns adict
Internet Services¶
ex_create_internet_service- Returns adictex_delete_internet_service- Returns aboolex_link_internet_service- Returns aboolex_unlink_internet_service- Returns aboolex_list_internet_services- Returns alistofdict
Listener¶
ex_create_listener_rule- Returns adictex_create_load_balancer_listeners- Returns adictex_delete_listener_rule- Returns aboolex_delete_load_balancer_listeners- Returns aboolex_list_listener_rules- Returns aboolex_update_listener_rule- Returns adict
Load Balancers¶
ex_create_load_balancer- Returns adictex_update_load_balancer- Returns adictex_create_load_balancer_tags- Returns aboolex_delete_load_balancer- Returns aboolex_delete_load_balancer_tags- Returns aboolex_deregister_vms_in_load_balancer- Returns aboolex_register_vms_in_load_balancer- Returns aboolex_list_load_balancer_tags- Returns alistofdictex_list_vms_health- Returns alistofdictex_list_load_balancers- Returns alistofdict
Load Balancer Policies¶
ex_create_load_balancer_policy- Returns adictex_delete_load_balancer_policy- Returns abool
Nat Services¶
ex_create_nat_service- Returns adictex_delete_nat_service- Returns aboolex_list_nat_services- Returns alistofdict
Net¶
ex_create_net- Returns adictex_delete_net- Returns aboolex_list_nets- Returns alistofdictex_update_net- Returns adict
Net Access Point¶
ex_create_net_access_point- Returns adictex_delete_net_access_point- Returns aboolex_list_net_access_point_services- Returns alistofdictex_list_net_access_points- Returns alistofdictex_update_net_access_point- Returns adict
Net Peerings¶
ex_accept_net_peering- Returns adictex_create_net_peering- Returns adictex_delete_net_peering- Returns aboolex_list_net_peerings- Returns alistofdictex_reject_net_peering- Returns adict
Nics¶
ex_create_nic- Returns adictex_delete_nic- Returns aboolex_link_nic- Returns aboolex_unlink_nic- Returns aboolex_link_private_ips- Returns aboolex_list_nics- Returns alistofdictex_unlink_private_ips- Returns aboolex_update_nic- Returns adict
Product Types¶
ex_list_product_types- Returns alistofdict
Quotas¶
ex_list_quotas- Returns alistofdict
Routes¶
ex_create_route- Returns adictex_delete_route- Returns aboolex_update_route- Returns adict
Route Tables¶
ex_create_route_table- Returns adictex_delete_route_table- Returns aboolex_link_route_table- Returns aboolex_list_route_tables- Returns alistofdictex_unlink_route_table- Returns abool
Server Certificates¶
ex_create_server_certificate- Returns adictex_delete_server_certificate- Returns aboolex_list_server_certificates- Returns alistofdictex_update_server_certificate- Returns adict
Virtual Gateways¶
ex_create_virtual_gateway- Returns adictex_delete_virtual_gateway- Returns aboolex_link_virtual_gateway- Returns adictex_list_virtual_gateways- Returns alistofdictex_unlink_virtual_gateway- Returns aboolex_update_route_propagation- Returns adict
Security Groups¶
ex_create_security_group- Returns adictex_delete_security_group- Returns aboolex_list_security_groups- Returns alistofdict
Security Group Rules¶
ex_create_security_group_rule- Returns adictex_delete_security_group_rule- Returns adict
Subnets¶
ex_create_subnet- Returns adictex_delete_subnet- Returns aboolex_list_subnets- Returns alistofdictex_update_subnet- Returns adict
Tasks¶
ex_delete_export_task- Returns abool
Vpn Connections¶
ex_create_vpn_connection- Returns adictex_create_vpn_connection_route- Returns aboolex_delete_vpn_connection- Returns aboolex_delete_vpn_connection_route- Returns aboolex_list_vpn_connections- Returns alistofdict
Nodes¶
ex_read_admin_password_node- Returns astrex_read_console_output_node- Returns astrex_list_node_types- Returns alistofdictex_list_nodes_states- Returns alistofdictex_update_node- Returns alistofdict
Certificate Authority¶
ex_create_certificate_authority- Returns adictex_delete_certificate_authority- Returns aboolex_read_certificate_authorities- Returns alistofdict
API Access Rules¶
ex_create_api_access_rule- Returns adictex_delete_api_access_rule- Returns aboolex_read_api_access_rules- Returns alistofdictex_update_api_access_rule- Returns adict
