community.general.netscaler_cs_policy (0.1.1) — module

Manage content switching policy

Authors: George Nikolopoulos (@giorgos-nikolopoulos)

preview | supported by community

Install collection

Install with ansible-galaxy collection install community.general:==0.1.1


Add to requirements.yml

  collections:
    - name: community.general
      version: 0.1.1

Description

Manage content switching policy.

This module is intended to run either on the ansible control node or a bastion (jumpserver) with access to the actual netscaler instance.


Requirements

Usage examples

  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Create url cs policy
  delegate_to: localhost
  netscaler_cs_policy:
    nsip: 172.18.0.2
    nitro_user: nsroot
    nitro_pass: nsroot
    validate_certs: no

    state: present

    policyname: policy_1
    url: /example/

Inputs

    
url:
    description:
    - 'URL string that is matched with the URL of a request. Can contain a wildcard character.
      Specify the string value in the following format: C([[prefix] [*]] [.suffix]).'
    - Minimum length = 1
    - Maximum length = 208

nsip:
    description:
    - The ip address of the netscaler appliance where the nitro API calls will be made.
    - The port can be specified with the colon (:). E.g. 192.168.1.1:555.
    required: true
    type: str

rule:
    description:
    - Expression, or name of a named expression, against which traffic is evaluated. Written
      in the classic or default syntax.
    - 'Note:'
    - 'Maximum length of a string literal in the expression is 255 characters. A longer
      string can be split into smaller strings of up to 255 characters each, and the smaller
      strings concatenated with the + operator. For example, you can create a 500-character
      string as follows: ''"<string of 255 characters>" + "<string of 245 characters>"'''

state:
    choices:
    - absent
    - present
    default: present
    description:
    - The state of the resource being configured by the module on the netscaler node.
    - When present the resource will be created if needed and configured according to
      the module's parameters.
    - When absent the resource will be deleted from the netscaler node.
    type: str

action:
    description:
    - Content switching action that names the target load balancing virtual server to
      which the traffic is switched.

domain:
    description:
    - The domain name. The string value can range to 63 characters.
    - Minimum length = 1

nitro_pass:
    description:
    - The password with which to authenticate to the netscaler node.
    required: true
    type: str

nitro_user:
    description:
    - The username with which to authenticate to the netscaler node.
    required: true
    type: str

policyname:
    description:
    - Name for the content switching policy. Must begin with an ASCII alphanumeric or
      underscore C(_) character, and must contain only ASCII alphanumeric, underscore,
      hash C(#), period C(.), space C( ), colon C(:), at sign C(@), equal sign C(=), and
      hyphen C(-) characters. Cannot be changed after a policy is created.
    - 'The following requirement applies only to the NetScaler CLI:'
    - If the name includes one or more spaces, enclose the name in double or single quotation
      marks (for example, my policy or my policy).
    - Minimum length = 1

save_config:
    default: true
    description:
    - If C(yes) the module will save the configuration on the netscaler node if it makes
      any changes.
    - The module will not save the configuration on the netscaler node if it made no changes.
    type: bool

nitro_timeout:
    default: 310
    description:
    - Time in seconds until a timeout error is thrown when establishing a new session
      with Netscaler
    type: float

nitro_protocol:
    choices:
    - http
    - https
    default: http
    description:
    - Which protocol to use when accessing the nitro API objects.
    type: str

validate_certs:
    default: true
    description:
    - If C(no), SSL certificates will not be validated. This should only be used on personally
      controlled sites using self-signed certificates.
    type: bool

Outputs

diff:
  description: List of differences between the actual configured object and the configuration
    specified in the module
  returned: failure
  sample:
    url: 'difference. ours: (str) example1 other: (str) /example1'
  type: dict
loglines:
  description: list of logged messages by the module
  returned: always
  sample:
  - message 1
  - message 2
  type: list
msg:
  description: Message detailing the failure reason
  returned: failure
  sample: Could not load nitro python sdk
  type: str