infinity – Manage Infinity IPAM using Rest API — Ansible Documentation

- AnsibleFest
- Products
- Community
- Webinars & Training
- Blog

Documentation

# infinity – Manage Infinity IPAM using Rest API

New in version 2.4.

- Synopsis

- Parameters

- Examples

- Return Values

- Status

## Synopsis

- Manage Infinity IPAM using REST API.

## Parameters

Parameter | Choices/Defaults | Comments
--- | --- | ---
action string / required | Choices: add_network delete_network get_network get_network_id release_ip release_network reserve_network reserve_next_available_ip | Action to perform
ip_address string | Default: "" | IP Address for a reservation or a release.
network_address string | Default: "" | Network address with CIDR format (e.g., 192.168.310.0).
network_family string | Choices: 4 ← 6 dual | Network family defined by Infinity, e.g. IPv4, IPv6 and Dual stack
network_id string | Default: "" | Network ID.
network_location integer | Default: -1 | The parent network id for a given network.
network_name string | Default: "" | The name of a network.
network_size string | Default: "" | Network bitmask (e.g. 255.255.255.220) or CIDR format (e.g., /26).
network_type string | Choices: lan ← shared_lan supernet | Network type defined by Infinity
password string / required |  | Infinity password.
server_ip string / required |  | Infinity server_ip with IP address.
username string / required |  | Username to access Infinity. The user must have REST API privileges.

## Examples

    ---
    - hosts: localhost
      connection: local
      strategy: debug
      tasks:
        - name: Reserve network into Infinity IPAM
          infinity:
            server_ip: 80.75.107.12
            username: username
            password: password
            action: reserve_network
            network_name: reserve_new_ansible_network
            network_family: 4
            network_type: lan
            network_id: 1201
            network_size: /28
          register: infinity

## Return Values

Common return values are documented here, the following are the fields unique to this module:

Key | Returned | Description
--- | --- | ---
ip_info string | success | when reserve next available ip address from a network, the ip address info ) is returned. Sample: {"address": "192.168.10.3", "hostname": "", "FQDN": "", "domainname": "", "id": 3229}
network_id string | success | id for a given network Sample: 1501
network_info string | success | when reserving a LAN network from a Infinity supernet by providing network_size, the information about the reserved network is returned. Sample: {'network_address': '192.168.10.32/28', 'network_family': '4', 'network_id': 3102, 'network_size': None, 'description': None, 'network_location': '3085', 'ranges': {'id': 0, 'name': None, 'first_ip': None, 'type': None, 'last_ip': None}, 'network_type': 'lan', 'network_name': "'reserve_new_ansible_network'"}

## Status

- This module is not guaranteed to have a backwards compatible interface. [preview]

- This module is maintained by the Ansible Community. [community]

### Authors

- Meirong Liu (@MeganLiu)

Hint

If you notice any issues in this documentation, you can edit this document to improve it.