Skip to main content

Verified Installation of Posit - An extensible test suite for validating Posit Team deployments

Project description

PyPI CI Python

VIP - Verified Installation of Posit

An open-source, extensible test suite that validates Posit Team deployments are installed correctly and functioning properly.

VIP uses BDD-style tests (pytest-bdd + Playwright) to verify Connect, Workbench, and Package Manager. Results are compiled into an HTML report that can be published to a Connect server.

Documentation: https://posit-dev.github.io/vip/

Quick start

uv pip install posit-vip
uv run playwright install chromium
vip verify --connect-url https://connect.example.com --interactive-auth

With a configuration file:

cp vip.toml.example vip.toml     # edit with your deployment details
vip verify --config vip.toml

CLI commands

Command Description
vip verify Run verification tests against a Posit Team deployment
vip status Quick health check for each configured product
vip cleanup Delete VIP test credentials and resources
vip report Render the HTML report from test results (requires Quarto CLI)
vip app Launch the Shiny GUI for interactive test running
vip auth Authentication tools (e.g. mint Connect API keys)
vip cluster Cluster connection tools for Kubernetes deployments

Run vip --help or vip <command> --help for full usage details.

Shiny app (graphical test runner)

VIP includes a Shiny for Python app that lets you select test categories, run tests, and view the report — all from a browser. This is especially convenient inside a Posit Workbench session (RStudio or Positron) where the app opens in the Viewer pane.

uv run vip app

See the Shiny App guide for details.

Development

See docs/development.md for dev setup, linting, and formatting.

For the test architecture and four-layer design, see docs/test-architecture.md.

License

MIT — see LICENSE.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

posit_vip-0.15.0.tar.gz (585.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

posit_vip-0.15.0-py3-none-any.whl (157.5 kB view details)

Uploaded Python 3

File details

Details for the file posit_vip-0.15.0.tar.gz.

File metadata

  • Download URL: posit_vip-0.15.0.tar.gz
  • Upload date:
  • Size: 585.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for posit_vip-0.15.0.tar.gz
Algorithm Hash digest
SHA256 a145c5412621f74be9641da1744bf8b626267f9235f8d6b7e8fb62f66200be54
MD5 e41d9925fd3a25e8cbad53f20e539b33
BLAKE2b-256 07fde166faf5a69574ed588f8188f88c5238f90f74f8322eec69e32ccb9a606b

See more details on using hashes here.

Provenance

The following attestation bundles were made for posit_vip-0.15.0.tar.gz:

Publisher: publish.yml on posit-dev/vip

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file posit_vip-0.15.0-py3-none-any.whl.

File metadata

  • Download URL: posit_vip-0.15.0-py3-none-any.whl
  • Upload date:
  • Size: 157.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for posit_vip-0.15.0-py3-none-any.whl
Algorithm Hash digest
SHA256 2e6e64ff5ef9179617da489da0529225bda50daebaad55e61ec3713cac672451
MD5 6c62552f45ce0496e2736c216f1e4889
BLAKE2b-256 12ba3cd7363bc58d982998b50189c48e9c9cd4a65360d01bac7187d4dd1c6577

See more details on using hashes here.

Provenance

The following attestation bundles were made for posit_vip-0.15.0-py3-none-any.whl:

Publisher: publish.yml on posit-dev/vip

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page