Skip to main content

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/* endpoints
  • usvc_seller data upload — thin Typer wrapper over client.upload(...)
  • unitysvc_sellers.builders — catalog-builder helpers (populate_from_iterator, render_template_file, etc.) for unitysvc-services-* data repositories

License

MIT

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

unitysvc_sellers-0.1.0.tar.gz (37.2 kB view details)

Uploaded Source

Built Distribution

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

unitysvc_sellers-0.1.0-py3-none-any.whl (34.9 kB view details)

Uploaded Python 3

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

Hashes for unitysvc_sellers-0.1.0.tar.gz
Algorithm Hash digest
SHA256 c1d63b8dada4ec4705e3acbaf1005754825684c921890e2975d539c43b090c7a
MD5 f826ab5e50cbcc8c6943bca6fb1a981c
BLAKE2b-256 88f447a9ae79824a07a5bf5229e5a7674e841420852a814c31ce97114879657e

See more details on using hashes here.

Provenance

The following attestation bundles were made for unitysvc_sellers-0.1.0.tar.gz:

Publisher: publish.yml on unitysvc/unitysvc-sellers

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

File details

Details for the file unitysvc_sellers-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for unitysvc_sellers-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 4cb8d294fa2abecfeecfe6d00b62d750b1e342acb7f51af0208bbc6cd8951cdb
MD5 7c029df44aeb753c06818927b514588e
BLAKE2b-256 6142da07c464f1dfff582522fd8310977a83acccf951900179977cc270499513

See more details on using hashes here.

Provenance

The following attestation bundles were made for unitysvc_sellers-0.1.0-py3-none-any.whl:

Publisher: publish.yml on unitysvc/unitysvc-sellers

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