Repository: nautobot/nautobot-plugin-ssot-infoblox (language: python)

Issue:
Add Check for Relationship - Fix 138
This PR is just a simple fix for validating the existence of the Prefix -> VLAN Relationship before attempting to return a list of the VLANs. This addresses the issue brought up in #138. I've also gone ahead and added tests validating functionality of the Nautobot utility methods including the `get_prefix_vlans` function.


Discussion / hints:

Fix patch:
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index 33e0e52..2ac9909 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -1,9 +1,9 @@
 ---
 name: "CI"
-concurrency: # Cancel any existing runs of this workflow for this same PR
+concurrency:  # Cancel any existing runs of this workflow for this same PR
   group: "${{ github.workflow }}-${{ github.ref }}"
   cancel-in-progress: true
-on: # yamllint disable-line rule:truthy rule:comments
+on:  # yamllint disable-line rule:truthy rule:comments
   push:
     branches:
       - "main"
@@ -207,38 +207,38 @@ jobs:
         with:
           user: "__token__"
           password: "${{ secrets.PYPI_API_TOKEN }}"
-  # slack-notify:
-  #   needs:
-  #     - "publish_gh"
-  #     - "publish_pypi"
-  #   runs-on: "ubuntu-20.04"
-  #   env:
-  #     SLACK_WEBHOOK_URL: "${{ secrets.SLACK_WEBHOOK_URL }}"
-  #     SLACK_MESSAGE: >-
-  #       *NOTIFICATION: NEW-RELEASE-PUBLISHED*\n
-  #       Repository: <${{ github.server_url }}/${{ github.repository }}|${{ github.repository }}>\n
-  #       Release: <${{ github.server_url }}/${{ github.repository }}/releases/tag/${{ github.ref_name }}|${{ github.ref_name }}>\n
-  #       Published by: <${{ github.server_url }}/${{ github.actor }}|${{ github.actor }}>
-  #   steps:
-  #     - name: "Send a notification to Slack"
-  #       # ENVs cannot be used directly in job.if. This is a workaround to check
-  #       # if SLACK_WEBHOOK_URL is present.
-  #       if: "env.SLACK_WEBHOOK_URL != ''"
-  #       uses: "slackapi/slack-github-action@v1.17.0"
-  #       with:
-  #         payload: |
-  #           {
-  #             "text": "${{ env.SLACK_MESSAGE }}",
-  #             "blocks": [
-  #               {
-  #                 "type": "section",
-  #                 "text": {
-  #                   "type": "mrkdwn",
-  #                   "text": "${{ env.SLACK_MESSAGE }}"
-  #                 }
-  #               }
-  #             ]
-  #           }
-  #       env:
-  #         SLACK_WEBHOOK_URL: "${{ secrets.SLACK_WEBHOOK_URL }}"
-  #         SLACK_WEBHOOK_TYPE: "INCOMING_WEBHOOK"
+# slack-notify:
+#   needs:
+#     - "publish_gh"
+#     - "publish_pypi"
+#   runs-on: "ubuntu-20.04"
+#   env:
+#     SLACK_WEBHOOK_URL: "${{ secrets.SLACK_WEBHOOK_URL }}"
+#     SLACK_MESSAGE: >-
+#       *NOTIFICATION: NEW-RELEASE-PUBLISHED*\n
+#       Repository: <${{ github.server_url }}/${{ github.repository }}|${{ github.repository }}>\n
+#       Release: <${{ github.server_url }}/${{ github.repository }}/releases/tag/${{ github.ref_name }}|${{ github.ref_name }}>\n
+#       Published by: <${{ github.server_url }}/${{ github.actor }}|${{ github.actor }}>
+#   steps:
+#     - name: "Send a notification to Slack"
+#       # ENVs cannot be used directly in job.if. This is a workaround to check
+#       # if SLACK_WEBHOOK_URL is present.
+#       if: "env.SLACK_WEBHOOK_URL != ''"
+#       uses: "slackapi/slack-github-action@v1.17.0"
+#       with:
+#         payload: |
+#           {
+#             "text": "${{ env.SLACK_MESSAGE }}",
+#             "blocks": [
+#               {
+#                 "type": "section",
+#                 "text": {
+#                   "type": "mrkdwn",
+#                   "text": "${{ env.SLACK_MESSAGE }}"
+#                 }
+#               }
+#             ]
+#           }
+#       env:
+#         SLACK_WEBHOOK_URL: "${{ secrets.SLACK_WEBHOOK_URL }}"
+#         SLACK_WEBHOOK_TYPE: "INCOMING_WEBHOOK"
diff --git a/CHANGELOG.md b/CHANGELOG.md
index a7274ed..8bb19d0 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -7,6 +7,19 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
 
 <!--next-version-placeholder-->
 
+## v0.9.0 (2023-10-20)
+### Feature
+
+* ✨ Add ability to select objects to import and specify Prefixes to import. ([`926edc7`](https://github.com/nautobot/nautobot-plugin-ssot-infoblox/commit/926edc7e397ed591a51bfa86798e0cd158b2f13c))
+
+### Fix
+
+* Correct CustomField creation to not slugify name, specify slug. ([`da56cd0`](https://github.com/nautobot/nautobot-plugin-ssot-infoblox/commit/da56cd00707003b6f3390630fc1e448d329c57ab))
+
+### Documentation
+
+* 📝 Updated README with missing settings. ([`37dbadd`](https://github.com/nautobot/nautobot-plugin-ssot-infoblox/commit/37dbadd8b437eefe06eaccc6fe2f350b7b3337de))
+
 ## v0.8.0 (2023-05-08)
 ### Feature
 * ✨ Add ability to select objects to import and specify Prefixes to import. ([`926edc7`](https://github.com/nautobot/nautobot-plugin-ssot-infoblox/commit/926edc7e397ed591a51bfa86798e0cd158b2f13c))
diff --git a/README.md b/README.md
index 1731807..2040ac0 100644
--- a/README.md
+++ b/README.md
@@ -1,3 +1,5 @@
+# The code in this repository has been migrated to the [Nautobot SSoT Repository](https://github.com/nautobot/nautobot-plugin-ssot) as an integration - read more about it in the [SSoT Docs](https://docs.nautobot.com/projects/ssot/en/latest/admin/install/)! As of August 2023 this repository has been **FROZEN** - all development / issues / discussions for this integration are in the [Nautobot SSoT Repository](https://github.com/nautobot/nautobot-plugin-ssot) going forward.
+
 # Nautobot SSoT Infoblox
 
 Using the [Nautobot SSoT](https://github.com/nautobot/nautobot-plugin-ssot) framework, the SSoT plugin for Infoblox allows for synchronizing of IP network and VLAN data between [Infoblox](https://infoblox.com/) and [Nautobot](https://github.com/nautobot/nautobot).
diff --git a/poetry.lock b/poetry.lock
index c6d817e..704dbb4 100644
--- a/poetry.lock
+++ b/poetry.lock
@@ -1313,13 +1313,13 @@ dev = ["flake8", "markdown", "twine", "wheel"]
 
 [[package]]
 name = "gitdb"
-version = "4.0.10"
+version = "4.0.11"
 description = "Git Object Database"
 optional = false
 python-versions = ">=3.7"
 files = [
-    {file = "gitdb-4.0.10-py3-none-any.whl", hash = "sha256:c286cf298426064079ed96a9e4a9d39e7f3e9bf15ba60701e95f5492f28415c7"},
-    {file = "gitdb-4.0.10.tar.gz", hash = "sha256:6eb990b69df4e15bad899ea868dc46572c3f75339735663b81de79b06f17eb9a"},
+    {file = "gitdb-4.0.11-py3-none-any.whl", hash = "sha256:81a3407ddd2ee8df444cbacea00e2d038e40150acfa3001696fe0dcf1d3adfa4"},
+    {file = "gitdb-4.0.11.tar.gz", hash = "sha256:bf5421126136d6d0af55bc1e7c1af1c397a34f5b7bd79e776cd3e89785c2b04b"},
 ]
 
 [package.dependencies]
diff --git a/pyproject.toml b/pyproject.toml
index 7961c0a..28c06bb 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -1,6 +1,6 @@
 [tool.poetry]
 name = "nautobot-ssot-infoblox"
-version = "0.8.0"
+version = "0.9.0"
 description = "Nautobot SSoT Infoblox"
 authors = ["Network to Code, LLC <info@networktocode.com>"]
 license = "Apache-2.0"


Test patch:
diff --git a/.github/workflows/upstream_testing.yml b/.github/workflows/upstream_testing.yml
index e8c05fa..77e541f 100644
--- a/.github/workflows/upstream_testing.yml
+++ b/.github/workflows/upstream_testing.yml
@@ -1,13 +1,13 @@
 ---
 name: "Nautobot Upstream Testing"
 
-on: # yamllint disable-line rule:truthy rule:comments
+on:  # yamllint disable-line rule:truthy rule:comments
   schedule:
-    - cron: "0 4 */2 * *" # every other day at midnight
+    - cron: "0 4 */2 * *"  # every other day at midnight
 
 jobs:
   upstream-test:
     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
+    with:  # Below could potentially be collapsed into a single argument if a concrete relationship between both is enforced
       invoke_context_name: "NAUTOBOT_SSOT_INFOBLOX"
       plugin_name: "nautobot-ssot-infoblox"