- 24 Jun 2024
-
DarkLight
-
PDF
Inventory Integration Variables
- Updated on 24 Jun 2024
-
DarkLight
-
PDF
Integration Variables
The chart below describes the variables required by Automation Gateway to create an inventory device.
- For Automation Gateway information regarding parameters, data types, etc., see the
{automation gateway url}/app/apidocs
endpoint for the specific inventory or integration in question. - For integration-specific information, see the relevant Inventory Documentation for that inventory system. The provided documentation links are an attempt to give a proper starting point, but may change over time as those sites and integrations are subject to revision.
Integration | Required Variables | Recommended Variables |
---|---|---|
Ansible | None | ansible_host, ansible_port, ansible_user, ansible_password, ansible_connection, ansible_network_os |
HTTP Requests | protocol, base_url | port, username, password |
NETCONF | host, username, password, platform | port, timeout |
Netmiko | host, device_type | port, username, password |
Nornir | None | hostname, port, username, password, platform |
Scripts | See Ansible documentation. | See Ansible documentation. |
Terraform | Not applicable | Not applicable |
Inventory Documentation
For inventory questions related to integrations such as Ansible or Nornir, please see the official guides to learn how to effectively create that type of inventory.
For inventory questions related to Automation Gateway, users can refer to the built-in Swagger documentation by hovering the cursor over the menu icon to the right of Automation Gateway and clicking on the API Documentation - 2.0 link (Figure 1).
Figure 1: Swagger API
Internal (Native) Device Inventory
To create a native inventory device via GUI or API:
-
Click the plus sign ("+") in the top left corner to create a new device.
-
Select the appropriate device option from the dropdown list and click the Create button.
Figure 2: Creating an Internal Device (GUI)
-
Configure the devices variables, as needed. Click Create.
Figure 3: Configure Device Variables (GUI)
-
If via API, use the internal device name (host) to execute native methods (depending on modules).
Figure 4: API
Configuration to Connect Internal Device Inventory
The internal inventory devices supported are: Aruba, ASA, BigIP, EOS, IOS, IOSXR, Junos, NXOS, SROS.
These are the minimum required variables used to connect a device. The ansible_network_os
must be one of the supported inventory devices in the list above, and ansible_connection
is set to network_cli
.
{
"ansible_network_os": "ios",
"ansible_connection": "network_cli",
"ansible_user": "USERNAME ",
"ansible_password": "PASSWORD",
"ansible_host": "172.20.100.110"
}
External Inventory Devices
For the devices which are not supported, a Netmiko device is created. The following configurations are used.
Set the ansible_connection
variable to local
.
{
"ansible_connection": "local",
"ansible_host": "172.20.100.110",
"netmiko_device_type": "fortinet",
"ansible_password": "PASSWORD",
"ansible_user": "USERNAME"
}
Set the provider
variable to the following config.
{
"ansible_connection": "local",
"provider": {
"host": "172.20.100.110",
"device_type": "fortinet",
"username": "USERNAME",
"password": "PASSWORD"
}
If the connection to a device should fail, test the device connection and check for errors in the log.