Skip to content

Commit

Permalink
added support to configure ADC via NetScaler Console (ADM) as proxy (#…
Browse files Browse the repository at this point in the history
…419)

* added support to configure ADC via NetScaler Console (ADM) as proxy

Signed-off-by: Sumanth Lingappa <[email protected]>
  • Loading branch information
sumanth-lingappa authored Apr 21, 2024
1 parent b77a245 commit e054443
Show file tree
Hide file tree
Showing 907 changed files with 62,196 additions and 2,102 deletions.
10 changes: 9 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,12 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0

## [Unreleased]

## [2.6.0] - 2024-04-19

### Added

- Added support to configure NetScaler via NetScaler Console (ADM) as Proxy server ([#308])

## [2.5.2] - 2024-04-15

### Fixed
Expand Down Expand Up @@ -116,7 +122,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0

- Initial Release

[unreleased]: https://github.com/netscaler/ansible-collection-netscaleradc/compare/2.5.2...HEAD
[unreleased]: https://github.com/netscaler/ansible-collection-netscaleradc/compare/2.6.0...HEAD
[2.6.0]: https://github.com/netscaler/ansible-collection-netscaleradc/compare/2.5.2...2.6.0
[2.5.2]: https://github.com/netscaler/ansible-collection-netscaleradc/compare/2.5.1...2.5.2
[2.5.1]: https://github.com/netscaler/ansible-collection-netscaleradc/compare/2.5.0...2.5.1
[2.5.0]: https://github.com/netscaler/ansible-collection-netscaleradc/compare/2.4.0...2.5.0
Expand All @@ -134,6 +141,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
[#295]: https://github.com/netscaler/ansible-collection-netscaleradc/issues/295
[#297]: https://github.com/netscaler/ansible-collection-netscaleradc/issues/297
[#307]: https://github.com/netscaler/ansible-collection-netscaleradc/issues/307
[#308]: https://github.com/netscaler/ansible-collection-netscaleradc/issues/308
[#310]: https://github.com/netscaler/ansible-collection-netscaleradc/issues/310
[#311]: https://github.com/netscaler/ansible-collection-netscaleradc/issues/311
[#312]: https://github.com/netscaler/ansible-collection-netscaleradc/issues/312
Expand Down
16 changes: 16 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -118,6 +118,22 @@ export NETSCALER_NITRO_AUTH_TOKEN=$(curl -X POST -H "Content-Type:application/js
echo $NETSCALER_NITRO_AUTH_TOKEN
```

## NetScaler Console (ADM) as a Proxy Server

Refer to the [NetScaler ADM as an API proxy server](https://docs.netscaler.com/en-us/citrix-application-delivery-management-software/current-release/adm-as-api-proxy-server.html) for more details.

The collection supports configuring NetScaler Console as a proxy server. This is useful when you have multiple NetScaler ADC appliances and you want to manage them using a single NetScaler Console.

An example can be found in [examples/netscaler_console_as_proxy_server.yaml](examples/netscaler_console_as_proxy_server.yaml)

Also, refer to the [playbook_anatomy.md](playbook_anatomy.md#netscaler-console-as-an-api-proxy-server) for more details.

### Steps to configure NetScaler Console as a proxy server

1. Login to NetScaler Console and get the session ID
2. Use the session ID in the subsequent tasks to configure the managed NetScalers via the NetScaler Console as a proxy server
3. Logout from the NetScaler Console (optional)

## Supported Ansible Versions

This collection is tested for Ansible version 2.14 and above.
Expand Down
71 changes: 69 additions & 2 deletions docs/collections/netscaler/adc/aaacertparams_module.html
Original file line number Diff line number Diff line change
Expand Up @@ -131,7 +131,7 @@
<h1>netscaler.adc.aaacertparams module – Configuration for certificate parameter resource.<a class="headerlink" href="#netscaler-adc-aaacertparams-module-configuration-for-certificate-parameter-resource" title="Link to this heading"></a></h1>
<div class="admonition note">
<p class="admonition-title">Note</p>
<p>This module is part of the <a class="reference external" href="https://galaxy.ansible.com/ui/repo/published/netscaler/adc/">netscaler.adc collection</a> (version 2.5.2).</p>
<p>This module is part of the <a class="reference external" href="https://galaxy.ansible.com/ui/repo/published/netscaler/adc/">netscaler.adc collection</a> (version 2.6.0).</p>
<p>It is not included in <code class="docutils literal notranslate"><span class="pre">ansible-core</span></code>.
To check whether it is installed, run <code class="code docutils literal notranslate"><span class="pre">ansible-galaxy</span> <span class="pre">collection</span> <span class="pre">list</span></code>.</p>
<p>To install it, use: <code class="code docutils literal notranslate"><span class="pre">ansible-galaxy</span> <span class="pre">collection</span> <span class="pre">install</span> <span class="pre">netscaler.adc</span></code>.</p>
Expand Down Expand Up @@ -186,9 +186,76 @@ <h2><a class="toc-backref" href="#id2" role="doc-backlink">Parameters</a><a clas
</div></td>
</tr>
<tr class="row-odd"><td><div class="ansible-option-cell">
<div class="ansibleOptionAnchor" id="parameter-managed_netscaler_instance_id"></div><p class="ansible-option-title" id="ansible-collections-netscaler-adc-aaacertparams-module-parameter-managed-netscaler-instance-id"><strong>managed_netscaler_instance_id</strong></p>
<a class="ansibleOptionLink" href="#parameter-managed_netscaler_instance_id" title="Permalink to this option"></a><p class="ansible-option-type-line"><span class="ansible-option-type">string</span></p>
<p><em class="ansible-option-versionadded">added in netscaler.adc 2.6.0</em></p>
</div></td>
<td><div class="ansible-option-cell"><p>The ID of the managed NetScaler instance to which NetScaler Console</p>
<p>has to configure as a proxy server.</p>
<p>Define only in case of an ADM service proxy call</p>
</div></td>
</tr>
<tr class="row-even"><td><div class="ansible-option-cell">
<div class="ansibleOptionAnchor" id="parameter-managed_netscaler_instance_ip"></div><p class="ansible-option-title" id="ansible-collections-netscaler-adc-aaacertparams-module-parameter-managed-netscaler-instance-ip"><strong>managed_netscaler_instance_ip</strong></p>
<a class="ansibleOptionLink" href="#parameter-managed_netscaler_instance_ip" title="Permalink to this option"></a><p class="ansible-option-type-line"><span class="ansible-option-type">string</span></p>
<p><em class="ansible-option-versionadded">added in netscaler.adc 2.6.0</em></p>
</div></td>
<td><div class="ansible-option-cell"><p>The IP of the managed NetScaler instance to which NetScaler Console</p>
<p>has to configure as a proxy server.</p>
<p>Define only in case of an ADM service proxy call</p>
</div></td>
</tr>
<tr class="row-odd"><td><div class="ansible-option-cell">
<div class="ansibleOptionAnchor" id="parameter-managed_netscaler_instance_name"></div><p class="ansible-option-title" id="ansible-collections-netscaler-adc-aaacertparams-module-parameter-managed-netscaler-instance-name"><strong>managed_netscaler_instance_name</strong></p>
<a class="ansibleOptionLink" href="#parameter-managed_netscaler_instance_name" title="Permalink to this option"></a><p class="ansible-option-type-line"><span class="ansible-option-type">string</span></p>
<p><em class="ansible-option-versionadded">added in netscaler.adc 2.6.0</em></p>
</div></td>
<td><div class="ansible-option-cell"><p>The name of the managed NetScaler instance to which NetScaler Console</p>
<p>has to configure as a proxy server.</p>
<p>Define only in case of an ADM service proxy call</p>
</div></td>
</tr>
<tr class="row-even"><td><div class="ansible-option-cell">
<div class="ansibleOptionAnchor" id="parameter-managed_netscaler_instance_password"></div><p class="ansible-option-title" id="ansible-collections-netscaler-adc-aaacertparams-module-parameter-managed-netscaler-instance-password"><strong>managed_netscaler_instance_password</strong></p>
<a class="ansibleOptionLink" href="#parameter-managed_netscaler_instance_password" title="Permalink to this option"></a><p class="ansible-option-type-line"><span class="ansible-option-type">string</span></p>
<p><em class="ansible-option-versionadded">added in netscaler.adc 2.6.0</em></p>
</div></td>
<td><div class="ansible-option-cell"><p>The password of the managed NetScaler instance.</p>
<p>Define only in case of an ADM service proxy call</p>
<p>In Settings &gt; Administration &gt; System Configurations &gt; Basic Settings,</p>
<p>if you select Prompt Credentials for Instance Login,</p>
<p>ensure to configure username and password of a managed instance.</p>
</div></td>
</tr>
<tr class="row-odd"><td><div class="ansible-option-cell">
<div class="ansibleOptionAnchor" id="parameter-managed_netscaler_instance_username"></div><p class="ansible-option-title" id="ansible-collections-netscaler-adc-aaacertparams-module-parameter-managed-netscaler-instance-username"><strong>managed_netscaler_instance_username</strong></p>
<a class="ansibleOptionLink" href="#parameter-managed_netscaler_instance_username" title="Permalink to this option"></a><p class="ansible-option-type-line"><span class="ansible-option-type">string</span></p>
<p><em class="ansible-option-versionadded">added in netscaler.adc 2.6.0</em></p>
</div></td>
<td><div class="ansible-option-cell"><p>The username of the managed NetScaler instance.</p>
<p>Define only in case of an ADM service proxy call</p>
<p>In Settings &gt; Administration &gt; System Configurations &gt; Basic Settings,</p>
<p>if you select Prompt Credentials for Instance Login,</p>
<p>ensure to configure username and password of a managed instance.</p>
</div></td>
</tr>
<tr class="row-even"><td><div class="ansible-option-cell">
<div class="ansibleOptionAnchor" id="parameter-netscaler_console_as_proxy_server"></div><p class="ansible-option-title" id="ansible-collections-netscaler-adc-aaacertparams-module-parameter-netscaler-console-as-proxy-server"><strong>netscaler_console_as_proxy_server</strong></p>
<a class="ansibleOptionLink" href="#parameter-netscaler_console_as_proxy_server" title="Permalink to this option"></a><p class="ansible-option-type-line"><span class="ansible-option-type">boolean</span></p>
<p><em class="ansible-option-versionadded">added in netscaler.adc 2.6.0</em></p>
</div></td>
<td><div class="ansible-option-cell"><p>The IP address of the NetScaler ADC appliance acting as a proxy server.</p>
<p>Define only in case of an ADM service proxy call</p>
<p class="ansible-option-line"><strong class="ansible-option-choices">Choices:</strong></p>
<ul class="simple">
<li><p><code class="ansible-option-default-bold docutils literal notranslate"><strong><span class="pre">false</span></strong></code> <span class="ansible-option-choices-default-mark">← (default)</span></p></li>
<li><p><code class="ansible-option-choices-entry docutils literal notranslate"><span class="pre">true</span></code></p></li>
</ul>
</div></td>
</tr>
<tr class="row-odd"><td><div class="ansible-option-cell">
<div class="ansibleOptionAnchor" id="parameter-nitro_auth_token"></div><p class="ansible-option-title" id="ansible-collections-netscaler-adc-aaacertparams-module-parameter-nitro-auth-token"><strong>nitro_auth_token</strong></p>
<a class="ansibleOptionLink" href="#parameter-nitro_auth_token" title="Permalink to this option"></a><p class="ansible-option-type-line"><span class="ansible-option-type">string</span></p>
<p><em class="ansible-option-versionadded">added in netscaler.adc 2.6.0</em></p>
</div></td>
<td><div class="ansible-option-cell"><p>The authentication token provided by a login operation.</p>
</div></td>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -131,7 +131,7 @@
<h1>netscaler.adc.aaaglobal_aaapreauthenticationpolicy_binding module – Binding Resource definition for describing association between aaaglobal and aaapreauthenticationpolicy resources<a class="headerlink" href="#netscaler-adc-aaaglobal-aaapreauthenticationpolicy-binding-module-binding-resource-definition-for-describing-association-between-aaaglobal-and-aaapreauthenticationpolicy-resources" title="Link to this heading"></a></h1>
<div class="admonition note">
<p class="admonition-title">Note</p>
<p>This module is part of the <a class="reference external" href="https://galaxy.ansible.com/ui/repo/published/netscaler/adc/">netscaler.adc collection</a> (version 2.5.2).</p>
<p>This module is part of the <a class="reference external" href="https://galaxy.ansible.com/ui/repo/published/netscaler/adc/">netscaler.adc collection</a> (version 2.6.0).</p>
<p>It is not included in <code class="docutils literal notranslate"><span class="pre">ansible-core</span></code>.
To check whether it is installed, run <code class="code docutils literal notranslate"><span class="pre">ansible-galaxy</span> <span class="pre">collection</span> <span class="pre">list</span></code>.</p>
<p>To install it, use: <code class="code docutils literal notranslate"><span class="pre">ansible-galaxy</span> <span class="pre">collection</span> <span class="pre">install</span> <span class="pre">netscaler.adc</span></code>.</p>
Expand Down Expand Up @@ -186,9 +186,76 @@ <h2><a class="toc-backref" href="#id2" role="doc-backlink">Parameters</a><a clas
</div></td>
</tr>
<tr class="row-even"><td><div class="ansible-option-cell">
<div class="ansibleOptionAnchor" id="parameter-managed_netscaler_instance_id"></div><p class="ansible-option-title" id="ansible-collections-netscaler-adc-aaaglobal-aaapreauthenticationpolicy-binding-module-parameter-managed-netscaler-instance-id"><strong>managed_netscaler_instance_id</strong></p>
<a class="ansibleOptionLink" href="#parameter-managed_netscaler_instance_id" title="Permalink to this option"></a><p class="ansible-option-type-line"><span class="ansible-option-type">string</span></p>
<p><em class="ansible-option-versionadded">added in netscaler.adc 2.6.0</em></p>
</div></td>
<td><div class="ansible-option-cell"><p>The ID of the managed NetScaler instance to which NetScaler Console</p>
<p>has to configure as a proxy server.</p>
<p>Define only in case of an ADM service proxy call</p>
</div></td>
</tr>
<tr class="row-odd"><td><div class="ansible-option-cell">
<div class="ansibleOptionAnchor" id="parameter-managed_netscaler_instance_ip"></div><p class="ansible-option-title" id="ansible-collections-netscaler-adc-aaaglobal-aaapreauthenticationpolicy-binding-module-parameter-managed-netscaler-instance-ip"><strong>managed_netscaler_instance_ip</strong></p>
<a class="ansibleOptionLink" href="#parameter-managed_netscaler_instance_ip" title="Permalink to this option"></a><p class="ansible-option-type-line"><span class="ansible-option-type">string</span></p>
<p><em class="ansible-option-versionadded">added in netscaler.adc 2.6.0</em></p>
</div></td>
<td><div class="ansible-option-cell"><p>The IP of the managed NetScaler instance to which NetScaler Console</p>
<p>has to configure as a proxy server.</p>
<p>Define only in case of an ADM service proxy call</p>
</div></td>
</tr>
<tr class="row-even"><td><div class="ansible-option-cell">
<div class="ansibleOptionAnchor" id="parameter-managed_netscaler_instance_name"></div><p class="ansible-option-title" id="ansible-collections-netscaler-adc-aaaglobal-aaapreauthenticationpolicy-binding-module-parameter-managed-netscaler-instance-name"><strong>managed_netscaler_instance_name</strong></p>
<a class="ansibleOptionLink" href="#parameter-managed_netscaler_instance_name" title="Permalink to this option"></a><p class="ansible-option-type-line"><span class="ansible-option-type">string</span></p>
<p><em class="ansible-option-versionadded">added in netscaler.adc 2.6.0</em></p>
</div></td>
<td><div class="ansible-option-cell"><p>The name of the managed NetScaler instance to which NetScaler Console</p>
<p>has to configure as a proxy server.</p>
<p>Define only in case of an ADM service proxy call</p>
</div></td>
</tr>
<tr class="row-odd"><td><div class="ansible-option-cell">
<div class="ansibleOptionAnchor" id="parameter-managed_netscaler_instance_password"></div><p class="ansible-option-title" id="ansible-collections-netscaler-adc-aaaglobal-aaapreauthenticationpolicy-binding-module-parameter-managed-netscaler-instance-password"><strong>managed_netscaler_instance_password</strong></p>
<a class="ansibleOptionLink" href="#parameter-managed_netscaler_instance_password" title="Permalink to this option"></a><p class="ansible-option-type-line"><span class="ansible-option-type">string</span></p>
<p><em class="ansible-option-versionadded">added in netscaler.adc 2.6.0</em></p>
</div></td>
<td><div class="ansible-option-cell"><p>The password of the managed NetScaler instance.</p>
<p>Define only in case of an ADM service proxy call</p>
<p>In Settings &gt; Administration &gt; System Configurations &gt; Basic Settings,</p>
<p>if you select Prompt Credentials for Instance Login,</p>
<p>ensure to configure username and password of a managed instance.</p>
</div></td>
</tr>
<tr class="row-even"><td><div class="ansible-option-cell">
<div class="ansibleOptionAnchor" id="parameter-managed_netscaler_instance_username"></div><p class="ansible-option-title" id="ansible-collections-netscaler-adc-aaaglobal-aaapreauthenticationpolicy-binding-module-parameter-managed-netscaler-instance-username"><strong>managed_netscaler_instance_username</strong></p>
<a class="ansibleOptionLink" href="#parameter-managed_netscaler_instance_username" title="Permalink to this option"></a><p class="ansible-option-type-line"><span class="ansible-option-type">string</span></p>
<p><em class="ansible-option-versionadded">added in netscaler.adc 2.6.0</em></p>
</div></td>
<td><div class="ansible-option-cell"><p>The username of the managed NetScaler instance.</p>
<p>Define only in case of an ADM service proxy call</p>
<p>In Settings &gt; Administration &gt; System Configurations &gt; Basic Settings,</p>
<p>if you select Prompt Credentials for Instance Login,</p>
<p>ensure to configure username and password of a managed instance.</p>
</div></td>
</tr>
<tr class="row-odd"><td><div class="ansible-option-cell">
<div class="ansibleOptionAnchor" id="parameter-netscaler_console_as_proxy_server"></div><p class="ansible-option-title" id="ansible-collections-netscaler-adc-aaaglobal-aaapreauthenticationpolicy-binding-module-parameter-netscaler-console-as-proxy-server"><strong>netscaler_console_as_proxy_server</strong></p>
<a class="ansibleOptionLink" href="#parameter-netscaler_console_as_proxy_server" title="Permalink to this option"></a><p class="ansible-option-type-line"><span class="ansible-option-type">boolean</span></p>
<p><em class="ansible-option-versionadded">added in netscaler.adc 2.6.0</em></p>
</div></td>
<td><div class="ansible-option-cell"><p>The IP address of the NetScaler ADC appliance acting as a proxy server.</p>
<p>Define only in case of an ADM service proxy call</p>
<p class="ansible-option-line"><strong class="ansible-option-choices">Choices:</strong></p>
<ul class="simple">
<li><p><code class="ansible-option-default-bold docutils literal notranslate"><strong><span class="pre">false</span></strong></code> <span class="ansible-option-choices-default-mark">← (default)</span></p></li>
<li><p><code class="ansible-option-choices-entry docutils literal notranslate"><span class="pre">true</span></code></p></li>
</ul>
</div></td>
</tr>
<tr class="row-even"><td><div class="ansible-option-cell">
<div class="ansibleOptionAnchor" id="parameter-nitro_auth_token"></div><p class="ansible-option-title" id="ansible-collections-netscaler-adc-aaaglobal-aaapreauthenticationpolicy-binding-module-parameter-nitro-auth-token"><strong>nitro_auth_token</strong></p>
<a class="ansibleOptionLink" href="#parameter-nitro_auth_token" title="Permalink to this option"></a><p class="ansible-option-type-line"><span class="ansible-option-type">string</span></p>
<p><em class="ansible-option-versionadded">added in netscaler.adc 2.6.0</em></p>
</div></td>
<td><div class="ansible-option-cell"><p>The authentication token provided by a login operation.</p>
</div></td>
Expand Down
Loading

0 comments on commit e054443

Please sign in to comment.