This collection allows you to manage your netbird servers.
- ansible ~=9.2.0
 - requests ~=2.31.0 (If using the inventory plugin)
 
Applying this role will install the netbird client on the target machine.
This is a dynamic inventory generated based on the configuration in the netbird API.
---
plugin: dominion_solutions.netbird.netbird
api_url: https://api.netbird.io/api/
api_key: nbp_this_is_a_fake_api_key
netbird_groups:
  - Development
strict: No---
plugin: dominion_solutions.netbird.netbird
api_key: nbp_this_is_a_fake_api_key
api_url: https://netbird.example.com/api/
netbird_connected: TrueThis example gets all peers in the All group and builds the additional connected and ssh_hosts groups, based on the keys.
---
plugin: dominion_solutions.netbird.netbird
api_key: nbp_this_is_a_fake_api_key
api_url: https://netbird.example.com/api/
netbird_connected: False
leading_separator: No
netbird_groups:
- "All"
groups:
  connected: connected
  ssh_hosts: ssh_enabled
strict: No
keyed_groups:
compose:
  ansible_ssh_host: label
  ansible_ssh_port: 22Fields are taken directly from the responses at the Netbird Peers API unless otherwise indicated
| Field | Type | Notes | 
|---|---|---|
| label | string | 
label is a field generated as part of the inventory as an alias to the dns_label field. | 
| id | string | 
|
| name | string | 
|
| ip | string | 
|
| connected | boolean | 
|
| last_seen | string | 
This is is an ISO-8601 UTC Date Time String | 
| os | string | 
An OS Identifier such as Linux Mint 21.3 or Alpine Linux 3.19.1 | 
| version | string | 
The version of the Netbird Client that is running on the Peer | 
| groups | object | 
The groups object. This is parsed into the the groups in the inventory by name. | 
| enabled | boolean | 
|
| user_id | string | 
|
| hostname | string | 
The hostname part of the FQDN | 
| ui_version | string | 
Blank if there's no UI client installed, otherwise a version for the UI such as netbird-desktop-ui/0.25.7 | 
| dns_label | string | 
The Fully Qualified Domain Name for this peer. | 
| login_expiration_enabled | boolean | 
Is this peer exempt from login expiration? | 
| login_expired | boolean | 
Is the login for this expired? | 
| last_login | string | 
|
| approval_required | boolean | 
|
| accessible_peers_count | integer | 
Please see CONTRIBUTING.md