Skip to main content

Shared helpers for Dwellir blockchain charms

Project description

charms-dwellir-blockchain-common

Shared helpers for Dwellir blockchain charms. Provides a minimal charm-facing interface and a small set of utilities that charms can import to reduce duplicated code.

This package now exposes its stable utility surface at charms.dwellir.blockchain_common.v1.

What is included

  • charms.dwellir.blockchain_common.v1.process
  • charms.dwellir.blockchain_common.v1.systemd
  • charms.dwellir.blockchain_common.v1.users
  • charms.dwellir.blockchain_common.v1.packages
  • charms.dwellir.blockchain_common.v1.downloads
  • charms.dwellir.blockchain_common.v1.crypto
  • charms.dwellir.blockchain_common.v1.actions
  • charms.dwellir.blockchain_common.v1.config
  • charms.dwellir.blockchain_common.v1.version
  • charms.dwellir.blockchain_common.v1.jsonrpc
  • charms.dwellir.blockchain_common.v1.metadata
  • charms.dwellir.blockchain_common.v1.evm_chains.registry

Quick usage

Add the package to your charm's requirements.txt from PyPI.

charms-dwellir-blockchain-common>=0.0.1,<1

Optional fallback for private source installs:

git+ssh://git@github.com/dwellir-public/dwellir-blockchain-charms-common.git@main#egg=charms-dwellir-blockchain-common

Development

  • Run unit tests:
python -m pip install -e ".[test]"
pytest -q

Upload to TestPyPi for testing and more flexibility

Run:

make upload-testpypi TOKEN='pypi-<testpypi-token>' VERSION=<new-version>

This target temporarily sets version in setup.cfg for the TestPyPI upload and restores it automatically after the command finishes. For the full manual workflow, see this file.

Releases

  • Follow version bump criteria in RELEASE_VERSIONING_GUIDELINES.md.
  • Bump version in setup.cfg.
  • Trigger .github/workflows/release-pypi-and-github.yml manually from GitHub Actions.
  • Approve the pypi environment when prompted.
  • On success, the workflow also creates a GitHub release/tag v<version> and uploads dist/* artifacts.

Notes:

  • There is a pypi environment configured in repository that restricts publishing to PyPi from other branches than the default branch (main).

PyPI Trusted Publisher Setup

In PyPI project settings, add a GitHub Actions publisher with:

  • Owner: dwellir-public
  • Repository: dwellir-blockchain-charms-common
  • Workflow filename: release-pypi-and-github.yml
  • Environment: pypi

Notes:

  • These values must match .github/workflows/release-pypi-and-github.yml exactly.
  • If the project does not exist on PyPI yet, create a pending publisher first, then run the manual release workflow.

GitHub Branch Protection

There are branch protection rules for the default branch (main) that prevents from force pushing or merging without a PR.

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

charms_dwellir_blockchain_common-0.2.1.tar.gz (143.5 kB view details)

Uploaded Source

Built Distribution

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

charms_dwellir_blockchain_common-0.2.1-py3-none-any.whl (152.9 kB view details)

Uploaded Python 3

File details

Details for the file charms_dwellir_blockchain_common-0.2.1.tar.gz.

File metadata

File hashes

Hashes for charms_dwellir_blockchain_common-0.2.1.tar.gz
Algorithm Hash digest
SHA256 6c58d297c3203d7be284f90c6b771d7e72bd70062507e1b4e4c652d959998b63
MD5 d7a44ae314dab64f2112240fd9f1295b
BLAKE2b-256 7a221868fe1b4bab5cd0d1a7ea9088a5bb93f7dcfdb3e2c6bd89f533b02429dc

See more details on using hashes here.

Provenance

The following attestation bundles were made for charms_dwellir_blockchain_common-0.2.1.tar.gz:

Publisher: release-pypi-and-github.yml on dwellir-public/dwellir-blockchain-charms-common

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

File details

Details for the file charms_dwellir_blockchain_common-0.2.1-py3-none-any.whl.

File metadata

File hashes

Hashes for charms_dwellir_blockchain_common-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 9a3f254fb443abea335936a6c9f785e0aec7db946af4a7f67a42e4185cfa2172
MD5 5616a2a94227c1841d3763d74fc79ea7
BLAKE2b-256 b894e9d79f31a881ba0d9a43bc7a61ef3b97f545b0fcb51cefb124e72b68d3e2

See more details on using hashes here.

Provenance

The following attestation bundles were made for charms_dwellir_blockchain_common-0.2.1-py3-none-any.whl:

Publisher: release-pypi-and-github.yml on dwellir-public/dwellir-blockchain-charms-common

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