clc_aa_policy – Create or Delete Anti Affinity Policies at CenturyLink Cloud

Synopsis

  • An Ansible module to Create or Delete Anti Affinity Policies at CenturyLink Cloud.

Requirements

The below requirements are needed on the host that executes this module.

  • python = 2.7
  • requests >= 2.5.0
  • clc-sdk

Parameters

Parameter Choices/Defaults Comments
location
- / required
Datacenter in which the policy lives/should live.
name
- / required
The name of the Anti Affinity Policy.
state
-
    Choices:
  • present
  • absent
Whether to create or delete the policy.
wait
boolean
    Choices:
  • no
  • yes
Whether to wait for the tasks to finish before returning.

Notes

Note

  • To use this module, it is required to set the below environment variables which enables access to the Centurylink Cloud - CLC_V2_API_USERNAME, the account login id for the centurylink cloud - CLC_V2_API_PASSWORD, the account password for the centurylink cloud
  • Alternatively, the module accepts the API token and account alias. The API token can be generated using the CLC account login and password via the HTTP api call @ https://api.ctl.io/v2/authentication/login - CLC_V2_API_TOKEN, the API token generated from https://api.ctl.io/v2/authentication/login - CLC_ACCT_ALIAS, the account alias associated with the centurylink cloud
  • Users can set CLC_V2_API_URL to specify an endpoint for pointing to a different CLC environment.

Examples

# Note - You must set the CLC_V2_API_USERNAME And CLC_V2_API_PASSWD Environment variables before running these examples

---
- name: Create AA Policy
  hosts: localhost
  gather_facts: False
  connection: local
  tasks:
    - name: Create an Anti Affinity Policy
      clc_aa_policy:
        name: Hammer Time
        location: UK3
        state: present
      register: policy

    - name: debug
      debug:
        var: policy

---
- name: Delete AA Policy
  hosts: localhost
  gather_facts: False
  connection: local
  tasks:
    - name: Delete an Anti Affinity Policy
      clc_aa_policy:
        name: Hammer Time
        location: UK3
        state: absent
      register: policy

    - name: debug
      debug:
        var: policy

Return Values

Common return values are documented here, the following are the fields unique to this module:

Key Returned Description
policy
dictionary
success
The anti affinity policy information

Sample:
{'id': '1a28dd0988984d87b9cd61fa8da15424', 'name': 'test_aa_policy', 'location': 'UC1', 'links': [{'rel': 'self', 'href': '/v2/antiAffinityPolicies/wfad/1a28dd0988984d87b9cd61fa8da15424', 'verbs': ['GET', 'DELETE', 'PUT']}, {'rel': 'location', 'href': '/v2/datacenters/wfad/UC1', 'id': 'uc1', 'name': 'UC1 - US West (Santa Clara)'}]}


Status

Authors

  • CLC Runner (@clc-runner)

Hint

If you notice any issues in this documentation you can edit this document to improve it.

© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.8/modules/clc_aa_policy_module.html