ngine_io.cloudstack.cs_vpc_offering – Manages vpc offerings on Apache CloudStack based clouds.
Note
This plugin is part of the ngine_io.cloudstack collection (version 2.0.0).
To install it use: ansible-galaxy collection install ngine_io.cloudstack.
To use it in a playbook, specify: ngine_io.cloudstack.cs_vpc_offering.
New in version 0.1.0: of ngine_io.cloudstack
Synopsis
- Create, update, enable, disable and remove CloudStack VPC offerings.
Requirements
The below requirements are needed on the host that executes this module.
- python >= 2.6
- cs >= 0.9.0
Parameters
| Parameter | Choices/Defaults | Comments | 
|---|---|---|
| api_http_method  string  | 
 | HTTP method used to query the API endpoint. If not given, the  CLOUDSTACK_METHODenv variable is considered. | 
| api_key  string / required  | API key of the CloudStack API. If not given, the  CLOUDSTACK_KEYenv variable is considered. | |
| api_secret  string / required  | Secret key of the CloudStack API. If not set, the  CLOUDSTACK_SECRETenv variable is considered. | |
| api_timeout  integer  | Default: 10 | HTTP timeout in seconds. If not given, the  CLOUDSTACK_TIMEOUTenv variable is considered. | 
| api_url  string / required  | URL of the CloudStack API e.g. https://cloud.example.com/client/api. If not given, the  CLOUDSTACK_ENDPOINTenv variable is considered. | |
| api_verify_ssl_cert  string  | Verify CA authority cert file. If not given, the  CLOUDSTACK_VERIFYenv variable is considered. | |
| display_text  string  | Display text of the vpc offerings | |
| name  string / required  | The name of the vpc offering | |
| poll_async  boolean  | 
 | Poll async jobs until job has finished. | 
| service_capabilities  list / elements=dictionary  | Desired service capabilities as part of vpc offering. aliases: service_capability | |
| service_offering  string  | The name or ID of the service offering for the VPC router appliance. | |
| service_providers  list / elements=dictionary  | provider to service mapping. If not specified, the provider for the service will be mapped to the default provider on the physical network aliases: service_provider | |
| state  string  | 
 | State of the vpc offering. | 
| supported_services  list / elements=string  | Services supported by the vpc offering aliases: supported_service | 
Notes
Note
- A detailed guide about cloudstack modules can be found in the CloudStack Cloud Guide.
- This module supports check mode.
Examples
- name: Create a vpc offering and enable it
  ngine_io.cloudstack.cs_vpc_offering:
    name: my_vpc_offering
    display_text: vpc offering description
    state: enabled
    supported_services: [ Dns, Dhcp ]
    service_providers:
      - {service: 'dns', provider: 'VpcVirtualRouter'}
      - {service: 'dhcp', provider: 'VpcVirtualRouter'}
- name: Create a vpc offering with redundant router
  ngine_io.cloudstack.cs_vpc_offering:
    name: my_vpc_offering
    display_text: vpc offering description
    supported_services: [ Dns, Dhcp, SourceNat ]
    service_providers:
      - {service: 'dns', provider: 'VpcVirtualRouter'}
      - {service: 'dhcp', provider: 'VpcVirtualRouter'}
      - {service: 'SourceNat', provider: 'VpcVirtualRouter'}
    service_capabilities:
      - {service: 'SourceNat', capabilitytype: 'RedundantRouter', capabilityvalue: true}
- name: Create a region level vpc offering with distributed router
  ngine_io.cloudstack.cs_vpc_offering:
    name: my_vpc_offering
    display_text: vpc offering description
    state: present
    supported_services: [ Dns, Dhcp, SourceNat ]
    service_providers:
      - {service: 'dns', provider: 'VpcVirtualRouter'}
      - {service: 'dhcp', provider: 'VpcVirtualRouter'}
      - {service: 'SourceNat', provider: 'VpcVirtualRouter'}
    service_capabilities:
      - {service: 'Connectivity', capabilitytype: 'DistributedRouter', capabilityvalue: true}
      - {service: 'Connectivity', capabilitytype: 'RegionLevelVPC', capabilityvalue: true}
- name: Remove a vpc offering
  ngine_io.cloudstack.cs_vpc_offering:
    name: my_vpc_offering
    state: absent
   Return Values
Common return values are documented here, the following are the fields unique to this module:
| Key | Returned | Description | 
|---|---|---|
| display_text  string  | success | The display text of the vpc offering Sample: My vpc offering | 
| distributed  boolean  | success | Indicates if the vpc offering supports distributed router for one-hop forwarding. | 
| id  string  | success | UUID of the vpc offering. Sample: a6f7a5fc-43f8-11e5-a151-feff819cdc9f | 
| is_default  boolean  | success | Whether VPC offering is the default offering or not. | 
| name  string  | success | The name of the vpc offering Sample: MyCustomVPCOffering | 
| region_level  boolean  | success | Indicated if the offering can support region level vpc. | 
| service_offering_id  string  | success | The service offering ID. Sample: c5f7a5fc-43f8-11e5-a151-feff819cdc9f | 
| state  string  | success | The state of the vpc offering Sample: Enabled | 
Authors
- David Passante (@dpassante)
    © 2012–2018 Michael DeHaan
© 2018–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
    https://docs.ansible.com/ansible/2.11/collections/ngine_io/cloudstack/cs_vpc_offering_module.html