Skip to main content

datanivra-cli

The datanivra command line (DX-01): metadata and orchestration only.

datanivra login --url https://api.example.test --device --tenant acme-qa   # identity provider (RFC 8628)
datanivra login --url https://api.example.test --id-token-stdin --tenant acme-qa < id_token.txt  # CI
datanivra login --url https://api.example.test --token-stdin < token.txt
datanivra jobs list --state FAILED -o json
datanivra datasets request create request.json --idempotency-key "$CI_PIPELINE_ID"
  • src/datanivra_cli/app.py — argparse command tree (login, org, roles, users, agents [enroll], sources, discover [review], policies [lifecycle], environments, datasets [request, provision, rollback, revoke], jobs, certify, refresh, packs, billing, audit, capacity) and exit codes. Every auth='user' operation of API_ROUTES has a command — tests/test_cli_coverage.py runs each one against a recording fake and fails for a new operation without a command.
  • config.py — profiles in profiles.json (0600, atomic writes, refuses group/world-readable files, token never printed, only sent to the URL it was issued for).
  • device.py — OAuth 2.0 device authorization grant against the identity provider the control plane advertises (GET /v1/auth/oidc/config): https-only IdP URLs (http only to loopback), issuer check, slow_down/denial/expiry handling; the ID token is exchanged at POST /v1/auth/oidc/exchange and never printed. logout revokes the session server-side (POST /v1/auth/logout) before forgetting it.
  • Transport security: the control-plane URL must be https://; plain http:// is accepted only for a loopback host (localhost, 127.0.0.0/8, [::1]), so neither a stored nor a DATANIVRA_TOKEN session token is ever sent in clear text across a network. --insecure-http is the explicit opt-in for a trusted private network.
  • output.py — egress guard (only CONTROL_METADATA / AGGREGATE_METRIC / EVIDENCE_METADATA / SECRET_REFERENCE fields are printed), stable JSON, tables.

The CLI talks only to the control plane via datanivra_sdk; it imports no connectors, engine or agent code (enforced by tests/contract/test_import_boundaries.py and tests/test_cli_unit.py). User guide: apps/docs/content/cli.md.

Tests: uv run pytest packages/cli -q (unit + end-to-end against the composed control plane on embedded PostgreSQL).

Metadata

Release files for datanivra-cli 0.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for datanivra-cli 0.2.0
File Size Uploaded
datanivra_cli-0.2.0.tar.gz 70.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for datanivra-cli 0.2.0
File Interpreter ABI Platform
datanivra_cli-0.2.0-py3-none-any.whl Python 3 none any Details

Total release size: 147.0 kB

Release files / datanivra_cli-0.2.0.tar.gz

Download URL datanivra_cli-0.2.0.tar.gz
Size 70.7 kB
Tags Source
SHA-256 checksum
How to use checksums
4e5835421a213799f34a7421db170c40a52748b957417479548685eea7a40900
BLAKE2b-256 checksum
How to use checksums
16d460b678f1924fe7823e6c0489795d6f5aefcaa80b5b95d61111265ff6ae3b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / datanivra_cli-0.2.0-py3-none-any.whl

Download URL datanivra_cli-0.2.0-py3-none-any.whl
Size 76.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
4af3c033654ef15c284c30f7e03afcc0e8cbf713cc46e603d3da5ed31cd74a6c
BLAKE2b-256 checksum
How to use checksums
c04969dde5d21b5b67e3bfe850094048769575581b292189b7ca004616d1412f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Release history Release notifications | RSS feed

This release

0.2.0 This release

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page