Validate and activate project revisions through REST

Open
#31 0 comments 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 1 day

Nobody has claimed this yet.

Assessment

Difficulty
5/5
Estimated time
Over a week
Newbie friendliness
35/100
Issue type
Feature
Clarity
Mostly clear
Activity status
Active
Tech stack
python
Domain
api, backend

Research direction

Start by tracing the existing upload and entrypoint-selection operations, permissions, and NetBox background Jobs used by the project lifecycle. Map how REST requests can identify a revision and how validation, activation, rollback, status, and diagnostics should preserve the current active revision on failure; the work is done when the full CI deployment flow is supported without a new scheduler or service.

Written by the indexing model from the issue text.

Description

app: scripts complexity: medium status: backlog type: feature
Plugin Version

v0.0.1

Proposed functionality

Expose the remaining deployment lifecycle through REST: reconcile synchronized Data Source content, validate a candidate, and activate a chosen revision. Activating a retained valid revision should also support rollback.

Reuse the existing operations and permissions. Return a Job reference with status and diagnostics for long-running work, and document where Data Source synchronization fits without adding another source scheduler.

Allow validation without unintended activation. Requests should identify the intended revision explicitly, and a failed validation or activation must leave the current active revision in service.

Use case

A CI pipeline should be able to deploy source, wait for validation, and promote a selected revision without a browser session. Upload and entrypoint selection already exist, but do not complete that workflow.

External dependencies

Reuse NetBox background Jobs and the existing project lifecycle. No new package or service is expected.

Dominant language
Python
Stars
8
Forks
0
Avg merge
9h 34m
Merged PRs (30d)
32

Getting set up

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from netbox-community/netbox-scripts

All issues in netbox-community/netbox-scripts

Similar issues

More Python issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.