Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
62 commits
Select commit Hold shift + click to select a range
102f95e
chore: add v0.6.0 to netbox-plugin manifest (#44)
mfiedorowicz Oct 14, 2024
abaea64
chore: run lint and tests workflow on plugin code change only (#45)
mfiedorowicz Oct 14, 2024
2f5a863
chore: add GitHub issue templates (#46)
mfiedorowicz Oct 21, 2024
a49113b
chore: GHA release - use GITHUB_TOKEN (#48)
mfiedorowicz Nov 27, 2024
5f44578
chore: GHA release - set permissions (#49)
mfiedorowicz Nov 27, 2024
7838f9d
feat: enable netbox_branching plugin by default (#51)
ltucker Dec 12, 2024
3477b04
fix: do not treat _branch parameter as search criterion (#52)
ltucker Dec 13, 2024
53fbc02
chore: security improvements (#53)
mfiedorowicz Dec 30, 2024
cd55ef8
chore: update reconciler sdk to pick up ignored state (#54)
ltucker Dec 31, 2024
0bfbb77
chore: update protobufs (#55)
ltucker Jan 22, 2025
1fa65a4
chore: regenerate reconciler sdk (#56)
mfiedorowicz Jan 23, 2025
89adbae
chore: regenerate reconciler proto (#57)
mfiedorowicz Jan 24, 2025
13115bd
feat: remove ingestion logs view (#58)
mfiedorowicz Feb 6, 2025
9d6dec4
fix: retrieve object states using concrete models (#60)
mfiedorowicz Feb 14, 2025
dacbfd9
fix: apply change set concurrency (#63)
mfiedorowicz Feb 17, 2025
93e4c9b
fix: scope support on apply change set (#64)
mfiedorowicz Feb 20, 2025
ce3beeb
feat: update data model (#73)
ltucker Apr 7, 2025
fd79324
fix: adjust result structure (#74)
ltucker Apr 8, 2025
905e2c8
feat: basic support for custom fields (#75)
ltucker Apr 10, 2025
a8019f9
fix: fix errors attempting value harmonization (#76)
ltucker Apr 10, 2025
6275570
fix: merge tags rather than overwrite (#77)
ltucker Apr 11, 2025
4ee1b5e
fix: accept both valid forms of protoJSON (snake and camel) (#78)
ltucker Apr 12, 2025
53158b2
fix: add special format transformations (#80)
ltucker Apr 13, 2025
9b01b3e
fix: special cases for ip network defaulting (#81)
ltucker Apr 13, 2025
adf151f
fix: fix complex vm interface update case (#82)
ltucker Apr 13, 2025
d847a00
fix: fix decimal / eui previous values (#83)
ltucker Apr 13, 2025
bfe4788
fix: update dependency versions to allow for newer releases (#84)
mfiedorowicz Apr 17, 2025
e85ebf9
feat: implement OAuth2 authentication and permissions for Diode NetBo…
mfiedorowicz Apr 21, 2025
f0a8af4
chore: update copyright year in authentication, permissions, and view…
mfiedorowicz Apr 21, 2025
0d3522a
fix: create and fix failing tests (#87)
ltucker Apr 21, 2025
ce2bf8f
feat: diode auth authentication
mfiedorowicz Apr 22, 2025
305ddf3
chore: update compatibility version in netbox-plugin.yaml
mfiedorowicz Apr 22, 2025
8ea3b2b
feat: adjust unit test to diode auth with oauth2
mfiedorowicz Apr 22, 2025
14149ac
chore: update copyright year in all plugin files to 2025
mfiedorowicz Apr 22, 2025
99a1bb7
Merge branch 'feat-diode-data-plugin' into feat-authn-oauth2
mfiedorowicz Apr 22, 2025
35286bc
fix tests
mfiedorowicz Apr 22, 2025
b66cbef
feat: enhance OAuth2 authentication and permissions in Diode NetBox P…
mfiedorowicz Apr 23, 2025
c2f3a85
chore: remove unspecified diode_username_override
mfiedorowicz Apr 23, 2025
612c991
refactor: rename permission scope constants for consistency
mfiedorowicz Apr 23, 2025
6bd1215
refactor: remove redundant HasScope permission class
mfiedorowicz Apr 23, 2025
9f3f219
Merge pull request #86 from netboxlabs/feat-authn-oauth2
ltucker Apr 23, 2025
421860f
Merge branch 'develop' into feat-diode-data-plugin
ltucker Apr 23, 2025
0bfd349
fix: add rack role test
ltucker Apr 23, 2025
39a80a3
chore: remove trace logging
ltucker Apr 23, 2025
ef1bee6
fix: sanitize branch name
ltucker Apr 23, 2025
8c46fd2
Potential fix for code scanning alert no. 21: Log Injection
ltucker Apr 23, 2025
3a70229
Potential fix for code scanning alert no. 16: Log Injection
ltucker Apr 23, 2025
ece4fe8
fix: fix flakey tag sorting, test cleanup
ltucker Apr 23, 2025
28672d5
feat: diode data plugin 1.0 rc (#88)
mfiedorowicz Apr 24, 2025
d86ce16
perf: license update to NetBox Limited Use License 1.0
mfiedorowicz Apr 24, 2025
16e2a14
fix: generate diff - set branch for the change set
mfiedorowicz Apr 24, 2025
886d916
fix: generate diff - set branch for the change set (#90)
ltucker Apr 24, 2025
9616d2c
perf: license update to NetBox Limited Use License 1.0 (#89)
mfiedorowicz Apr 24, 2025
203ef34
fix: consider object type in fingerprint all deduplication
ltucker Apr 24, 2025
65c16f3
fix: consider object type in fingerprint all deduplication (#91)
ltucker Apr 24, 2025
3c3b61c
fix: handle validation errors by finding existing objects on create (…
mfiedorowicz Apr 24, 2025
c4dee43
chore: linux extra hosts (#92)
leoparente Apr 24, 2025
794a325
fix: apply fails to create already existing object (#93)
mfiedorowicz Apr 24, 2025
8bf87ec
chore: create tests for double created objects
ltucker Apr 24, 2025
700ad6e
chore: create tests for double created objects (#94)
ltucker Apr 24, 2025
48b7c56
chore: update Python package name format and improve release version …
mfiedorowicz Apr 24, 2025
c8e6b9c
fix: update release GHA workflow (#96)
mfiedorowicz Apr 24, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/CODEOWNERS
Original file line number Diff line number Diff line change
@@ -1 +1 @@
* @leoparente @mfiedorowicz
* @leoparente @ltucker @mfiedorowicz
42 changes: 42 additions & 0 deletions .github/ISSUE_TEMPLATE/01-feature_request.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
---
name: ✨ Feature Request
description: Propose a new Diode NetBox Plugin feature or enhancement
labels: ["enhancement", "status: needs triage"]
body:
- type: input
attributes:
label: Diode NetBox Plugin version
description: What version of Diode NetBox Plugin are you currently running?
placeholder: v0.6.0
validations:
required: true
- type: input
attributes:
label: NetBox version
description: What version of NetBox are you currently running?
placeholder: v4.1.3
validations:
required: true
- type: dropdown
attributes:
label: Feature type
options:
- New functionality
- Change to existing functionality
validations:
required: true
- type: textarea
attributes:
label: Proposed feature or enhancement
description: >
Describe in detail the new feature or enhancement you are proposing. The more detail you provide here,
the greater chance your proposal has of being discussed.
validations:
required: true
- type: textarea
attributes:
label: Use case
description: >
Explain how adding this feature or enhancement would benefit Diode users. What need does it address?
validations:
required: true
62 changes: 62 additions & 0 deletions .github/ISSUE_TEMPLATE/02-bug_report.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
---
name: 🐛 Bug Report
description: Report a reproducible bug in the current release of Diode NetBox Plugin
labels: ["bug", "status: needs triage"]
body:
- type: input
attributes:
label: Diode NetBox Plugin version
description: What version of Diode NetBox Plugin are you currently running?
placeholder: v0.6.0
validations:
required: true
- type: input
attributes:
label: NetBox version
description: What version of NetBox are you currently running?
placeholder: v4.1.3
validations:
required: true
- type: input
attributes:
label: Diode version
description: What version of Diode are you currently running?
placeholder: v0.6.0
validations:
required: true
- type: dropdown
attributes:
label: Diode SDK type
description: What type of Diode SDK are you currently running?
options:
- diode-sdk-python
- diode-sdk-go
validations:
required: true
- type: input
attributes:
label: Diode SDK version
description: What version of Diode SDK are you currently running?
placeholder: v0.4.0
validations:
required: true
- type: textarea
attributes:
label: Steps to reproduce
description: >
Describe in detail the exact steps that someone else can take to reproduce this bug using given Diode NetBox
Plugin, NetBox, Diode and Diode SDK versions.
validations:
required: true
- type: textarea
attributes:
label: Expected behavior
description: What did you expect to happen?
validations:
required: true
- type: textarea
attributes:
label: Observed behavior
description: What happened instead?
validations:
required: true
35 changes: 35 additions & 0 deletions .github/ISSUE_TEMPLATE/03-documentation_change.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
---
name: 📖 Documentation Change
description: Suggest an addition or modification to the Diode NetBox Plugin documentation
labels: ["documentation", "status: needs triage"]
body:
- type: dropdown
attributes:
label: Change type
description: What type of change are you proposing?
options:
- Addition
- Correction
- Removal
- Cleanup (formatting, typos, etc.)
validations:
required: true
- type: dropdown
attributes:
label: Area
description: To what section of the documentation does this change primarily pertain?
options:
- Features
- Installation/upgrade
- Getting started
- Configuration
- Development
- Other
validations:
required: true
- type: textarea
attributes:
label: Proposed changes
description: Describe the proposed changes and why they are necessary.
validations:
required: true
1 change: 1 addition & 0 deletions .github/ISSUE_TEMPLATE/config.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
blank_issues_enabled: false
6 changes: 5 additions & 1 deletion .github/workflows/lint-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,13 @@ name: Lint and tests
on:
workflow_dispatch:
pull_request:
paths:
- "netbox_diode_plugin/**"
push:
branches:
- "!release"
paths:
- "netbox_diode_plugin/**"

concurrency:
group: ${{ github.workflow }}
Expand Down Expand Up @@ -43,7 +47,7 @@ jobs:
run: |
make docker-compose-netbox-plugin-test-cover
- name: Coverage comment
uses: orgoro/[email protected]
uses: orgoro/coverage@3f13a558c5af7376496aa4848bf0224aead366ac # v3.2
with:
coverageFile: ./docker/coverage/report.xml
token: ${{ secrets.GITHUB_TOKEN }}
Expand Down
3 changes: 3 additions & 0 deletions .github/workflows/manifest-modified.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,9 @@ concurrency:
group: ${{ github.workflow }}
cancel-in-progress: false

permissions:
contents: read

jobs:
manifest-modified:
uses: netboxlabs/public-workflows/.github/workflows/reusable-plugin-manifest-modified.yml@release
31 changes: 19 additions & 12 deletions .github/workflows/release.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -9,11 +9,15 @@ concurrency:
cancel-in-progress: false

env:
GH_TOKEN: ${{ secrets.ORB_CI_GH_TOKEN }}
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
SEMANTIC_RELEASE_PACKAGE: ${{ github.repository }}
PYTHON_RUNTIME_VERSION: "3.11"
APP_NAME: diode-netbox-plugin
PYTHON_PACKAGE_NAME: netboxlabs-diode-netbox-plugin
PYTHON_PACKAGE_NAME: netboxlabs_diode_netbox_plugin

permissions:
id-token: write
contents: write

jobs:
get-python-package-name:
Expand All @@ -38,7 +42,7 @@ jobs:
with:
node-version: "lts/*"
- name: Write package.json
uses: DamianReeves/write-file-action@master
uses: DamianReeves/write-file-action@6929a9a6d1807689191dcc8bbe62b54d70a32b42 # v1.3
with:
path: ./package.json
write-mode: overwrite
Expand All @@ -52,7 +56,7 @@ jobs:
}
}
- name: Write .releaserc.json
uses: DamianReeves/write-file-action@master
uses: DamianReeves/write-file-action@6929a9a6d1807689191dcc8bbe62b54d70a32b42 # v1.3
with:
path: ./.releaserc.json
write-mode: overwrite
Expand Down Expand Up @@ -104,8 +108,10 @@ jobs:
run: echo "::set-output name=short-sha::${GITHUB_SHA::7}"
- name: Set release version
id: release-version
env:
NEXT_RELEASE_VERSION: ${{ steps.get-next-version.outputs.new-release-version }}
run: |
echo "::set-output name=release-version::`echo ${{ steps.get-next-version.outputs.new-release-version }} | sed 's/v//g'`"
echo "release-version=`echo $NEXT_RELEASE_VERSION | sed 's/v//g'`" >> $GITHUB_OUTPUT
outputs:
new-release-published: ${{ steps.get-next-version.outputs.new-release-published }}
new-release-version: ${{ steps.release-version.outputs.release-version }}
Expand All @@ -119,16 +125,17 @@ jobs:
if: needs.get-next-version.outputs.new-release-published == 'true'
steps:
- uses: actions/checkout@v4
- run: echo "The new release version is ${{ needs.get-next-version.outputs.new-release-version }} commit ${{ needs.get-next-version.outputs.short-sha }}"
- name: Confirm version
env:
NEXT_RELEASE_VERSION: ${{ needs.get-next-version.outputs.new-release-version }}
NEXT_RELEASE_SHORT_SHA: ${{ needs.get-next-version.outputs.short-sha }}
run: echo "The new release version is $NEXT_RELEASE_VERSION commit $NEXT_RELEASE_SHORT_SHA"

build:
name: Build
needs: [ get-python-package-name, get-next-version ]
runs-on: ubuntu-latest
timeout-minutes: 5
permissions:
id-token: write
contents: read
env:
BUILD_VERSION: ${{ needs.get-next-version.outputs.new-release-version }}
BUILD_TRACK: release
Expand Down Expand Up @@ -165,7 +172,7 @@ jobs:
retention-days: 30
if-no-files-found: error
- name: Publish release distributions to PyPI
uses: pypa/gh-action-pypi-publish@release/v1
uses: pypa/gh-action-pypi-publish@67339c736fd9354cd4f8cb0b744f2b82a74b5c70 # v.1.12.3
with:
packages-dir: dist

Expand All @@ -180,7 +187,7 @@ jobs:
with:
node-version: "lts/*"
- name: Write package.json
uses: DamianReeves/write-file-action@master
uses: DamianReeves/write-file-action@6929a9a6d1807689191dcc8bbe62b54d70a32b42 # v1.3
with:
path: ./package.json
write-mode: overwrite
Expand All @@ -194,7 +201,7 @@ jobs:
}
}
- name: Write .releaserc.json
uses: DamianReeves/write-file-action@master
uses: DamianReeves/write-file-action@6929a9a6d1807689191dcc8bbe62b54d70a32b42 # v1.3
with:
path: ./.releaserc.json
write-mode: overwrite
Expand Down
Loading