Skip to main content

Shared constants and utilities for OTS operations tools

Project description

ots-shared

Shared constants, taxonomy, and utility libraries for the OneTimeSecret operations tooling family (rots, lots, pots).

This package is not intended for end-user consumption. It is published to PyPI so the downstream operator-facing CLIs can pin a single, versioned source of truth for:

  • exit codes and error taxonomy
  • command history records
  • environment marker / scaffold helpers
  • SSH connection and executor protocols
  • Hetzner Cloud (hcloud) configuration, network, and server defaults

Install

pip install ots-shared

# with optional SSH dependencies (paramiko)
pip install "ots-shared[ssh]"

Layout

src/ots_shared/
  cli.py            # init sub-app exposed by downstream CLIs
  exit_codes.py     # canonical exit codes
  history.py        # command history serialization
  init.py           # environment scaffold helpers
  taxonomy.py       # error taxonomy
  hcloud/           # Hetzner Cloud config, networks, server defaults
  ssh/              # connection + executor protocols

Development

uv sync --extra dev --extra test --extra ssh
uv run pytest tests/
uv run ruff check src/
uv run pyright src/

Releasing

Tag a vX.Y.Z commit on main. The Release workflow builds the wheel and sdist, creates a GitHub release with auto-generated notes, and publishes to PyPI via Trusted Publisher. The PyPI environment in the workflow must match the project on pypi.org/p/ots-shared.

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

ots_shared-0.4.0.tar.gz (58.0 kB view details)

Uploaded Source

Built Distribution

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

ots_shared-0.4.0-py3-none-any.whl (36.1 kB view details)

Uploaded Python 3

File details

Details for the file ots_shared-0.4.0.tar.gz.

File metadata

  • Download URL: ots_shared-0.4.0.tar.gz
  • Upload date:
  • Size: 58.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for ots_shared-0.4.0.tar.gz
Algorithm Hash digest
SHA256 acf184727fb16b35d670295ca77536d9c0951f41aaae6bc0ac4a025a5ee0e1d4
MD5 7e3b7a74e2e47885522bb5aa1dbe1c39
BLAKE2b-256 583c5a8e0745ca9e27af42031ba4637a62f849e1a3803137749d91c104c5c591

See more details on using hashes here.

Provenance

The following attestation bundles were made for ots_shared-0.4.0.tar.gz:

Publisher: release.yml on onetimesecret/ots-shared

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

File details

Details for the file ots_shared-0.4.0-py3-none-any.whl.

File metadata

  • Download URL: ots_shared-0.4.0-py3-none-any.whl
  • Upload date:
  • Size: 36.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for ots_shared-0.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 ed8cfe67bb93e7593b628dac566e043733d565fc3c377c9666b12f8acf78e54b
MD5 587b65aeb3449558355e85ee80f7adf7
BLAKE2b-256 5c0444c1d62c0a5f9d4fea165e0303aae626078ab7f0ea78212e17cd5c26f7d9

See more details on using hashes here.

Provenance

The following attestation bundles were made for ots_shared-0.4.0-py3-none-any.whl:

Publisher: release.yml on onetimesecret/ots-shared

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