DiamondLightSource / DiamondLightSource/blueapi

Mismatch between Helm and Python versioning schemes

Open
#411 23 comments 0 reactions 0 assignees View on GitHub
bug ci
Dominant language
Python
Stars
13
Forks
13
Avg merge
2d 11h
Merged PRs (30d)
25

Description

When creating, for example, an alpha release using a verion name compatible with the [Python Packaging User Guide](https://packaging.python.org/en/latest/specifications/version-specifiers/#version-specifiers) such as `0.4.1a1` the current CI for publishing the helm chart uses `${GITHUB_REF##*/}` as the appVersion.
This is rejected by helm/the repository with:
```

Run sed -i "$ a appVersion: ${GITHUB_REF##*/}" helm/blueapi/Chart.yaml
sed -i "$ a appVersion: ${GITHUB_REF##*/}" helm/blueapi/Chart.yaml
helm dependencies update helm/blueapi
helm package helm/blueapi --version ${GITHUB_REF##*/} -d /tmp/
helm push /tmp/blueapi-${GITHUB_REF##*/}.tgz oci://ghcr.io/diamondlightsource/charts
shell: /usr/bin/bash -e {0}
env:
GCR_IMAGE: ghcr.io/diamondlightsource/blueapi
HELM_VERSION: 3.10.3
Error: Invalid Semantic Version
Error: Process completed with exit code 1.
```

Helm uses Sem Ver 2.0.

There is a library which could help https://python-semver.readthedocs.io/en/latest/advanced/convert-pypi-to-semver.html but other solutions might be preferred or easier.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.