solace.pubsub_plus.solace_replicated_topics (1.12.2) — module

list of replicated topics on a MessageVpn's replication

Authors: Paulus Gunadi (@pjgunadi)

preview | supported by community

Install collection

Install with ansible-galaxy collection install solace.pubsub_plus:==1.12.2


Add to requirements.yml

  collections:
    - name: solace.pubsub_plus
      version: 1.12.2

Description

Configure a list of replicatedTopics object on a MessageVpn in a single transaction.

Allows addition and removal of a list of topics as well as replacement of all existing topics on a MessageVpn's replication.

Supports 'transactional' behavior with rollback to original list in case of error.

De-duplicates topics list.

Reports which topics were added, deleted and omitted (duplicates). In case of an error, reports the invalid replicated topics.

To delete all replicated topics objects, use state='exactly' with an empty/null list (see examples).

Inputs

    
host:
    default: localhost
    description: Hostname of Solace Broker.
    required: false
    type: str

port:
    default: 8080
    description: Management port of Solace Broker.
    required: false
    type: int

names:
    aliases:
    - topics
    - replicated_topics
    description: Maps to 'replicatedTopic' in the SEMP v2 API.
    elements: str
    required: true
    type: list

state:
    choices:
    - present
    - absent
    - exactly
    default: present
    description: Target state for CRUD list operation.
    required: false
    type: str

msg_vpn:
    description: The message vpn.
    required: true
    type: str

timeout:
    default: 10
    description: Connection timeout in seconds for the http request.
    required: false
    type: int

password:
    default: admin
    description: Administrator password for Solace Broker.
    required: false
    type: str

username:
    default: admin
    description: Administrator username for Solace Broker.
    required: false
    type: str

x_broker:
    description: Custom HTTP header with the broker virtual router id, if using a SEMPv2
      Proxy/agent infrastructure.
    required: false
    type: str

reverse_proxy:
    description: 'Use a reverse proxy / api gateway. Note: B(Experimental. Not permitted
      for Solace Cloud API).'
    required: false
    suboptions:
      headers:
        description: 'Additional headers to add to the http call. Example: ''apiKey: {my-api-key}''.'
        required: false
        suboptions:
          x-asc-module:
            default: false
            description: Flag for the module to add the header 'x-asc-module:{module-name}'
              to the http call with it's module name.
            required: false
            type: bool
          x-asc-module-op:
            default: false
            description: Flag for the module to add the header 'x-asc-module-op:{module
              operation}' to the http call with the module's operation.
            required: false
            type: bool
        type: dict
      query_params:
        description: 'Additional query paramters to add to the URL. Example: ''apiCode:
          {my-api-code}''.'
        required: false
        type: dict
      semp_base_path:
        description: 'Base path prepended to all SEMP calls. Example: ''my/base/path''.
          Resulting URL will be: http(s)://{host}:{port}/{semp_base_path}/{module-semp-call-path}'
        required: false
        type: str
      use_basic_auth:
        default: false
        description: Flag to use basic authentication in the http(s) call or not. Uses
          'username'/'password'.
        required: false
        type: bool
    type: dict

validate_certs:
    default: true
    description: Flag to switch validation of client certificates on/off when using a
      secure connection.
    required: false
    type: bool

sempv2_settings:
    aliases:
    - settings
    description: JSON dictionary of additional configuration for the SEMP V2 API. See
      Reference documentation.
    required: false
    type: dict

secure_connection:
    default: false
    description: If true, use https rather than http.
    required: false
    type: bool

Outputs

msg:
  description: The response from the HTTP call in case of error.
  returned: error
  type: dict
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: The response of the operation.
  returned: always
  sample:
    error:
      response:
      - error: /invalid-topic
    success:
      response:
      - added: topic-6
      - added: topic-7
      - added: duplicate-topic
      - deleted: topic-1
      - deleted: topic-2
      - deleted: topic-3
      - deleted: topic-4
      - deleted: topic-5
      - duplicate: duplicate-topic
  type: dict

See also