-
Notifications
You must be signed in to change notification settings - Fork 2.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Support for a peer-review workflow #11942
Comments
Very well written and thought of FR. Much appreciated. The only concern we have is that this is in fact two features in one request : Notifications and Review functionalities. We could decouple them, or handle them together as the notifications system wouldn't serve much use in other models anyways. (Report/Script completion notifications maybe?) Marking this as |
As discussed in Slack, I'm more than happy to take a shot at implementing this. I'll work on a PoC. |
Great! Thanks for contributing 🥇 |
Can I ask what under review means for this moving forward? My company was very excited about this, and it appeared he was making progress before that PR was closed. It has also garnered the most likes out of the "under review" category (my company is only one of those). Thanks. |
@baldgeek you can find descriptions of all our issue labels here. The
It will be some time before we can dig into this FR as we're currently focusing on the upcoming v3.5 release. If you'd like to help us reduce the backlog of open issues in the meantime, I would greatly appreciate volunteers for any of the open issues marked |
For context @baldgeek - It was my mistake to open a PR here. What I meant to do was work on a PoC on my side to discuss the approach with some of the maintainers and take it from there. I'm glad to see that there's support for these type of features from the community, and once the maintainers prioritize it and flesh out a design, I'm happy to keep contributing as needed. |
Thank you for working on this feature, I am looking forward to it! |
I don't see any updates on here, is this something that could be thought about for 4.0 release? |
This use case has largely been addressed by the recently released netbox-branching plugin, and user notifications were implemented natively in NetBox v4.1 (see #15621). NetBox Labs is also developing a separate plugin to implement a formal review process for change requests. Please also note that NetBox's legacy built-in staged changes API is being deprecated in v4.2 (see #17472). |
NetBox version
v3.4.5
Feature type
Data model extension
Proposed functionality
Extend the staging mechanism to support a peer-review workflow.
The idea here is to provide users with a way of proposing changes, both programmatically and through the UI, and have another team member with more elevated permissions review, approve and apply them.
To support this, we'd need changes across different components and I'd suggest to implement them parts. Phases 1 through 6 are all backend work that can be done incrementally in different MRs. Phases 7 through 9 are all UI work that I believe can be released independently.
Phase 1 - Scaffolding for notifications
Phase 2 - Introduce the
ReviewRequest
model.ReviewRequest
. At a minimum this should be associated to aBranch
ReviewRequest
Phase 3 - Enhance
Branch
to identify stale changes.apply
function of theBranch
model to support applying a change on a stale model. To keep things simple, reject stale changes.Phase 4 - Extend the permissions model to support the creation of review requests by non power users.
Phase 5 - Extend the
ObjectChange
model to support review/reviewer information.Phase 6 - E2E test suite to go through the peer-review workflow programmatically
Phase 7 - Update the UI to support notifications.
Phase 8 - Update the UI to support review requests.
Phase 9 - Update the change log in the UI.
Use case
Netbox users with create/edit/delete permissions can independently change the state of an instance.
While convenient from a velocity point of view, the current model doesn't support organizations with strict change management processes that require all production changes to be peer-reviewed. This feature request aim to add that functionality to Netbox.
Database changes
New
Notifications
model (minimum fields required):New
ReviewRequest
model (minimum fields required):Update
ObjectChange
model (add optional field):External dependencies
None that I can think of.
The text was updated successfully, but these errors were encountered: