A small Streamlit app that walks through Snyk Universal Broker setup: session initialization against the Snyk REST API, tenant selection, connections, credentials, org integration, and a generated docker run command. The HTTP client lives in ub_client.py (UniversalBrokerClient).
- Python 3.10+ (3.10 is what this repo was developed with)
- A Snyk personal API token with access to Universal Broker (the in-app help notes that service accounts are not supported for app install)
- Network access to your chosen Snyk API region (see Snyk regional hosting)
-
Clone (after you create the GitHub repo and push, or clone your existing remote):
git clone https://github.com/joeshope/ub-wizard cd ub_gui -
Create and activate a virtual environment
python3 -m venv .venv source .venv/bin/activate # Windows: .venv\Scripts\activate
-
Install dependencies
pip install -r requirements.txt
-
Run the app
streamlit run app.py
-
Open the URL Streamlit prints (usually http://localhost:8501).
- Expand Start / Resume.
- Choose Snyk region or a custom REST API base URL (and broker server URL if custom).
- Paste your API token, optionally set SSL options, then click Initialize session.
- If you did not enter a Tenant ID, pick a tenant from the list when it appears.
- Use the rest of the wizard for installs, deployments, connections, credentials, and Generate Docker Command as needed.
Optional fields (install ID, deployment ID, connection ID, client ID/secret) are for resuming an existing setup.
