Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/nautobot/nautobot-ansible
Ansible Collection for managing Nautobot Data
https://github.com/nautobot/nautobot-ansible
ansible ansible-modules nautobot
Last synced: 5 days ago
JSON representation
Ansible Collection for managing Nautobot Data
- Host: GitHub
- URL: https://github.com/nautobot/nautobot-ansible
- Owner: nautobot
- License: gpl-3.0
- Created: 2021-02-19T22:08:34.000Z (almost 4 years ago)
- Default Branch: develop
- Last Pushed: 2024-12-13T21:37:32.000Z (9 days ago)
- Last Synced: 2024-12-13T22:18:21.373Z (9 days ago)
- Topics: ansible, ansible-modules, nautobot
- Language: Python
- Homepage: https://docs.nautobot.com/projects/ansible/en/latest/
- Size: 4.83 MB
- Stars: 48
- Watchers: 13
- Forks: 33
- Open Issues: 49
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT
- Codeowners: .github/CODEOWNERS
Awesome Lists containing this project
README
![https://github.com/nautobot/nautobot-ansible/actions](https://github.com/nautobot/nautobot-ansible/actions/workflows/trigger_scheduled.yml/badge.svg?branch=develop)
![https://docs.nautobot.com/projects/ansible/en/latest/](https://readthedocs.org/projects/nautobot-ansible/badge/)
![https://github.com/psf/black](https://img.shields.io/badge/code%20style-black-000000.svg)# Ansible Collection for Nautobot
This collection provides Ansible plugins (modules, inventory, lookup/filters) to interact with Nautobot, an open-source Network Source of Truth and Network Automation Platform. The plugins allow you to automate various tasks in Nautobot, such as managing devices, interfaces, IP addresses, and more. By using these plugins, you can keep your Source of Truth (SOT) updated and ensure that your network data is accurate and consistent.
To keep the code simple, we only officially support the two latest releases of Nautobot and don't guarantee backwards compatibility beyond that.
Full documentation for this App can be found over on the [Nautobot Docs](https://docs.nautobot.com) website:
- [Plugins Reference](https://docs.nautobot.com/projects/ansible/en/latest/networktocode.nautobot/) - Documentation (parameters, examples, return values) for all plugins included in the collection.
- [Installation Guide](https://docs.nautobot.com/projects/ansible/en/latest/getting_started/installation/)
- [Release Notes](https://docs.nautobot.com/projects/ansible/en/latest/release_notes/)## Requirements
- Nautobot 1.0.0+ or the two latest Nautobot releases
- Python 3.6+
- Python modules: **pynautobot 2.x+**
- Ansible 2.9+
- Nautobot write-enabled token when using `modules` or read-only token for `lookup/inventory`## Keeping Your Source of Truth Updated
Using the Nautobot Ansible modules, you can ensure that your Nautobot instance remains the authoritative Source of Truth (SOT) for your network. These modules allow for the automation of data input and updates, helping maintain consistency and accuracy across your network configuration and documentation. Whether you are provisioning new devices, updating interface configurations, or managing IP addresses, the Nautobot modules for Ansible provide the tools necessary to automate and streamline these tasks.
## Interacting with the Nautobot Platform
The modules in this collection enable seamless interaction with the Nautobot platform. With these modules, you can:
- Automate the provisioning and deprovisioning of network resources.
- Integrate Nautobot with your CI/CD pipelines to ensure up-to-date network configurations.
- Leverage Nautobot's API to gather real-time data for network monitoring and troubleshooting.
- Implement Infrastructure as Code (IaC) practices by managing Nautobot resources declaratively through Ansible playbooks.## Available Modules
Here is a list of available modules along with a brief description of each:
- **networktocode.nautobot.device**: Manage devices in Nautobot.
- **networktocode.nautobot.device_role**: Manage device roles in Nautobot.
- **networktocode.nautobot.device_type**: Manage device types in Nautobot.
- **networktocode.nautobot.interface**: Manage interfaces on devices in Nautobot.
- **networktocode.nautobot.ip_address**: Manage IP addresses in Nautobot.
- **networktocode.nautobot.site**: Manage sites in Nautobot.
- **networktocode.nautobot.tenant**: Manage tenants in Nautobot.
- **networktocode.nautobot.vlan**: Manage VLANs in Nautobot.
- **networktocode.nautobot.virtual_machine**: Manage virtual machines in Nautobot.
- **networktocode.nautobot.virtualization_cluster**: Manage virtualization clusters in Nautobot.
- **networktocode.nautobot.cable**: Manage cables in Nautobot.
- **networktocode.nautobot.circuit**: Manage circuits in Nautobot.
- **networktocode.nautobot.power_feed**: Manage power feeds in Nautobot.
- **networktocode.nautobot.rack**: Manage racks in Nautobot.
- **networktocode.nautobot.rack_group**: Manage rack groups in Nautobot.
- **networktocode.nautobot.inventory_item**: Manage inventory items in Nautobot.## Releasing, Versioning, and Deprecation
This collection follows [Semantic Versioning](https://semver.org/). More details on versioning can be found [in the Ansible docs](https://docs.ansible.com/ansible/latest/dev_guide/developing_collections.html#collection-versions).
We plan to regularly release new minor or bugfix versions once new features or bugfixes have been implemented.
Releasing the current major version happens from the `develop` branch with a release.
If backwards incompatible changes are necessary, we plan to deprecate the old behavior as early as possible. We also plan to backport at least bugfixes for the old major version for some time after releasing a new major version. We will not block community members from backporting other bugfixes and features from the latest stable version to older release branches, under the condition that these backports are of reasonable quality. Some changes may not be able to be backported.
> Some changes that would require immediate patching that are breaking changes will fall to SemVer and constitute a breaking change. These will only be done when necessary, such as to support working with the most recent 3 versions of Ansible. Backporting these changes may not be possible.
## History
> This is a fork of the `netbox.netbox` Ansible Galaxy collection found at [https://github.com/netbox-community/ansible_modules](https://github.com/netbox-community/ansible_modules) in February, 2021.