ngine_io.cloudstack.cs_ip_address – Manages public IP address associations on Apache CloudStack based clouds.¶
Note
This plugin is part of the ngine_io.cloudstack collection (version 1.2.0).
To install it use: ansible-galaxy collection install ngine_io.cloudstack
.
To use it in a playbook, specify: ngine_io.cloudstack.cs_ip_address
.
New in version 0.1.0: of ngine_io.cloudstack
Synopsis¶
Acquires and associates a public IP to an account or project.
Due to API limitations this is not an idempotent call, so be sure to only conditionally call this when state=present.
Tagging the IP address can also make the call idempotent.
Requirements¶
The below requirements are needed on the host that executes this module.
python >= 2.6
cs >= 0.9.0
Parameters¶
Notes¶
Note
Ansible uses the
cs
library’s configuration method if credentials are not provided by the argumentsapi_url
,api_key
,api_secret
. Configuration is read from several locations, in the following order. TheCLOUDSTACK_ENDPOINT
,CLOUDSTACK_KEY
,CLOUDSTACK_SECRET
andCLOUDSTACK_METHOD
.CLOUDSTACK_TIMEOUT
environment variables. ACLOUDSTACK_CONFIG
environment variable pointing to an.ini
file. Acloudstack.ini
file in the current working directory. A.cloudstack.ini
file in the users home directory. Optionally multiple credentials and endpoints can be specified using ini sections incloudstack.ini
. Use the argumentapi_region
to select the section name, default section iscloudstack
. See https://github.com/exoscale/cs for more information.A detailed guide about cloudstack modules can be found in the CloudStack Cloud Guide.
This module supports check mode.
Examples¶
- name: Associate an IP address conditionally
ngine_io.cloudstack.cs_ip_address:
network: My Network
register: ip_address
when: instance.public_ip is undefined
- name: Disassociate an IP address
ngine_io.cloudstack.cs_ip_address:
ip_address: 1.2.3.4
state: absent
- name: Associate an IP address with tags
ngine_io.cloudstack.cs_ip_address:
network: My Network
tags:
- key: myCustomID
value: 5510c31a-416e-11e8-9013-02000a6b00bf
register: ip_address
- name: Disassociate an IP address with tags
ngine_io.cloudstack.cs_ip_address:
state: absent
tags:
- key: myCustomID
value: 5510c31a-416e-11e8-9013-02000a6b00bf
Return Values¶
Common return values are documented here, the following are the fields unique to this module:
Authors¶
Darren Worrall (@dazworrall)
René Moser (@resmo)