graphiant.naas.graphiant_ntp module – Manage device-level NTP objects (edge.ntpGlobalObject)
Note
This module is part of the graphiant.naas collection (version 26.3.0).
You might already have this collection installed if you are using the ansible package.
It is not included in ansible-core.
To check whether it is installed, run ansible-galaxy collection list.
To install it, use: ansible-galaxy collection install graphiant.naas.
You need further requirements to be able to use this module,
see Requirements for details.
To use it in a playbook, specify: graphiant.naas.graphiant_ntp.
New in graphiant.naas 26.2.0
Synopsis
Configure or delete device-level NTP objects under
edge.ntpGlobalObject.Reads a structured YAML config file and builds the raw device-config payload in Python.
Configure is idempotent: compares intended objects to existing device state and skips push when already matched.
Deconfigure deletes only the objects listed in the YAML by setting
config: nullper object.
Requirements
The below requirements are needed on the host that executes this module.
python >= 3.7
graphiant-sdk >= 25.12.1
Parameters
Parameter |
Comments |
|---|---|
Bearer token for API authentication (for example, from If not passed as a module argument, the collection reads When a bearer token is present (module argument or environment), it takes precedence over If no valid token is available, the module authenticates with |
|
Enable detailed logging. Choices:
|
|
Graphiant portal host URL for API connectivity. Example: “https://api.graphiant.com” |
|
Path to the NTP YAML file. Can be an absolute path or relative to the configured config_path. Expected top-level key is |
|
Specific operation to perform.
Choices:
|
|
Graphiant portal password for authentication. Required for password-based login when no valid bearer token is available from |
|
Desired state for NTP objects.
Choices:
|
|
Graphiant portal username for authentication. Required for password-based login when no valid bearer token is available from |
Attributes
Attribute |
Support |
Description |
|---|---|---|
Support: full In check mode, no configuration is pushed to devices, but the module still reads current device state to determine whether changes would be made. Payloads that would be pushed are logged with a |
Supports check mode. |
Notes
Note
This module manages NTP objects directly on devices (device config API), not the portal-wide global config.
Configuration files support Jinja2 templating syntax for dynamic configuration generation.
Deconfigure payload uses
config: nullper object; this module preserves nulls in the final payload pushed to the API.
Examples
- name: Configure device-level NTP objects
graphiant.naas.graphiant_ntp:
operation: configure
ntp_config_file: "sample_device_ntp.yaml"
host: "{{ graphiant_host }}"
username: "{{ graphiant_username }}"
password: "{{ graphiant_password }}"
detailed_logs: true
register: ntp_result
no_log: true
- name: Deconfigure device-level NTP objects
graphiant.naas.graphiant_ntp:
operation: deconfigure
ntp_config_file: "sample_device_ntp.yaml"
host: "{{ graphiant_host }}"
username: "{{ graphiant_username }}"
password: "{{ graphiant_password }}"
detailed_logs: true
Return Values
Common return values are documented here, the following are the fields unique to this module:
Key |
Description |
|---|---|
Whether the operation would push config to at least one device. In check mode ( Returned: always |
|
Device names where configuration was pushed (when changed=true). Returned: when supported |
|
Result message (includes detailed logs when enabled). Returned: always |
|
The NTP config file used for the operation. Returned: always |
|
The operation performed. Returned: always |
|
Device names that were skipped because desired state already matched. Returned: when supported |