Skip to content

Commit

Permalink
Merge pull request #315 from nautobot/release-v2.1.0
Browse files Browse the repository at this point in the history
  • Loading branch information
jdrew82 authored Jan 5, 2024
2 parents 23dd062 + 90a8d17 commit 6cc17b5
Show file tree
Hide file tree
Showing 94 changed files with 993 additions and 244 deletions.
11 changes: 6 additions & 5 deletions .cookiecutter.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,15 +4,15 @@
"full_name": "Network to Code, LLC",
"email": "[email protected]",
"github_org": "nautobot",
"plugin_name": "nautobot_ssot",
"app_name": "nautobot_ssot",
"verbose_name": "Single Source of Truth",
"plugin_slug": "nautobot-ssot",
"project_slug": "nautobot-plugin-ssot",
"repo_url": "https://github.com/nautobot/nautobot-plugin-ssot/",
"app_slug": "nautobot-ssot",
"project_slug": "nautobot-app-ssot",
"repo_url": "https://github.com/nautobot/nautobot-app-ssot/",
"base_url": "ssot",
"min_nautobot_version": "2.0.0",
"max_nautobot_version": "2.9999",
"camel_name": "NautobotSSOTPlugin",
"camel_name": "NautobotSSOTApp",
"project_short_description": "Nautobot Single Source of Truth",
"model_class_name": "None",
"open_source_license": "Apache-2.0",
Expand All @@ -33,3 +33,4 @@
}
}
}

2 changes: 1 addition & 1 deletion .github/PULL_REQUEST_TEMPLATE/pull_request_template.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,5 +31,5 @@
- [ ] Attached Screenshots, Payload Example
- [ ] Unit, Integration Tests
- [ ] Documentation Updates (when adding/changing features)
- [ ] Example Plugin Updates (when adding/changing features)
- [ ] Example App Updates (when adding/changing features)
- [ ] Outline Remaining Work, Constraints from Design
2 changes: 1 addition & 1 deletion .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ on: # yamllint disable-line rule:truthy rule:comments
pull_request: ~

env:
PLUGIN_NAME: "nautobot-plugin-ssot"
PLUGIN_NAME: "nautobot-app-ssot"

jobs:
black:
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/upstream_testing.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,4 +10,4 @@ jobs:
uses: "nautobot/nautobot/.github/workflows/plugin_upstream_testing_base.yml@develop"
with: # Below could potentially be collapsed into a single argument if a concrete relationship between both is enforced
invoke_context_name: "NAUTOBOT_SSOT"
plugin_name: "nautobot-plugin-ssot"
plugin_name: "nautobot-app-ssot"
14 changes: 7 additions & 7 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
# Nautobot Single Source of Truth (SSoT)

<p align="center">
<img src="https://raw.githubusercontent.com/nautobot/nautobot-plugin-ssot/develop/docs/images/icon-nautobot-ssot.png" class="logo" height="200px">
<img src="https://raw.githubusercontent.com/nautobot/nautobot-app-ssot/develop/docs/images/icon-nautobot-ssot.png" class="logo" height="200px">
<br>
<a href="https://github.com/nautobot/nautobot-plugin-ssot//actions"><img src="https://github.com/nautobot/nautobot-plugin-ssot//actions/workflows/ci.yml/badge.svg?branch=main"></a>
<a href="https://docs.nautobot.com/projects/ssot/en/latest"><img src="https://readthedocs.org/projects/nautobot-plugin-ssot/badge/"></a>
<a href="https://github.com/nautobot/nautobot-app-ssot/actions"><img src="https://github.com/nautobot/nautobot-app-ssot/actions/workflows/ci.yml/badge.svg?branch=main"></a>
<a href="https://docs.nautobot.com/projects/ssot/en/latest"><img src="https://readthedocs.org/projects/nautobot-app-ssot/badge/"></a>
<a href="https://pypi.org/project/nautobot-ssot/"><img src="https://img.shields.io/pypi/v/nautobot-ssot"></a>
<a href="https://pypi.org/project/nautobot-ssot/"><img src="https://img.shields.io/pypi/dm/nautobot-ssot"></a>
<br>
Expand Down Expand Up @@ -40,17 +40,17 @@ Read more about integrations [here](https://docs.nautobot.com/projects/ssot/en/l
---

The dashboard view of the app.
![Dashboard View](https://raw.githubusercontent.com/nautobot/nautobot-plugin-ssot/develop/docs/images/dashboard_initial.png)
![Dashboard View](https://raw.githubusercontent.com/nautobot/nautobot-app-ssot/develop/docs/images/dashboard_initial.png)

---

The detailed view of the example data source that is prepackaged within this app.
![Data Source Detail View](https://raw.githubusercontent.com/nautobot/nautobot-plugin-ssot/develop/docs/images/data_source_detail.png)
![Data Source Detail View](https://raw.githubusercontent.com/nautobot/nautobot-app-ssot/develop/docs/images/data_source_detail.png)

---

The detailed view of an executed sync.
![Sync Detail View](https://raw.githubusercontent.com/nautobot/nautobot-plugin-ssot/develop/docs/images/sync_detail.png)
![Sync Detail View](https://raw.githubusercontent.com/nautobot/nautobot-app-ssot/develop/docs/images/sync_detail.png)

---

Expand Down Expand Up @@ -85,7 +85,7 @@ The SSoT framework includes a number of integrations with external Systems of Re
### Contributing to the Documentation

You can find all the Markdown source for the app documentation under the [`docs`](https://github.com/nautobot/nautobot-plugin-ssot/tree/develop/docs) folder in this repository. For simple edits, a Markdown capable editor is sufficient: clone the repository and edit away.
You can find all the Markdown source for the app documentation under the [`docs`](https://github.com/nautobot/nautobot-app-ssot/tree/develop/docs) folder in this repository. For simple edits, a Markdown capable editor is sufficient: clone the repository and edit away.

If you need to view the fully-generated documentation site, you can build it with [MkDocs](https://www.mkdocs.org/). A container hosting the documentation can be started using the `invoke` commands (details in the [Development Environment Guide](https://docs.nautobot.com/projects/ssot/en/latest/dev/dev_environment/#docker-development-environment)) on [http://localhost:8001](http://localhost:8001). Using this container, as your changes to the documentation are saved, they will be automatically rebuilt and any pages currently being viewed will be reloaded in your browser.

Expand Down
1 change: 1 addition & 0 deletions development/nautobot_config.py
Original file line number Diff line number Diff line change
Expand Up @@ -230,6 +230,7 @@
"infoblox_username": os.getenv("NAUTOBOT_SSOT_INFOBLOX_USERNAME"),
"infoblox_verify_ssl": is_truthy(os.getenv("NAUTOBOT_SSOT_INFOBLOX_VERIFY_SSL", True)),
"infoblox_wapi_version": os.getenv("NAUTOBOT_SSOT_INFOBLOX_WAPI_VERSION", "v2.12"),
"infoblox_network_view": os.getenv("NAUTOBOT_SSOT_INFOBLOX_NETWORK_VIEW", ""),
"ipfabric_api_token": os.getenv("NAUTOBOT_SSOT_IPFABRIC_API_TOKEN"),
"ipfabric_host": os.getenv("NAUTOBOT_SSOT_IPFABRIC_HOST"),
"ipfabric_ssl_verify": is_truthy(os.getenv("NAUTOBOT_SSOT_IPFABRIC_SSL_VERIFY", "False")),
Expand Down
1 change: 1 addition & 0 deletions docs/admin/compatibility_matrix.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,3 +17,4 @@ While that last supported version will not be strictly enforced--via the max_ver
| 2.0.0 | 2.0.0 | 2.99.09 |
| 2.0.1 | 2.0.0 | 2.99.09 |
| 2.0.2 | 2.0.0 | 2.99.09 |
| 2.1.0 | 2.0.0 | 2.99.09 |
1 change: 1 addition & 0 deletions docs/admin/integrations/infoblox_setup.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,7 @@ Integration behavior can be controlled with the following settings:
| infoblox_import_objects_vlan_views | False | Import VLAN views from Infoblox to Nautobot. |
| infoblox_import_objects_vlans | False | Import VLANs from Infoblox to Nautobot. |
| infoblox_import_subnets | N/A | List of Subnets in CIDR string notation to filter import to. |
| infoblox_network_view | N/A | Only load IPAddresses from a specific Infoblox Network View. |

Below is an example snippet from `nautobot_config.py` that demonstrates how to enable and configure Infoblox integration:

Expand Down
2 changes: 2 additions & 0 deletions docs/admin/integrations/ipfabric_setup.md
Original file line number Diff line number Diff line change
Expand Up @@ -57,6 +57,7 @@ PLUGINS_CONFIG = {
| `ipfabric_safe_delete_location_status` | The status that is set for a Location when the `Safe Delete Mode` flag is set in the Job. | `Decommissioning` |
| `ipfabric_safe_delete_vlan_status` | The status that is set for a VLAN when the `Safe Delete Mode` flag is set in the Job. | `Deprecated` |
| `ipfabric_safe_delete_ipaddress_status` | The status that is set for an IP Address when the `Safe Delete Mode` flag is set in the Job. | `Deprecated` |
| `ipfabric_use_canonical_interface_name` | Whether to attempt to elongate interface names as found in IP Fabric. | `False` |


Below is an example snippet from `nautobot_config.py` that demonstrates how to enable and configure the IPFabric SSoT integration along with the optional settings:
Expand All @@ -80,6 +81,7 @@ PLUGINS_CONFIG = {
"ipfabric_safe_delete_location_status": os.environ.get("NAUTOBOT_SSOT_IPFABRIC_LOCATION_DELETE_STATUS"),
"ipfabric_safe_delete_vlan_status": os.environ.get("NAUTOBOT_SSOT_IPFABRIC_VLAN_DELETE_STATUS"),
"ipfabric_safe_delete_ipaddress_status": os.environ.get("NAUTOBOT_SSOT_IPFABRIC_IPADDRESS_DELETE_STATUS"),
"ipfabric_use_canonical_interface_name": True,
}
}
```
Expand Down
6 changes: 3 additions & 3 deletions docs/admin/release_notes/version_1.0.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,15 +4,15 @@

### Changed

- [#8](https://github.com/nautobot/nautobot-plugin-ssot/pull/8) - Switched from Travis CI to GitHub Actions.
- [#8](https://github.com/nautobot/nautobot-app-ssot/pull/8) - Switched from Travis CI to GitHub Actions.

### Fixed

- [#9](https://github.com/nautobot/nautobot-plugin-ssot/pull/9) - Added missing `name` string to `jobs/examples.py`.
- [#9](https://github.com/nautobot/nautobot-app-ssot/pull/9) - Added missing `name` string to `jobs/examples.py`.

### Removed

- [#7](https://github.com/nautobot/nautobot-plugin-ssot/pull/7) - Removed unnecessary `markdown-include` development/documentation dependency.
- [#7](https://github.com/nautobot/nautobot-app-ssot/pull/7) - Removed unnecessary `markdown-include` development/documentation dependency.

## [v1.0.0] - 2021-08-03

Expand Down
20 changes: 10 additions & 10 deletions docs/admin/release_notes/version_1.1.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,29 +4,29 @@

### Fixed

- [#48](https://github.com/nautobot/nautobot-plugin-ssot/pull/48) - Fix introduced bug in #43, using a nonexistent method in an object.
- [#48](https://github.com/nautobot/nautobot-app-ssot/pull/48) - Fix introduced bug in #43, using a nonexistent method in an object.

## v1.1.1 - 2022-05-06

### Added

- [#43](https://github.com/nautobot/nautobot-plugin-ssot/pull/43) - The detailed SSoT log output contains a summary info message about the diff changes.
- [#43](https://github.com/nautobot/nautobot-app-ssot/pull/43) - The detailed SSoT log output contains a summary info message about the diff changes.

### Fixed

- [#42](https://github.com/nautobot/nautobot-plugin-ssot/pull/42) - Use format_html to create all HTML pieces in render_diff and combine with mark_safe when is formatted twice.
- [#40](https://github.com/nautobot/nautobot-plugin-ssot/pull/40) - Handle gracefully unexpected input type for humanize_bytes filter.
- [#42](https://github.com/nautobot/nautobot-app-ssot/pull/42) - Use format_html to create all HTML pieces in render_diff and combine with mark_safe when is formatted twice.
- [#40](https://github.com/nautobot/nautobot-app-ssot/pull/40) - Handle gracefully unexpected input type for humanize_bytes filter.

## v1.1.0 - 2022-02-03

### Added

- [#11](https://github.com/nautobot/nautobot-plugin-ssot/issues/11) - Add option to profile memory usage during job execution.
- [#14](https://github.com/nautobot/nautobot-plugin-ssot/pull/14), [#22](https://github.com/nautobot/nautobot-plugin-ssot/pull/22) - Added Prefix sync to example jobs, added Celery worker to dev environment.
- [#15](https://github.com/nautobot/nautobot-plugin-ssot/pull/15) - Added `load_source_adapter`, `load_target_adapter`, `calculate_diff`, and `execute_sync` API methods that Job implementations can override instead of overriding the generalized `sync_data` method.
- [#21](https://github.com/nautobot/nautobot-plugin-ssot/pull/21) - Add performance stats in Sync job detail view.
- [#11](https://github.com/nautobot/nautobot-app-ssot/issues/11) - Add option to profile memory usage during job execution.
- [#14](https://github.com/nautobot/nautobot-app-ssot/pull/14), [#22](https://github.com/nautobot/nautobot-app-ssot/pull/22) - Added Prefix sync to example jobs, added Celery worker to dev environment.
- [#15](https://github.com/nautobot/nautobot-app-ssot/pull/15) - Added `load_source_adapter`, `load_target_adapter`, `calculate_diff`, and `execute_sync` API methods that Job implementations can override instead of overriding the generalized `sync_data` method.
- [#21](https://github.com/nautobot/nautobot-app-ssot/pull/21) - Add performance stats in Sync job detail view.

### Fixed

- [#13](https://github.com/nautobot/nautobot-plugin-ssot/issues/13) - Handle pagination of Nautobot REST API in example jobs.
- [#18](https://github.com/nautobot/nautobot-plugin-ssot/pull/18) - Don't skip diff and sync if either of the source or target adapters initially contains no data.
- [#13](https://github.com/nautobot/nautobot-app-ssot/issues/13) - Handle pagination of Nautobot REST API in example jobs.
- [#18](https://github.com/nautobot/nautobot-app-ssot/pull/18) - Don't skip diff and sync if either of the source or target adapters initially contains no data.
4 changes: 2 additions & 2 deletions docs/admin/release_notes/version_1.2.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,8 @@

### Fixed

- [#58](https://github.com/nautobot/nautobot-plugin-ssot/pull/58) - Change `message` and `object_repr` from 200 `CharField` field, to a `TextField`
- [#58](https://github.com/nautobot/nautobot-app-ssot/pull/58) - Change `message` and `object_repr` from 200 `CharField` field, to a `TextField`

### Changed

- [#56](https://github.com/nautobot/nautobot-plugin-ssot/pull/56) - Drop Python 3.6 support
- [#56](https://github.com/nautobot/nautobot-app-ssot/pull/56) - Drop Python 3.6 support
34 changes: 17 additions & 17 deletions docs/admin/release_notes/version_1.3.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,42 +5,42 @@

### Added

- [#95](https://github.com/nautobot/nautobot-plugin-ssot/pull/95) - Add Metrics
- [#70](https://github.com/nautobot/nautobot-plugin-ssot/pull/70) - Enable Upstream Testing
- [#87](https://github.com/nautobot/nautobot-plugin-ssot/pull/87) - Rename upstream.yml to upstream_testing.yml
- [#95](https://github.com/nautobot/nautobot-app-ssot/pull/95) - Add Metrics
- [#70](https://github.com/nautobot/nautobot-app-ssot/pull/70) - Enable Upstream Testing
- [#87](https://github.com/nautobot/nautobot-app-ssot/pull/87) - Rename upstream.yml to upstream_testing.yml

### Fixed

- [#93](https://github.com/nautobot/nautobot-plugin-ssot/pull/93) - fix-92: Defer loading JSONField 'diff' in queryset
- [#101](https://github.com/nautobot/nautobot-plugin-ssot/pull/101) - Fix packaging version in pyproject.toml.
- [#93](https://github.com/nautobot/nautobot-app-ssot/pull/93) - fix-92: Defer loading JSONField 'diff' in queryset
- [#101](https://github.com/nautobot/nautobot-app-ssot/pull/101) - Fix packaging version in pyproject.toml.

### Changed

- [#62](https://github.com/nautobot/nautobot-plugin-ssot/pull/62) - Add slack notify CI step for release
- [#73](https://github.com/nautobot/nautobot-plugin-ssot/pull/73) - Update environment to ntc cookie-cutter
- [#89](https://github.com/nautobot/nautobot-plugin-ssot/pull/89) - Use generic templates
- [#62](https://github.com/nautobot/nautobot-app-ssot/pull/62) - Add slack notify CI step for release
- [#73](https://github.com/nautobot/nautobot-app-ssot/pull/73) - Update environment to ntc cookie-cutter
- [#89](https://github.com/nautobot/nautobot-app-ssot/pull/89) - Use generic templates

### Documentation

- [#80](https://github.com/nautobot/nautobot-plugin-ssot/pull/80) - Documentation Update
- [#72](https://github.com/nautobot/nautobot-plugin-ssot/pull/72) - Update __init__.py to better describe the app in the UI
- [#94](https://github.com/nautobot/nautobot-plugin-ssot/pull/94) - Add Justin and Leo as codeowners
- [#80](https://github.com/nautobot/nautobot-app-ssot/pull/80) - Documentation Update
- [#72](https://github.com/nautobot/nautobot-app-ssot/pull/72) - Update __init__.py to better describe the app in the UI
- [#94](https://github.com/nautobot/nautobot-app-ssot/pull/94) - Add Justin and Leo as codeowners

## v1.3.1 - 2023-05-02

### Fixes

- [#108](https://github.com/nautobot/nautobot-plugin-ssot/pull/108) - Fix Prometheus Dependency
- [#108](https://github.com/nautobot/nautobot-app-ssot/pull/108) - Fix Prometheus Dependency
-
## v1.3.2 - 2023-05-23

### Fixed

- [#119](https://github.com/nautobot/nautobot-plugin-ssot/pull/119) Fix search bar in SSoT Sync Logs
- [#112](https://github.com/nautobot/nautobot-plugin-ssot/pull/112) Fix error in documentation
- [#119](https://github.com/nautobot/nautobot-app-ssot/pull/119) Fix search bar in SSoT Sync Logs
- [#112](https://github.com/nautobot/nautobot-app-ssot/pull/112) Fix error in documentation

### Changed

- [#120](https://github.com/nautobot/nautobot-plugin-ssot/pull/120) Bump requests from 2.29.0 to 2.31.0
- [#117](https://github.com/nautobot/nautobot-plugin-ssot/pull/117) Bump pymdown-extensions from 9.11 to 10.0
- [#116](https://github.com/nautobot/nautobot-plugin-ssot/pull/116) Bump django from 3.2.18 to 3.2.19
- [#120](https://github.com/nautobot/nautobot-app-ssot/pull/120) Bump requests from 2.29.0 to 2.31.0
- [#117](https://github.com/nautobot/nautobot-app-ssot/pull/117) Bump pymdown-extensions from 9.11 to 10.0
- [#116](https://github.com/nautobot/nautobot-app-ssot/pull/116) Bump django from 3.2.18 to 3.2.19
28 changes: 14 additions & 14 deletions docs/admin/release_notes/version_1.4.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,20 +4,20 @@

## Added

- [136](https://github.com/nautobot/nautobot-plugin-ssot/pull/136) - Add Cisco ACI integration by @snaselj
- [138](https://github.com/nautobot/nautobot-plugin-ssot/pull/138) - Add Arista CloudVision integration by @snaselj
- [139](https://github.com/nautobot/nautobot-plugin-ssot/pull/139) - Add ServiceNow integration by @snaselj
- [137](https://github.com/nautobot/nautobot-plugin-ssot/pull/137) - Add IPFabric integration by @snaselj
- [136](https://github.com/nautobot/nautobot-app-ssot/pull/136) - Add Cisco ACI integration by @snaselj
- [138](https://github.com/nautobot/nautobot-app-ssot/pull/138) - Add Arista CloudVision integration by @snaselj
- [139](https://github.com/nautobot/nautobot-app-ssot/pull/139) - Add ServiceNow integration by @snaselj
- [137](https://github.com/nautobot/nautobot-app-ssot/pull/137) - Add IPFabric integration by @snaselj

## Changed

- [88](https://github.com/nautobot/nautobot-plugin-ssot/pull/88) - fix: Do not fail example data source job with invalid data by @snaselj
- [135](https://github.com/nautobot/nautobot-plugin-ssot/pull/135) - Sync tasks with template by @snaselj
- [134](https://github.com/nautobot/nautobot-plugin-ssot/pull/134) - Prepare for integrations and add Infoblox integration by @snaselj
- [124](https://github.com/nautobot/nautobot-plugin-ssot/pull/124) - 1.3.2 back to develop by @Kircheneer
- [145](https://github.com/nautobot/nautobot-plugin-ssot/pull/145) - Wrap saving diff in try/except for large diff errors by @jmcgill298
- [146](https://github.com/nautobot/nautobot-plugin-ssot/pull/146) - Use DjangoJSONEncoder for diff field by @jmcgill298
- [155](https://github.com/nautobot/nautobot-plugin-ssot/pull/155) - Port IP Fabric release v2.0.2 into integration PR by @pke11y
- [153](https://github.com/nautobot/nautobot-plugin-ssot/pull/153) - Implementing base models/adapters for Nautobot side functionality. by @Kircheneer
- [199](https://github.com/nautobot/nautobot-plugin-ssot/pull/199) - style: :bug: Support generic folder path (ported fomr a commit by @jasonjuenger) by @chadell
- [152](https://github.com/nautobot/nautobot-plugin-ssot/pull/152) - Finalize Integrations by @snaselj
- [88](https://github.com/nautobot/nautobot-app-ssot/pull/88) - fix: Do not fail example data source job with invalid data by @snaselj
- [135](https://github.com/nautobot/nautobot-app-ssot/pull/135) - Sync tasks with template by @snaselj
- [134](https://github.com/nautobot/nautobot-app-ssot/pull/134) - Prepare for integrations and add Infoblox integration by @snaselj
- [124](https://github.com/nautobot/nautobot-app-ssot/pull/124) - 1.3.2 back to develop by @Kircheneer
- [145](https://github.com/nautobot/nautobot-app-ssot/pull/145) - Wrap saving diff in try/except for large diff errors by @jmcgill298
- [146](https://github.com/nautobot/nautobot-app-ssot/pull/146) - Use DjangoJSONEncoder for diff field by @jmcgill298
- [155](https://github.com/nautobot/nautobot-app-ssot/pull/155) - Port IP Fabric release v2.0.2 into integration PR by @pke11y
- [153](https://github.com/nautobot/nautobot-app-ssot/pull/153) - Implementing base models/adapters for Nautobot side functionality. by @Kircheneer
- [199](https://github.com/nautobot/nautobot-app-ssot/pull/199) - style: :bug: Support generic folder path (ported fomr a commit by @jasonjuenger) by @chadell
- [152](https://github.com/nautobot/nautobot-app-ssot/pull/152) - Finalize Integrations by @snaselj
Loading

0 comments on commit 6cc17b5

Please sign in to comment.