Seller-facing tools for UnitySVC: local catalog organization CLI (usvc_seller)
Project description
unitysvc-sellers
Seller-facing tools for UnitySVC. This package
currently provides the usvc_seller CLI for local seller catalog
organization — no network calls, no UnitySVC API interactions.
The catalog HTTP SDK (unitysvc_sellers.client, upload, publish, etc.)
is not yet implemented; see the roadmap below.
Install
pip install unitysvc-sellers
This pulls in unitysvc-core
for the shared data models, JSON schemas, and generic file validator,
plus typer/rich for the CLI.
CLI: usvc_seller
usvc_seller data validate [DATA_DIR] # schema + catalog-layout validation
usvc_seller data format [DATA_DIR] # normalize JSON/TOML/MD files
usvc_seller data populate [DATA_DIR] # run provider populate scripts
usvc_seller data show provider NAME # show a provider record
usvc_seller data show offering NAME # " offering
usvc_seller data show listing NAME # " listing
usvc_seller data show service NAME # " service-definition
usvc_seller data list providers [DATA_DIR] # list files of each kind
usvc_seller data list sellers [DATA_DIR]
usvc_seller data list offerings [DATA_DIR]
usvc_seller data list listings [DATA_DIR]
usvc_seller data list services [DATA_DIR]
usvc_seller data list-tests # list code-example / connectivity tests
usvc_seller data run-tests # run tests locally
usvc_seller data show-test SERVICE # show last test result
All commands operate on the seller's local catalog directory. No
usvc_seller data upload yet — that arrives with the HTTP SDK.
Layout
src/unitysvc_sellers/
├── cli.py # entry point — registers data subcommands
├── data.py # `usvc_seller data *` command group
├── validator.py # seller DataValidator (subclass of unitysvc_core.validator.DataValidator)
├── format_data.py # `usvc_seller data format`
├── populate.py # `usvc_seller data populate`
├── example.py # `list-tests` / `run-tests` / `show-test`
├── list.py # `usvc_seller data list *`
├── output.py # shared Rich output helpers
└── utils.py # seller-only helpers (resolve_provider_name,
# resolve_service_name_for_listing,
# convert_convenience_fields_to_documents,
# render_template_file, execute_script_content,
# determine_interpreter)
# Generic helpers re-exported from unitysvc_core.utils.
The seller DataValidator adds catalog-layout checks to the core
per-file validator: provider-status warnings, the invariant that each
service directory has exactly one offering_v1 file, and the invariant
that listings only live alongside an offering.
History
This package was split out of
unitysvc-services
(see issue #99).
Shared types + schemas moved to
unitysvc-core; seller CLI
and seller-specific catalog utilities live here.
Roadmap
unitysvc_sellers.client/AsyncClient— HTTP SDK against/sellers/*endpointsusvc_seller data upload— thin Typer wrapper overclient.upload(...)unitysvc_sellers.builders— catalog-builder helpers (populate_from_iterator,render_template_file, etc.) forunitysvc-services-*data repositories
License
MIT
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file unitysvc_sellers-0.1.0.tar.gz.
File metadata
- Download URL: unitysvc_sellers-0.1.0.tar.gz
- Upload date:
- Size: 37.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c1d63b8dada4ec4705e3acbaf1005754825684c921890e2975d539c43b090c7a
|
|
| MD5 |
f826ab5e50cbcc8c6943bca6fb1a981c
|
|
| BLAKE2b-256 |
88f447a9ae79824a07a5bf5229e5a7674e841420852a814c31ce97114879657e
|
Provenance
The following attestation bundles were made for unitysvc_sellers-0.1.0.tar.gz:
Publisher:
publish.yml on unitysvc/unitysvc-sellers
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
unitysvc_sellers-0.1.0.tar.gz -
Subject digest:
c1d63b8dada4ec4705e3acbaf1005754825684c921890e2975d539c43b090c7a - Sigstore transparency entry: 1274290687
- Sigstore integration time:
-
Permalink:
unitysvc/unitysvc-sellers@894bb8eff80d9b60140a646ddb98c10a0f893e1b -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/unitysvc
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@894bb8eff80d9b60140a646ddb98c10a0f893e1b -
Trigger Event:
release
-
Statement type:
File details
Details for the file unitysvc_sellers-0.1.0-py3-none-any.whl.
File metadata
- Download URL: unitysvc_sellers-0.1.0-py3-none-any.whl
- Upload date:
- Size: 34.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4cb8d294fa2abecfeecfe6d00b62d750b1e342acb7f51af0208bbc6cd8951cdb
|
|
| MD5 |
7c029df44aeb753c06818927b514588e
|
|
| BLAKE2b-256 |
6142da07c464f1dfff582522fd8310977a83acccf951900179977cc270499513
|
Provenance
The following attestation bundles were made for unitysvc_sellers-0.1.0-py3-none-any.whl:
Publisher:
publish.yml on unitysvc/unitysvc-sellers
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
unitysvc_sellers-0.1.0-py3-none-any.whl -
Subject digest:
4cb8d294fa2abecfeecfe6d00b62d750b1e342acb7f51af0208bbc6cd8951cdb - Sigstore transparency entry: 1274290802
- Sigstore integration time:
-
Permalink:
unitysvc/unitysvc-sellers@894bb8eff80d9b60140a646ddb98c10a0f893e1b -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/unitysvc
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@894bb8eff80d9b60140a646ddb98c10a0f893e1b -
Trigger Event:
release
-
Statement type: