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.0.tar.gz (143.0 kB view details)

Uploaded Source

Built Distribution

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

File details

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

File metadata

File hashes

Hashes for charms_dwellir_blockchain_common-0.2.0.tar.gz
Algorithm Hash digest
SHA256 043ec2e50b5493adb24f1893dc4964ccdf1c26b7db84e58b814d387d2bae56c1
MD5 83bcca85dff52f7fa9194087a2384d4e
BLAKE2b-256 b80f6f3f4c2fa26449672a50ae6f345051edc730ab40d70cf7c0f821f23a2b6f

See more details on using hashes here.

Provenance

The following attestation bundles were made for charms_dwellir_blockchain_common-0.2.0.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.0-py3-none-any.whl.

File metadata

File hashes

Hashes for charms_dwellir_blockchain_common-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f30d17cd1b8defa7b19c930616b34cd465084c2097e154105a76758860188260
MD5 da1fbb2d8522fc930e776a3ee0810d33
BLAKE2b-256 4b56effc68736a16f5a4fe2afa62621dbad42e7b3dd0596cedb63d0a23cc1685

See more details on using hashes here.

Provenance

The following attestation bundles were made for charms_dwellir_blockchain_common-0.2.0-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