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.17.0.tar.gz (587.9 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.17.0-py3-none-any.whl (162.8 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: posit_vip-0.17.0.tar.gz
  • Upload date:
  • Size: 587.9 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.17.0.tar.gz
Algorithm Hash digest
SHA256 131f94fd5524b09dd999bea3b2c7f91e778f0f912df484094bd205c6511eb1cb
MD5 1bf711f63f49f4e70884df5ca7037142
BLAKE2b-256 e3256c7291541b12e5b2f30c1b014b377bd4eb93962c89581eaaa63d16f4105d

See more details on using hashes here.

Provenance

The following attestation bundles were made for posit_vip-0.17.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.17.0-py3-none-any.whl.

File metadata

  • Download URL: posit_vip-0.17.0-py3-none-any.whl
  • Upload date:
  • Size: 162.8 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.17.0-py3-none-any.whl
Algorithm Hash digest
SHA256 47827e6aa72153d0fcad53b2b1e136e22cc5b21a2fe5526db072055d7e9b8ef7
MD5 7fd8ba5297406ef7db058ecd8908b7ae
BLAKE2b-256 d028d2cb2950b59c288bb220f861574e543c97c8d0d78b47e3273a7fed86ef96

See more details on using hashes here.

Provenance

The following attestation bundles were made for posit_vip-0.17.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