solace / solace.pubsub_plus / 1.12.2 / module / solace_cloud_service manage Solace Cloud services Authors: Ricardo Gomez-Ulmke (@rjgu) preview | supported by communitysolace.pubsub_plus.solace_cloud_service (1.12.2) — module
Install with ansible-galaxy collection install solace.pubsub_plus:==1.12.2
collections: - name: solace.pubsub_plus version: 1.12.2
Create & delete Solace Cloud services.
Note that you can't change a service once it has been created. Only option: delete & re-create.
Note that a service name must be unique in the global Solace Cloud namespace. Creating a service using an existing name (regardless in which account) will fail.
Creating a service in Solace Cloud is a long-running process. In case creation fails, module will delete the service and try again, up to 3 times.
The module operates at a Solace Cloud Account level, therefor, you don't necessarily require an inventory file. Using `hosts: localhost` as a host and passing the Solace Cloud Api Token as an environment variable works as well.
name: description: - The name of the service to manage. Mandatory for state='present'. - 'Note: The name must be a key, it is used as a YAML / JSON key. Use only ASCII, ''-'', or ''_''. No whitespaces.' required: false type: str state: choices: - present - absent default: present description: Target state. required: false type: str timeout: default: 60 description: Connection timeout in seconds for the http request or overall call interaction timeout for Solace Cloud API. required: false type: int validate_certs: default: true description: Flag to switch validation of client certificates on/off when using a secure connection. required: false type: bool solace_cloud_home: choices: - us - au - US - AU - '' description: The Solace Cloud home region. required: false type: str wait_timeout_minutes: default: 30 description: - Minutes to wait until service is created. Module polls every 30 seconds to check on service state. - wait_timeout_minutes == 0 ==> no waiting, module returns immediately. - wait_timeout_minutes > 0 ==> waits, polls every 30 seconds until service request completed. required: false type: int solace_cloud_settings: aliases: - settings description: - Additional settings for state=present. See Reference documentation output of M(solace_cloud_get_service) for details. - 'Note: For state=present, provide at least: msgVpnName, datacenterId, serviceTypeId, serviceClassId.' required: false type: dict solace_cloud_api_token: aliases: - api_token description: - The API Token. - Generate using Solace Cloud console with the appropriate permissions for the operations you want to enable. required: true type: str solace_cloud_service_id: aliases: - service_id description: - The service id of a service in Solace Cloud. - Allowed option for state='absent' required: false type: str
msg: description: error message if not ok returned: error type: str rc: description: Return code. rc=0 on success, rc=1 on error. returned: always sample: error: rc: 1 success: rc: 0 type: int response: description: response from the Api call. contains the service info. returned: success sample: accountingLimits: - id: NetworkUsage thresholds: - type: warning value: '75' adminState: completed attributes: Clients: '250' High Availability: HA Group Message Broker Tenancy: Dedicated Network Speed: 450 Mbps Network Usage: 50 GB per month Queues: '250' Storage: 25 GB certificateAuthorities: [] clientProfiles: [] created: 1608128117689 creationState: pending customizedMessagingPorts: {} customizedResourceNames: {} datacenterId: aws-eu-west-2a locked: false messagingStorage: 25 monitoring: {} msgVpnAttributes: {} msgVpnName: as_test_broker name: ansible_solace_test_broker serviceClassDisplayedAttributes: null serviceClassId: enterprise-250-nano serviceId: 1a2o94jfedl9 servicePackageId: DH-V13.0 serviceStage: generalavailability serviceTypeId: enterprise timestamp: 0 type: service userId: xxx type: dict