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.1.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.

charms_dwellir_blockchain_common-0.1.0-py3-none-any.whl (152.4 kB view details)

Uploaded Python 3

File details

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

File metadata

File hashes

Hashes for charms_dwellir_blockchain_common-0.1.0.tar.gz
Algorithm Hash digest
SHA256 e59f5b824a03704a0732f48d07bb91d97905c7408a379677af19931c1e160543
MD5 499086fea7d15597c773fa5849e41d96
BLAKE2b-256 b29708ad7743401b3c09d5f1e147fd6182beab689cb8e6c9d63d83d4256eaa2f

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for charms_dwellir_blockchain_common-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b3dbe96de6cff27f9cdb9d8013b9f566e48e20281997d6ce00160d8f8a72de72
MD5 7f6abe467bf0aea48a87659a91e29db8
BLAKE2b-256 e742a3fc58f910c6df1759ac9e670b728d18a2bc005d20cd18b759b6e949ebd6

See more details on using hashes here.

Provenance

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