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:
str
Parameters: - 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:
bool
Parameters: - 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:
str
Parameters: 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:
str
Parameters: ex_dry_run – If true, checks whether you have the required permissions to perform the action. :type ex_dry_run:
bool
Returns: 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:
str
Parameters: ex_dry_run – If true, checks whether you have the required permissions to perform the action. :type ex_dry_run:
bool
Parameters: 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:
bool
Parameters: - 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:
bool
Parameters: ex_bsu_optimized – If true, the VM is created with optimized BSU I/O. :type ex_bsu_optimized:
bool
Parameters: ex_client_token – A unique identifier which enables you to manage the idempotency. :type ex_client_token:
bool
Parameters: 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:
bool
Parameters: - 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:
integer
Parameters: 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:
integer
Parameters: 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:
list
ofdict
Parameters: 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:
list
Parameters: ex_security_groups – One or more names of security groups for the VMs. :type ex_security_groups:
list
Parameters: ex_subnet_id – The ID of the Subnet in which you want to create the VM. :type ex_subnet_id:
str
Parameters: ex_user_data – Data or script used to add a specific configuration to the VM. It must be base64-encoded. :type ex_user_data:
str
Parameters: 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:
str
Parameters: 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:
bool
Parameters: - 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:
str
Parameters: 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:
integer
Returns: 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:
integer
Parameters: ex_source_snapshot – The ID of the snapshot you want to copy. :type ex_source_snapshot:
str
Parameters: volume – The ID of the volume you want to create a snapshot of. :type volume:
str
Parameters: 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:
str
Parameters: 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:
str
Parameters: ex_dry_run – If true, checks whether you have the required permissions to perform the action. :type ex_dry_run:
bool
Returns: 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:
KeyPair
Returns: 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
NodeAuthPassword
orNodeAuthSSHKey
to theauth
argument. If thecreate_node
implementation 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_node
and it is only used for authentication.If the
auth
parameter is not supplied but the driver declares it supportsgenerates_password
then the password returned bycreate_node
will be used to SSH into the server.Finally, if the
ssh_key_file
is 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 (
NodeAuthSSHKey
orNodeAuthPassword
) – Initial authentication information for the node (optional) - ssh_key (
str
orlist
ofstr
) – 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:
str
Parameters: 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:
bool
Parameters: ex_dry_run – If true, checks whether you have the required permissions to perform the action. :type ex_dry_run:
bool
Returns: 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:
str
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: 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:
bool
Parameters: 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:
str
Parameters: - vm_id – the ID of the VM
- public_ip – The EIP. In the public Cloud, this parameter
is required. :type public_ip:
str
Parameters: public_ip_id – The allocation ID of the EIP. In a Net, this parameter is required. :type public_ip_id:
str
Returns: 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:
bool
Parameters: - 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:
datetime
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: 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:
str
Parameters: - 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:
str
Parameters: phone_number – The landline phone number of the account owner. :type phone_number:
str
Parameters: - state_province (
str
) – The state/province of the account. - vat_number – The value added tax (VAT) number for
the account. :type vat_number:
str
Parameters: 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:
List
ofstr
Parameters: ca_ids – One or more IDs of Client Certificate Authorities (CAs). :type ca_ids:
List
ofstr
Parameters: cns – One or more Client Certificate Common Names (CNs). If this parameter is specified, you must also specify the ca_ids parameter. :type cns:
List
ofstr
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: 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:
bool
Returns: 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:
str
Parameters: public_ip – The public fixed IPv4 address of your client gateway. (required) :type public_ip:
str
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: Client Gateway as dict
Return 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:
str
Parameters: 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:
list
ofstr
Parameters: ntp_servers – The IP addresses of the Network Time Protocol (NTP) servers. :type ntp_servers:
list
ofstr
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: 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:
str
Parameters: - 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:
str
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: 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:
str
Parameters: bgp_asn – The BGP (Border Gateway Protocol) ASN (Autonomous System Number) on the customer’s side of the DirectLink interface. (required) :type bgp_asn:
int
Parameters: - 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:
str
Parameters: direct_link_interface_name – The name of the DirectLink interface. (required) :type direct_link_interface_name:
str
Parameters: 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:
str
Parameters: vlan – The VLAN number associated with the DirectLink interface. (required) :type vlan:
str
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: 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:
bool
Parameters: 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:
str
Parameters: 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:
str
Parameters: subregion_name – The Subregion in which you want to create the fGPU. (required) :type subregion_name:
str
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: 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:
bool
Parameters: osu_export_disk_image_format – The format of the export disk (qcow2 | vdi | vmdk). (required) :type osu_export_disk_image_format:
str
Parameters: 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:
str
Parameters: 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:
str
Parameters: osu_export_bucket – The name of the OSU bucket you want to export the object to. (required) :type osu_export_bucket:
str
Parameters: - 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:
str
Returns: 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:
bool
Returns: 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 (
list
ofNode
) – 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:
str
Parameters: 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:
int
Parameters: lr_action – The type of action for the rule (always forward). :type lr_action:
str
Parameters: 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:
str
Parameters: - 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:
str
Parameters: 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:
int
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: 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:
str
Parameters: 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:
str
Parameters: security_groups – One or more IDs of security groups you want to assign to the load balancer. :type security_groups:
list
ofstr
Parameters: subnets – One or more IDs of Subnets in your Net that you want to attach to the load balancer. :type subnets:
list
ofstr
Parameters: 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:
list
ofstr
Parameters: tag_keys – The key of the tag, with a minimum of 1 character. (required) :type tag_keys:
list
ofstr
Parameters: tag_values – The value of the tag, between 0 and 255 characters. (required) :type tag_values:
list
ofstr
Parameters: l_backend_port – The port on which the back-end VM is listening (between 1 and 65535, both included). (required) :type l_backend_port:
int
Parameters: l_backend_protocol – The protocol for routing traffic to back-end VMs (HTTP | HTTPS | TCP | SSL | UDP). :type l_backend_protocol:
int
Parameters: 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:
int
Parameters: l_load_balancer_protocol – The routing protocol (HTTP | HTTPS | TCP | SSL | UDP). (required) :type l_load_balancer_protocol:
str
Parameters: l_server_certificate_id – The ID of the server certificate. (required) :type l_server_certificate_id:
str
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: 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:
str
Parameters: l_backend_port – The port on which the back-end VM is listening (between 1 and 65535, both included). (required) :type l_backend_port:
int
Parameters: l_backend_protocol – The protocol for routing traffic to back-end VMs (HTTP | HTTPS | TCP | SSL | UDP). :type l_backend_protocol:
int
Parameters: 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:
int
Parameters: l_load_balancer_protocol – The routing protocol (HTTP | HTTPS | TCP | SSL | UDP). (required) :type l_load_balancer_protocol:
str
Parameters: l_server_certificate_id – The ID of the server certificate. (required) :type l_server_certificate_id:
str
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: 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:
str
Parameters: load_balancer_name – The name of the load balancer for which you want to create a policy. (required) :type load_balancer_name:
str
Parameters: policy_name – The name of the policy. This name must be unique and consist of alphanumeric characters and dashes (-). (required) :type policy_name:
str
Parameters: policy_type – The type of stickiness policy you want to create: app or load_balancer. (required) :type policy_type:
str
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: 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:
str
Parameters: tag_keys – The key of the tag, with a minimum of 1 character. (required) :type tag_keys:
list
ofstr
Parameters: tag_values – The value of the tag, between 0 and 255 characters. (required) :type tag_values:
list
ofstr
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: 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:
str
Parameters: subnet_id – The ID of the Subnet in which you want to create the NAT service. (required) :type subnet_id:
str
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: 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:
str
Parameters: 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:
str
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: 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:
list
ofstr
Parameters: service_name – The prefix list name corresponding to the service (for example, com.outscale.eu-west-2.osu for OSU). (required) :type service_name:
str
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: 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:
str
Parameters: source_net_id – The ID of the Net you send the peering request from. (required) :type source_net_id:
str
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: 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:
list
ofstr
Parameters: - private_ips (
list
ofstr
) – The private IP addresses of the NIC. - security_group_ids – One or more IDs of security groups for
the NIC. :type security_group_ids:
list
ofstr
Parameters: subnet_id – The ID of the Subnet in which you want to create the NIC. (required) :type subnet_id:
list
ofstr
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: 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:
bool
Returns: 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:
str
Parameters: gateway_id – The ID of an Internet service or virtual gateway attached to your Net. :type gateway_id:
str
Parameters: - 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:
str
Parameters: 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:
bool
Returns: 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:
str
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: 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:
str
Parameters: - 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:
str
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: 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:
bool
Parameters: from_port_range – The beginning of the port range for the TCP and UDP protocols, or an ICMP type number. :type from_port_range:
int
Parameters: 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:
str
Parameters: rules – Information about the security group rule to create: https://docs.outscale.com/api#createsecuritygrouprule :type rules:
list
ofdict
Parameters: 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:
str
Parameters: sg_id – The ID of the security group for which you want to create a rule. (required) :type sg_id:
str
Parameters: 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:
str
Parameters: to_port_range – the end of the port range for the TCP and UDP protocols, or an ICMP type number. :type to_port_range:
int
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: 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:
str
Parameters: name – A unique name for the certificate. Constraints: 1-128 alphanumeric characters, pluses (+), equals (=), commas (,), periods (.), at signs (@), minuses (-), or underscores (_). (required) :type name:
str
Parameters: path – The path to the server certificate, set to a slash (/) if not specified. :type path:
str
Parameters: private_key – The PEM-encoded private key matching the certificate. (required) :type private_key:
str
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: 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:
str
Parameters: 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 :
str
Parameters: 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 :
str
Parameters: osu_export_bucket – The name of the OSU bucket you want to export the object to. (required) :type osu_export_bucket :
str
Parameters: osu_export_manifest_url – The URL of the manifest file. :type osu_export_manifest_url :
str
Parameters: 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 :
str
Parameters: snapshot – The ID of the snapshot to export. (required) :type snapshot :
VolumeSnapshot
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run :
bool
Returns: 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:
str
Parameters: net_id – The ID of the Net for which you want to create a Subnet. (required) :type net_id:
str
Parameters: subregion_name – the name of the Subregion in which you want to create the Subnet. :type subregion_name:
str
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: 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:
str
Parameters: tag_value – The value of the tag, between 0 and 255 characters. (required) :type tag_value:
str
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. (required) :type dry_run:
bool
Returns: 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:
list
ofdict
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: 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:
str
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: 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:
str
Parameters: 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:
bool
Parameters: virtual_gateway_id – The ID of the virtual gateway. (required) :type virtual_gateway_id:
str
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: 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:
str
Parameters: vpn_connection_id – The ID of the target VPN connection of the static route. (required) :type vpn_connection_id:
str
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: 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:
str
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: 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:
str
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: true if successful. Return type: bool
if 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:
str
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: 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:
str
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: 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:
str
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: 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:
str
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: 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:
str
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: 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:
str
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: 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:
str
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: 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:
str
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: 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:
str
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: 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:
str
Parameters: load_balancer_ports – One or more port numbers of the listeners you want to delete.. (required) :type load_balancer_ports:
list
ofint
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: 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:
str
Parameters: policy_name – The name of the policy you want to delete. (required) :type policy_name:
str
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: 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:
str
Parameters: tag_keys – The key of the tag, with a minimum of 1 character. :type tag_keys:
str
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: 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:
str
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: 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:
bool
Returns: 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:
str
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: 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:
str
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: 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:
bool
Returns: 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:
bool
Parameters: public_ip – The EIP. In the public Cloud, this parameter is required. :type public_ip:
str
Parameters: 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:
str
Returns: 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:
str
Parameters: route_table_id – The ID of the route table from which you want to delete 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:
bool
Returns: 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:
str
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: 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:
str
Parameters: - 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:
bool
Returns: 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:
bool
Parameters: from_port_range – The beginning of the port range for the TCP and UDP protocols, or an ICMP type number. :type from_port_range:
int
Parameters: 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:
str
Parameters: ip_protocol – The IP protocol name (tcp, udp, icmp) or protocol number. By default, -1, which means all protocols. :type ip_protocol:
str
Parameters: rules – Information about the security group rule to create: https://docs.outscale.com/api#createsecuritygrouprule :type rules:
list
ofdict
Parameters: 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:
str
Parameters: sg_id – The ID of the security group for which you want to delete a rule. (required) :type sg_id:
str
Parameters: 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:
str
Parameters: to_port_range – the end of the port range for the TCP and UDP protocols, or an ICMP type number. :type to_port_range:
int
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: 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:
str
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: 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:
str
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: 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:
list
ofdict
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: 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:
str
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: 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:
str
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: 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:
str
Parameters: 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:
str
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: 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:
str
Parameters: load_balancer_name – The name of the load balancer. (required) :type load_balancer_name:
str
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: 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:
str
Parameters: 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:
str
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: 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:
str
Parameters: vm_id – The ID of the VM you want to attach the fGPU to. (required) :type vm_id:
str
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: 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:
str
Parameters: net_id – The ID of the Net to which you want to attach the Internet service. (required) :type net_id:
str
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: 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:
str
Parameters: node – The index of the VM device for the NIC attachment (between 1 and 7, both included). :type node:
Node
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: 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:
str
Parameters: - 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:
list
ofstr
Parameters: 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:
int
Parameters: 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:
bool
Returns: 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:
str
Parameters: virtual_gateway_id – The ID of the virtual gateway. (required) :type virtual_gateway_id:
str
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: 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 (
list
ofstr
) – The IDs of the access keys. - states (
list
ofstr
) – 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:
bool
Returns: list
of Access KeysReturn type: list
ofdict
- 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:
list
of ``str`Parameters: bgp_asns – The Border Gateway Protocol (BGP) Autonomous System Numbers (ASNs) of the connections. :type bgp_asns:
list
ofint
Parameters: connection_types – The types of communication tunnels used by the client gateways (only ipsec.1 is supported). (required) :type connection_types:
list```of ``str
Parameters: public_ips – The public IPv4 addresses of the client gateways. :type public_ips:
list
ofstr
Parameters: states – The states of the client gateways (pending | available | deleting | deleted). :type states:
list
ofstr
Parameters: tag_keys – The keys of the tags associated with the client gateways. :type tag_keys:
list
ofstr
Parameters: tag_values – The values of the tags associated with the client gateways. :type tag_values:
list
ofstr
Parameters: tags – the key/value combination of the tags associated with the client gateways, in the following format: “Filters”:{“Tags”:[“TAGKEY=TAGVALUE”]}. :type tags:
list
ofstr
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: Returns list
of Client GatewayReturn type: list
ofdict
-
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:
str
Parameters: 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:
str
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: a list of Consumption Entries Return type: list
ofdict
-
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:
list
ofbool
Parameters: - dhcp_options_set_id (
list
ofstr
) – The IDs of the DHCP options sets. - domaine_names – The domain names used for the DHCP
options sets. :type domaine_names:
list
ofstr
Parameters: domaine_name_servers – The domain name servers used for the DHCP options sets. :type domaine_name_servers:
list
ofstr
Parameters: ntp_servers – The Network Time Protocol (NTP) servers used for the DHCP options sets. :type ntp_servers:
list
ofstr
Parameters: tag_keys – The keys of the tags associated with the DHCP options sets. :type ntp_servers:
list
ofstr
Parameters: tag_values – The values of the tags associated with the DHCP options sets. :type tag_values:
list
ofstr
Parameters: tags – The key/value combination of the tags associated with the DHCP options sets, in the following format: “Filters”:{“Tags”:[“TAGKEY=TAGVALUE”]}. :type tags:
list
ofstr
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: a list
of Dhcp OptionsReturn type: list
ofdict
- 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:
list
ofstr
Parameters: - direct_link_ids (
list
ofstr
) – The IDs of the DirectLinks. - dry_run – If true, checks whether you have the required
permissions to perform the action. :type dry_run:
bool
Returns: list
of Direct Link interfacesReturn type: list
ofdict
- 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 (
list
ofstr
) – The IDs of the DirectLinks. (required) - dry_run – If true, checks whether you have the required
permissions to perform the action. :type dry_run:
bool
Returns: list
of Direct LinksReturn type: list
ofdict
- 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:
bool
Returns: Returns the Flexible Gpu Catalog Return type: list
ofdict
-
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:
bool
Parameters: - flexible_gpu_ids (
list
ofstr
) – One or more IDs of fGPUs. - generations – The processor generations that the fGPUs are
compatible with. (required) :type generations:
list
ofstr
Parameters: 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:
list
ofstr
Parameters: states – The states of the fGPUs (allocated | attaching | attached | detaching). :type states:
list
ofstr
Parameters: subregion_names – The Subregions where the fGPUs are located. :type subregion_names:
list
ofstr
Parameters: - vm_ids (
list
ofstr
) – One or more IDs of VMs. - dry_run – If true, checks whether you have the required
permissions to perform the action. :type dry_run:
bool
Returns: Returns the Flexible Gpu Catalog Return type: list
ofdict
- 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 (
list
ofstr
) – The IDs of the export tasks. - dry_run – If true, checks whether you have the required
permissions to perform the action. :type dry_run:
bool
Returns: image export tasks Return type: list
ofdict
- 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 (
list
ofstr
) – One or more filters. - link_net_ids – The IDs of the Nets the Internet services
are attached to. :type link_net_ids:
list
ofstr
Parameters: 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:
list
ofstr
Parameters: tag_keys – The keys of the tags associated with the Internet services. :type tag_keys:
list
ofstr
Parameters: tag_values – The values of the tags associated with the Internet services. :type tag_values:
list
ofstr
Parameters: tags – The key/value combination of the tags associated with the Internet services, in the following format: “Filters”:{“Tags”:[“TAGKEY=TAGVALUE”]}. :type tags:
list
ofstr
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: Returns the list of Internet Services Return type: list
ofdict
- 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 (
list
ofstr
) – The names of the listener rules. - dry_run – If true, checks whether you have the required
permissions to perform the action. :type dry_run:
bool
Returns: Returns the list of Listener Rules Return type: list
ofdict
- 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:
list
ofstr
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: a list of load balancer tags Return type: list
ofdict
-
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:
list
ofstr
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: a list of load balancer Return type: list
ofdict
-
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 (
list
ofstr
) – The IDs of the NAT services. - net_ids (
list
ofstr
) – The IDs of the Nets in which the NAT services are. - states – The states of the NAT services
(pending | available | deleting | deleted). :type states:
list
ofstr
Parameters: subnet_ids – The IDs of the Subnets in which the NAT services are. :type subnet_ids:
list
ofstr
Parameters: tag_keys – The keys of the tags associated with the NAT services. :type tag_keys:
list
ofstr
Parameters: tag_values – The values of the tags associated with the NAT services. :type tag_values:
list
ofstr
Parameters: tags – The values of the tags associated with the NAT services. :type tags:
list
ofstr
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: a list of back end vms health Return type: list
ofdict
- 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:
list
ofstr
Parameters: 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:
list
ofstr
Parameters: - accepter_net_net_ids (
list
ofstr
) – 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:
list
ofstr
Parameters: - source_net_ip_ranges (
list
ofstr
) – The IP ranges of the peer Nets. - source_net_net_ids (
list
ofstr
) – The IDs of the peer Nets. - net_peering_ids (
list
ofstr
) – The IDs of the Net peering connections. - state_messages – Additional information about the states of
the Net peering connections. :type state_messages:
list
ofstr
Parameters: states_names – The states of the Net peering connections (pending-acceptance | active | rejected | failed | expired | deleted). :type states_names:
list
ofstr
Parameters: tag_keys – The keys of the tags associated with the Net peering connections. :type tag_keys:
list
ofstr
Parameters: tag_values – the values of the tags associated with the Net peering connections. :type tag_values:
list
ofstr
Parameters: tags – The key/value combination of the tags associated with the Net peering connections, in the following format: “Filters”:{“Tags”:[“TAGKEY=TAGVALUE”]}. :type tags:
list
ofstr
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: A list of Net Access Points Return type: list
ofdict
- 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 (
list
ofstr
) – 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:
list
ofstr
Parameters: - is_default (
bool
) – If true, the Net used is the default one. - net_ids (
list
ofstr
) – The IDs of the Nets. - states (
list
ofstr
) – The states of the Nets (pending | available). - tag_keys (
list
ofstr
) – The keys of the tags associated with the Nets. - tag_values – The values of the tags associated with the
Nets. :type tag_values:
list
ofstr
Parameters: tags – The key/value combination of the tags associated with the Nets, in the following format: “Filters”:{“Tags”:[“TAGKEY=TAGVALUE”]}. :type tags:
list
ofstr
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: A list of Nets Return type: list
ofdict
- 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 (
list
ofstr
) – 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:
list
ofstr
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: A list of Services Return type: list
ofdict
- 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 (
list
ofstr
) – The IDs of the Net access points. - net_ids (
list
ofstr
) – 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:
list
ofstr
Parameters: states – The states of the Net access points (pending | available | deleting | deleted). :type states:
list
ofstr
Parameters: tag_keys – The keys of the tags associated with the Net access points. :type tag_keys:
list
ofstr
Parameters: tag_values – The values of the tags associated with the Net access points. :type tag_values:
list
ofstr
Parameters: tags – The key/value combination of the tags associated with the Net access points, in the following format: “Filters”:{“Tags”:[“TAGKEY=TAGVALUE”]}. :type tags:
list
ofstr
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: A list of Net Access Points Return type: list
ofdict
- 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:
list
ofint
Parameters: link_nic_vm_ids – The IDs of the VMs the NICs are attached to. :type link_nic_vm_ids:
list
ofstr
Parameters: - nic_ids (
list
ofstr
) – The IDs of the NICs. - private_ips_private_ips – The private IP addresses of the
NICs. :type private_ips_private_ips:
list
ofstr
Parameters: - subnet_ids (
list
ofstr
) – 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:
bool
Returns: A list of the Nics Return type: list
ofdict
- 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:
bool
Parameters: - memory_sizes (
list
ofint
) – The amounts of memory, in gibibytes (GiB). - vcore_counts (
list
ofint
) – The numbers of vCores. - vm_type_names – The names of the VM types. For more
information, see Instance Types. :type vm_type_names:
list
ofstr
Parameters: volume_counts – The maximum number of ephemeral storage disks. :type volume_counts:
list
ofint
Parameters: volume_sizes – The size of one ephemeral storage disk, in gibibytes (GiB). :type volume_sizes:
list
ofint
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: list of vm types Return type: list
ofdict
- 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:
bool
Parameters: - subregion_names (
list
ofstr
) – The names of the Subregions of the VMs. - vm_ids (
list
ofstr
) – One or more IDs of VMs. - vm_states – The states of the VMs
(pending | running | stopping | stopped | shutting-down | terminated | quarantine) :type vm_states:
list
ofstr
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: list the status of one or more vms Return type: list
ofdict
- 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 (
list
ofstr
) – The IDs of the product types. - dry_run – If true, checks whether you have the required
permissions to perform the action. :type dry_run:
bool
Returns: A list
of Product TypeReturn type: list
ofdict
- 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:
bool
Returns: 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:
string
Returns: 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 (
list
ofstr
) – The group names of the quotas. - quota_names (
list
ofstr
) – The names of the quotas. - quota_types – The resource IDs if these are
resource-specific quotas, global if they are not. :type quota_types:
list
ofstr
Parameters: - short_descriptions (
list
ofstr
) – The description of the quotas. - dry_run – If true, checks whether you have the required
permissions to perform the action. :type dry_run:
bool
Returns: A list
of Product TypeReturn type: list
ofdict
- 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:
list
ofstr
Parameters: 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:
list
ofstr
Parameters: link_route_table_main – If true, the route tables are the main ones for their Nets. :type link_route_table_main:
bool
Parameters: link_subnet_ids – The IDs of the Subnets involved in the associations. :type link_subnet_ids:
list
ofstr
Parameters: net_ids – The IDs of the route tables involved in the associations. :type net_ids:
list
ofstr
Parameters: - route_creation_methods (
list
ofstr
) – 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:
list
ofstr
Parameters: route_destination_service_ids – The service IDs specified in routes in the tables. :type route_destination_service_ids:
list
ofstr
Parameters: route_gateway_ids – The IDs of the gateways specified in routes in the tables. :type route_gateway_ids:
list
ofstr
Parameters: route_nat_service_ids – The IDs of the NAT services specified in routes in the tables. :type route_nat_service_ids:
list
ofstr
Parameters: route_net_peering_ids – The IDs of the Net peering connections specified in routes in the tables. :type route_net_peering_ids:
list
ofstr
Parameters: 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:
list
ofstr
Parameters: - route_table_ids (
list
ofstr
) – The IDs of the route tables. - route_vm_ids – The IDs of the VMs specified in routes in
the tables. :type route_vm_ids:
list
ofstr
Parameters: tag_keys – The keys of the tags associated with the route tables. :type tag_keys:
list
ofstr
Parameters: tag_values – The values of the tags associated with the route tables. :type tag_values:
list
ofstr
Parameters: tags – The key/value combination of the tags associated with the route tables, in the following format: “Filters”:{“Tags”:[“TAGKEY=TAGVALUE”]}. :type tags:
list
ofstr
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: list of Route Tables Return type: list
ofdict
- 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:
bool
Returns: 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:
list
ofstr
Parameters: net_ids – The IDs of the Nets specified when the security groups were created. :type net_ids:
list
ofstr
Parameters: - security_group_ids (
list
ofstr
) – The IDs of the security groups. - security_group_names (
list
ofstr
) – The names of the security groups. - tag_keys – the keys of the tags associated with the
security groups. :type tag_keys:
list
ofstr
Parameters: tag_values – The values of the tags associated with the security groups. :type tag_values:
list
ofstr
Parameters: tags – the key/value combination of the tags associated with the security groups, in the following format: “Filters”:{“Tags”:[“TAGKEY=TAGVALUE”]}. :type tags:
list
ofstr
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: a list of Security Groups Return type: list
ofdict
- 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:
bool
Returns: server certificate Return type: list
ofdict
- 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 (
list
ofstr
) – The IDs of the export tasks. - dry_run – If true, checks whether you have the required
permissions to perform the action. :type dry_run:
bool
Returns: snapshot export tasks Return type: list
ofdict
- 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:
str
Parameters: - 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:
str
Parameters: tag_keys – the keys of the tags associated with the subnets. :type tag_keys:
list
ofstr
Parameters: tag_values – The values of the tags associated with the subnets. :type tag_values:
list
ofstr
Parameters: tags – the key/value combination of the tags associated with the subnets, in the following format: “Filters”:{“Tags”:[“TAGKEY=TAGVALUE”]}. :type tags:
list
ofstr
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: a list of Subnets Return type: list
ofdict
- 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:
bool
Returns: list of tags Return type: list
ofdict
- 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:
list
ofdict
Parameters: link_net_ids – The IDs of the Nets the virtual gateways are attached to. :type link_net_ids:
list
ofdict
Parameters: link_states – The current states of the attachments between the virtual gateways and the Nets (attaching | attached | detaching | detached). :type link_states:
list
ofdict
Parameters: states – The states of the virtual gateways (pending | available | deleting | deleted). :type states:
list
ofdict
Parameters: tag_keys – The keys of the tags associated with the virtual gateways. :type tag_keys:
list
ofdict
Parameters: tag_values – The values of the tags associated with the virtual gateways. :type tag_values:
list
ofdict
Parameters: tags – The key/value combination of the tags associated with the virtual gateways, in the following format: “Filters”:{“Tags”:[“TAGKEY=TAGVALUE”]}. :type tags:
list
ofdict
Parameters: - virtual_gateway_id (
list
ofdict
) – The IDs of the virtual gateways. - dry_run – If true, checks whether you have the required
permissions to perform the action. :type dry_run:
bool
Returns: list of virtual gateway Return type: list
ofdict
- 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:
str
Parameters: - backend_vm_ids (
list
ofstr
) – 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:
bool
Returns: a list of back end vms health Return type: list
ofdict
- 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:
list
ofint
Parameters: - client_gateway_ids (
list
ofstr
) – The IDs of the client gateways. - connection_types – The types of the VPN connections (only
ipsec.1 is supported). :type connection_types:
list
ofstr
Parameters: states – The states of the vpn connections (pending | available). :type states:
str
Parameters: - 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:
bool
Parameters: tag_keys – the keys of the tags associated with the subnets. :type tag_keys:
list
ofstr
Parameters: tag_values – The values of the tags associated with the subnets. :type tag_values:
list
ofstr
Parameters: tags – the key/value combination of the tags associated with the subnets, in the following format: “Filters”:{“Tags”:[“TAGKEY=TAGVALUE”]}. :type tags:
list
ofstr
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: a list of Subnets Return type: list
ofdict
- 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:
bool
Returns: 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:
bool
Returns: 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:
List
ofstr
Parameters: - ca_ids (
List
ofstr
) – The List containing CA ids to filter the request. - cns (
List
ofstr
) – The List containing cns to filter the request. - descriptions – The List containing descriptions to filter
the request. :type descriptions:
List
ofstr
Parameters: ip_ranges – The List containing ip ranges in CIDR notation (for example, 192.0.2.0/16) to filter the request. :type ip_ranges:
List
ofstr
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: a List of API access rules. Return type: List
ofdict
if successful ordict
- ca_ids (
Returns information about one or more of your Client Certificate Authorities (CAs).
Parameters: - ca_fingerprints (
list
ofstr
) – The fingerprints of the CAs. - ca_ids (
list
ofstr
) – The IDs of the CAs. - descriptions (
list
ofstr
) – The descriptions of the CAs. - dry_run – If true, checks whether you have the required
permissions to perform the action. :type dry_run:
bool
Returns: a list of all Ca matching filled filters. Return type: list
ofdict
- 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:
bool
Returns: 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:
str
Parameters: - backend_vm_ids (
list
ofstr
) – 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:
bool
Returns: a list of back end vms health Return type: list
ofdict
- 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:
str
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: 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:
str
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: 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:
bool
Returns: 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:
str
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: 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:
str
Parameters: net_id – The ID of the Net from which you want to detach the Internet service. (required) :type net_id:
str
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: 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:
str
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: 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:
list
ofstr
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: 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:
bool
Returns: 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:
str
Parameters: virtual_gateway_id – The ID of the Net from which you want to detach the virtual gateway. (required) :type virtual_gateway_id:
str
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: 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:
str
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: 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:
str
Parameters: - 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:
str
Parameters: phone_number – The landline phone number of the account owner. :type phone_number:
str
Parameters: - state_province (
str
) – The state/province of the account. - vat_number – The value added tax (VAT) number for
the account. :type vat_number:
str
Parameters: 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:
str
Parameters: ca_ids – One or more IDs of Client Certificate Authorities (CAs). :type ca_ids:
List
ofstr
Parameters: cns – One or more Client Certificate Common Names (CNs). If this parameter is specified, you must also specify the ca_ids parameter. :type cns:
List
ofstr
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:
List
ofstr
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: a List of API access rules. Return type: List
ofdict
if 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:
bool
Returns: 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:
bool
Parameters: - 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:
bool
Returns: 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:
list
ofdict
Parameters: 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:
boolean
Parameters: 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:
list
ofdict
Parameters: 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:
boolean
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: 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:
str
Parameters: 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:
str
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: 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:
str
Parameters: 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:
str
Parameters: 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:
int
Parameters: health_check_interval – Information about the health check configuration. (required) :type health_check_interval:
int
Parameters: health_check_path – The path for HTTP or HTTPS requests. (required) :type health_check_path:
str
Parameters: health_check_port – The port number (between 1 and 65535, both included). (required) :type health_check_port:
int
Parameters: health_check_protocol – The protocol for the URL of the VM (HTTP | HTTPS | TCP | SSL | UDP). (required) :type health_check_protocol:
str
Parameters: 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:
int
Parameters: 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:
int
Parameters: 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:
int
Parameters: load_balancer_name – The name of the load balancer. (required) :type load_balancer_name:
str
Parameters: load_balancer_port – The port on which the load balancer is listening (between 1 and 65535, both included). :type load_balancer_port:
int
Parameters: policy_names – The list of policy names (must contain all the policies to be enabled). :type policy_names:
list
ofstr
Parameters: server_certificate_id – The list of policy names (must contain all the policies to be enabled). :type server_certificate_id:
str
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: 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:
str
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: 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:
list
ofstr
Parameters: net_access_point_id – The ID of the Net access point. (required) :type net_access_point_id:
str
Parameters: remove_route_table_ids – One or more IDs of route tables to disassociate from the specified Net access point. :type remove_route_table_ids:
list
ofstr
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: 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:
str
Parameters: - 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:
list
ofstr
Parameters: - nic_id (
list
ofstr
) – 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:
bool
Returns: 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:
dict
Parameters: - 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:
bool
Parameters: deletion_protection – If true, you cannot terminate the VM using Cockpit, the CLI or the API. If false, you can. :type deletion_protection:
bool
Parameters: 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:
bool
Parameters: - keypair_name (
str
) – The name of the keypair. - performance – The performance of the VM
(standard | high | highest). :type performance:
str
Parameters: security_group_ids – One or more IDs of security groups for the VM. :type security_group_ids:
bool
Parameters: - 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:
str
Parameters: vm_type – The type of VM. For more information, see Instance Types: https://wiki.outscale.net/display/EN/Instance+Types :type vm_type:
str
Returns: 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:
str
Parameters: gateway_id – The ID of an Internet service or virtual gateway attached to your Net. :type gateway_id:
str
Parameters: - 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:
str
Parameters: 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:
bool
Returns: 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:
boolean
Parameters: - 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:
str
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: 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:
str
Parameters: new_name ( str
) – A new name for the server certificate.:param new_path:A new path for the server certificate. :type new_path:
str
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: 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:
list
ofstr
Parameters: 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:
bool
Parameters: perm_to_create_volume_removals_account_id – The account ID of one or more users who have permissions for the resource. list
ofstr
Parameters: - 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:
bool
Returns: snapshot export tasks Return type: list
ofdict
- 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:
str
Parameters: 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:
bool
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: 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: KeyPair
object- 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: KeyPair
object- 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:
list
ofstr
Parameters: 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:
list
ofstr
Parameters: architectures – The architectures of the OMIs (i386 | x86_64). :type architectures:
list
ofstr
Parameters: 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:
bool
Parameters: block_device_mapping_device_names – The device names for the volumes. :type block_device_mapping_device_names:
list
ofstr
Parameters: block_device_mapping_snapshot_ids – The IDs of the snapshots used to create the volumes. :type block_device_mapping_snapshot_ids:
list
ofstr
Parameters: block_device_mapping_volume_sizes – The sizes of the volumes, in gibibytes (GiB). :type block_device_mapping_volume_sizes:
list
ofint
Parameters: block_device_mapping_volume_types – The types of volumes (standard | gp2 | io1). :type block_device_mapping_volume_types:
list
ofstr
Parameters: descriptions – The descriptions of the OMIs, provided when they were created. :type descriptions:
list
ofstr
Parameters: file_locations – The locations where the OMI files are stored on Object Storage Unit (OSU). :type file_locations:
list
ofstr
Parameters: - image_ids (
list
ofstr
) – The IDs of the OMIs. - image_names – The names of the OMIs, provided when
they were created. :type image_names:
list
ofstr
Parameters: permission_to_launch_account_ids – The account IDs of the users who have launch permissions for the OMIs. :type permission_to_launch_account_ids:
list
ofstr
Parameters: permission_to_lauch_global_permission – If true, lists all public OMIs. If false, lists all private OMIs. :type permission_to_lauch_global_permission:
list
ofstr
Parameters: root_device_names – The device names of the root devices (for example, /dev/sda1). :type root_device_names:
list
ofstr
Parameters: root_device_types – The types of root device used by the OMIs (always bsu). :type root_device_types:
list
ofstr
Parameters: states – The states of the OMIs (pending | available | failed). :type states:
list
ofstr
Parameters: - tag_keys (
list
ofstr
) – The keys of the tags associated with the OMIs. - tag_values – The values of the tags associated
with the OMIs. :type tag_values:
list
ofstr
Parameters: tags – The key/value combination of the tags associated with the OMIs, in the following format:”Filters”: {“Tags”:[“TAGKEY=TAGVALUE”]}. :type tags:
list
ofstr
Parameters: virtualization_types – The virtualization types (always hvm). :type virtualization_types:
list
ofstr
Parameters: dry_run – If true, checks whether you have the required permissions to perform the action. :type dry_run:
bool
Returns: a list of image Return type: list
ofdict
- 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: list
ofNodeSize
-
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: list
of :classVolumeSnapshot
-
list_volumes
(ex_data: str = '{}')[source]¶ List all volumes. :rtype:
list
ofStorageVolume
-
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 (
list
ofNode
) – 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_nodes
method.
Returns: [(Node, ip_addresses)]
list of tuple of Node instance and list of ip_address on success.Return type: list
oftuple
- nodes (
-
Outscale Implementation of Libcloud¶
The Outscale driver implements the following NodeDriver
functions:
Regions¶
list_locations
- Returns a list ofNodeLocation
Nodes¶
create_node
- Creates aNode
reboot_node
- Reboots aNode
list_nodes
- Returns a list ofNode
destroy_node
- Destroys an existingNode
start_node
- Start aNode
stop_node
- Stop aNode
Images¶
create_images
- Returns aNodeImage
list_images
- Returns a list ofNodeImage
get_image
- Returns aNodeImage
delete_image
- Return abool
ex_create_image_export_task
- Returns adict
ex_list_image_export_task
- Returns alist
ofdict
ex_update_image
- Returns adict
Key Pairs¶
create_key_pair
- Returns aKeyPair
list_key_pairs
- Returns a list ofKeyPair
get_key_pair
- Returns aKeyPair
delete_key_pair
- Returns abool
Snapshots¶
create_volume_snapshot
- Returns aVolumeSnapshot
list_snapshots
- Returns a list ofVolumeSnapshot
destroy_volume_snapshot
- Returns abool
list_volume_snapshots
- Returns a list ofVolumeSnapshot
ex_create_snapshot_export_task
- Returns adict
ex_list_snapshot_export_tasks
- Returns alist
ofdict
ex_update_snapshot
- Returns adict
Volumes¶
create_volume
- Returns aStorageVolume
list_volumes
- Returns a list ofStorageVolume
destroy_volume
- Returns abool
attach_volume
- Return abool
detach_volume
- Returns abool
Outscale Extra Functions¶
The Outscale driver implement the following extra methods:
Public IPs¶
ex_create_public_ip
- Returns abool
ex_delete_public_ip
- Returns abool
ex_list_public_ips
- Returns adict
ex_list_public_ip_ranges
- Returns adict
ex_attach_public_ip
- Returns abool
ex_detach_public_ip
- Returns abool
Accounts¶
ex_check_account
- Returns abool
ex_read_account
- Returns adict
ex_reset_account_password
- Returns adict
ex_send_reset_password_email
- Returns abool
ex_create_account
- Returns abool
ex_update_account
- Returns adict
ex_list_consumption_account
- Returns alist
ofdict
Tags¶
ex_create_tag
- Returns abool
ex_create_tags
- Returns abool
ex_delete_tags
- Returns abool
ex_list_tags
- Returns adict
Regions and SubRegions¶
ex_list_regions
- Returns alist
ofdict
ex_list_subregions
- Returns alist
ofdict
Access Keys¶
ex_create_access_key
- Returns adict
ex_delete_access_key
- Returns abool
ex_list_access_keys
- Returns alist
ofdict
ex_list_secret_access_key
- Returns adict
ex_update_access_key
- Returns adict
Client Gateways¶
ex_create_client_gateway
- Returns adict
ex_delete_client_gateway
- Returns abool
ex_list_client_gateways
- Returns alist
ofdict
Dhcp Options¶
ex_create_dhcp_options
- Returns adict
ex_delete_dhcp_options
- Returns abool
ex_list_dhcp_options
- Returns alist
ofdict
Direct Links¶
ex_create_direct_link
- Returns adict
ex_delete_direct_link
- Returns abool
ex_list_direct_links
- Returns alist
ofdict
Direct Link Interfaces¶
ex_create_direct_link_interface
- Returns adict
ex_delete_direct_link_interface
- Returns abool
ex_list_direct_link_interfaces
- Returns alist
ofdict
Flexible GPU¶
ex_create_flexible_gpu
- Returns adict
ex_delete_flexible_gpu
- Returns abool
ex_link_flexible_gpu
- Returns abool
ex_unlink_flexible_gpu
- Returns abool
ex_list_flexible_gpu_catalog
- Returns alist
ofdict
ex_list_flexible_gpus
- Returns alist
ofdict
ex_update_flexible_gpu
- Returns adict
Internet Services¶
ex_create_internet_service
- Returns adict
ex_delete_internet_service
- Returns abool
ex_link_internet_service
- Returns abool
ex_unlink_internet_service
- Returns abool
ex_list_internet_services
- Returns alist
ofdict
Listener¶
ex_create_listener_rule
- Returns adict
ex_create_load_balancer_listeners
- Returns adict
ex_delete_listener_rule
- Returns abool
ex_delete_load_balancer_listeners
- Returns abool
ex_list_listener_rules
- Returns abool
ex_update_listener_rule
- Returns adict
Load Balancers¶
ex_create_load_balancer
- Returns adict
ex_update_load_balancer
- Returns adict
ex_create_load_balancer_tags
- Returns abool
ex_delete_load_balancer
- Returns abool
ex_delete_load_balancer_tags
- Returns abool
ex_deregister_vms_in_load_balancer
- Returns abool
ex_register_vms_in_load_balancer
- Returns abool
ex_list_load_balancer_tags
- Returns alist
ofdict
ex_list_vms_health
- Returns alist
ofdict
ex_list_load_balancers
- Returns alist
ofdict
Load Balancer Policies¶
ex_create_load_balancer_policy
- Returns adict
ex_delete_load_balancer_policy
- Returns abool
Nat Services¶
ex_create_nat_service
- Returns adict
ex_delete_nat_service
- Returns abool
ex_list_nat_services
- Returns alist
ofdict
Net¶
ex_create_net
- Returns adict
ex_delete_net
- Returns abool
ex_list_nets
- Returns alist
ofdict
ex_update_net
- Returns adict
Net Access Point¶
ex_create_net_access_point
- Returns adict
ex_delete_net_access_point
- Returns abool
ex_list_net_access_point_services
- Returns alist
ofdict
ex_list_net_access_points
- Returns alist
ofdict
ex_update_net_access_point
- Returns adict
Net Peerings¶
ex_accept_net_peering
- Returns adict
ex_create_net_peering
- Returns adict
ex_delete_net_peering
- Returns abool
ex_list_net_peerings
- Returns alist
ofdict
ex_reject_net_peering
- Returns adict
Nics¶
ex_create_nic
- Returns adict
ex_delete_nic
- Returns abool
ex_link_nic
- Returns abool
ex_unlink_nic
- Returns abool
ex_link_private_ips
- Returns abool
ex_list_nics
- Returns alist
ofdict
ex_unlink_private_ips
- Returns abool
ex_update_nic
- Returns adict
Product Types¶
ex_list_product_types
- Returns alist
ofdict
Quotas¶
ex_list_quotas
- Returns alist
ofdict
Routes¶
ex_create_route
- Returns adict
ex_delete_route
- Returns abool
ex_update_route
- Returns adict
Route Tables¶
ex_create_route_table
- Returns adict
ex_delete_route_table
- Returns abool
ex_link_route_table
- Returns abool
ex_list_route_tables
- Returns alist
ofdict
ex_unlink_route_table
- Returns abool
Server Certificates¶
ex_create_server_certificate
- Returns adict
ex_delete_server_certificate
- Returns abool
ex_list_server_certificates
- Returns alist
ofdict
ex_update_server_certificate
- Returns adict
Virtual Gateways¶
ex_create_virtual_gateway
- Returns adict
ex_delete_virtual_gateway
- Returns abool
ex_link_virtual_gateway
- Returns adict
ex_list_virtual_gateways
- Returns alist
ofdict
ex_unlink_virtual_gateway
- Returns abool
ex_update_route_propagation
- Returns adict
Security Groups¶
ex_create_security_group
- Returns adict
ex_delete_security_group
- Returns abool
ex_list_security_groups
- Returns alist
ofdict
Security Group Rules¶
ex_create_security_group_rule
- Returns adict
ex_delete_security_group_rule
- Returns adict
Subnets¶
ex_create_subnet
- Returns adict
ex_delete_subnet
- Returns abool
ex_list_subnets
- Returns alist
ofdict
ex_update_subnet
- Returns adict
Tasks¶
ex_delete_export_task
- Returns abool
Vpn Connections¶
ex_create_vpn_connection
- Returns adict
ex_create_vpn_connection_route
- Returns abool
ex_delete_vpn_connection
- Returns abool
ex_delete_vpn_connection_route
- Returns abool
ex_list_vpn_connections
- Returns alist
ofdict
Nodes¶
ex_read_admin_password_node
- Returns astr
ex_read_console_output_node
- Returns astr
ex_list_node_types
- Returns alist
ofdict
ex_list_nodes_states
- Returns alist
ofdict
ex_update_node
- Returns alist
ofdict
Certificate Authority¶
ex_create_certificate_authority
- Returns adict
ex_delete_certificate_authority
- Returns abool
ex_read_certificate_authorities
- Returns alist
ofdict
API Access Rules¶
ex_create_api_access_rule
- Returns adict
ex_delete_api_access_rule
- Returns abool
ex_read_api_access_rules
- Returns alist
ofdict
ex_update_api_access_rule
- Returns adict