Skip to content

Configuration

The configuration file is a YAML, JSON, TOML file that defines the rules, filters, and attribute mappings for the dynamic attributes. If a string is passed then it is assumed to be a file path to the configuration file with a valid extension (json|yml|yaml|toml).

IP Fabric Configuration

The IP Fabric configuration is required to connect to the IP Fabric API. The configuration should contain the following parameters unless using environment variables:

IP Fabric Configuration Example
---
ipfabric:
  base_url: 'https://ipfabric.example.com'  # Base URL or ENV: IPF_URL
  auth: API_TOKEN  # API Token or ENV: IPF_TOKEN or (IPF_USERNAME and IPF_PASSWORD)
  timeout: 5
  verify: true
  snapshot_id: $last

Parameters can also be specified as environment variables. Please see the IP Fabric SDK documentation for more details.

Synchronization Configuration

These settings control how the dynamic attributes are synchronized with the IP Fabric environment.

Synchronization Configuration Example
dry_run: false  # Defaults to true, set to false to apply changes
overwrite: true  # Defaults to false, set to true to overwrite existing attributes
update_snapshot: true  # Defaults to true to update selected Snapshot Local Attributes with the new Global values

Inventory Configuration

Optional: This will filter the list of devices to apply attributes to. If a device is filtered out of the inventory, it will not be updated, processed, or reported on.

Inventory Filters Example
inventory:
  filters:
    - value: aws|azure|gcp
      operator: nreg
      column: vendor
  filter_string: null
  attribute_filters:
    - key: siteName
      value: HWLAB
      operator: eq
  report_columns:  # Optional Inventory > Device columns to include in report with hostname, sn, siteName
    - loginIp

Or inventory can be filtered using a string from the IP Fabric API Documentation:

Inventory Filter String Example
inventory:
  filter_string: '{"and":[{"siteName":["eq","HWLAB"]},{"vendor":["nreg","aws|azure|gcp"]}]}'