Temporary compatibility wrapper to use ST124 shorthand notation with older versions of charmcraft 3 that don't support ST124
Project description
charmcraftst124
[!WARNING] This project will be deprecated when ST124 - Multi-base platforms in craft tools is implemented in charmcraft.
Pack multi-base charms (that include base Ubuntu 24.04) with a single charmcraft.yaml and git branch using the upcoming ST124 "shorthand notation" charmcraft.yaml syntax
Installation
Install pipx: https://pipx.pypa.io/stable/installation/
pipx install charmcraftst124
Usage
Step 1: Update charmcraft.yaml to supported syntax
Only ST124 "shorthand notation" syntax is supported
Example
platforms:
ubuntu@22.04:amd64:
ubuntu@22.04:arm64:
ubuntu@24.04:amd64:
ubuntu@24.04:arm64:
Under the platforms key, build-on and build-for syntax are not supported
The base and bases keys are not supported
Step 2: Pack platform
charmcraftst124 pack --platform ubuntu@22.04:amd64
See charmcraftst124 pack --help for more information
To pack multiple platforms, run charmcraftst124 pack once for each platform
Why is only "shorthand notation" syntax supported?
"Shorthand notation" is used when build-on is identical to build-for. (For example, "ubuntu@22.04:amd64" means build on Ubuntu 22.04 amd64 and build for Ubuntu 22.04 amd64.)
For charms that depend (directly or indirectly) on Python packages with C extensions (e.g. pyyaml), charmcraft will build wheels where the C extensions only work on build-on.
For example, if a charm is built with
platforms:
foo:
build-on: ubuntu@22.04:amd64
build-for:
- ubuntu@22.04:amd64
- ubuntu@22.04:arm64
the wheels in the *.charm file will contain C extensions that only work on amd64, not arm64.
The vast majority of charms have at least one Python dependency with C extensions, so the vast majority of charms should use "shorthand notation".
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file charmcraftst124-0.1.7.tar.gz.
File metadata
- Download URL: charmcraftst124-0.1.7.tar.gz
- Upload date:
- Size: 5.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/5.1.1 CPython/3.12.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
43208888b9feb25f238cb4284a85f141c46d809b35c1a9cacaa9ce9f94b6ab59
|
|
| MD5 |
1acb9591db641759048605e66cd11cbf
|
|
| BLAKE2b-256 |
c9e097b499e4f6e944d6ccc22993625e53be610ffdccb43e70330b8fa26a9201
|
Provenance
The following attestation bundles were made for charmcraftst124-0.1.7.tar.gz:
Publisher:
publish.yaml on canonical/charmcraftst124
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
charmcraftst124-0.1.7.tar.gz -
Subject digest:
43208888b9feb25f238cb4284a85f141c46d809b35c1a9cacaa9ce9f94b6ab59 - Sigstore transparency entry: 154152593
- Sigstore integration time:
-
Permalink:
canonical/charmcraftst124@9912a419f43791f1dee20ade1559386d6712a05c -
Branch / Tag:
refs/heads/main - Owner: https://github.com/canonical
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yaml@9912a419f43791f1dee20ade1559386d6712a05c -
Trigger Event:
workflow_dispatch
-
Statement type:
File details
Details for the file charmcraftst124-0.1.7-py3-none-any.whl.
File metadata
- Download URL: charmcraftst124-0.1.7-py3-none-any.whl
- Upload date:
- Size: 5.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/5.1.1 CPython/3.12.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9a6586e7106b723c58edb03a0fb0b217d3c9a9747cf1d6c118565af60e161633
|
|
| MD5 |
de094845687642b43b199a294ea40ce0
|
|
| BLAKE2b-256 |
206cbe9c211bee6082825a95a138f74d439e822ba49d709d13b6ab9c4dfd4aa0
|
Provenance
The following attestation bundles were made for charmcraftst124-0.1.7-py3-none-any.whl:
Publisher:
publish.yaml on canonical/charmcraftst124
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
charmcraftst124-0.1.7-py3-none-any.whl -
Subject digest:
9a6586e7106b723c58edb03a0fb0b217d3c9a9747cf1d6c118565af60e161633 - Sigstore transparency entry: 154152595
- Sigstore integration time:
-
Permalink:
canonical/charmcraftst124@9912a419f43791f1dee20ade1559386d6712a05c -
Branch / Tag:
refs/heads/main - Owner: https://github.com/canonical
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yaml@9912a419f43791f1dee20ade1559386d6712a05c -
Trigger Event:
workflow_dispatch
-
Statement type: