49 lines
1.5 KiB
Markdown
49 lines
1.5 KiB
Markdown
# Gitea Package Registry
|
|
|
|
Gitea package support is enabled by `helm/gitea-registry-values.yaml`.
|
|
That overlay is applied after the encrypted base values by
|
|
`make gitea-deploy` and enables both container packages and Python
|
|
packages.
|
|
|
|
## Python Packages
|
|
|
|
Publish Python wheels to the organization package endpoint:
|
|
|
|
```bash
|
|
python -m build
|
|
TWINE_USERNAME=<gitea-user> \
|
|
TWINE_PASSWORD=<package-token> \
|
|
python -m twine upload \
|
|
--repository-url https://gitea.coulomb.social/api/packages/coulomb/pypi \
|
|
dist/*
|
|
```
|
|
|
|
Install from the simple index:
|
|
|
|
```bash
|
|
pip install \
|
|
--extra-index-url https://<gitea-user>:<package-token>@gitea.coulomb.social/api/packages/coulomb/pypi/simple/ \
|
|
issue-core
|
|
```
|
|
|
|
For CI, store the token as a secret and inject it into the package index
|
|
URL at build time. Do not commit tokenized index URLs.
|
|
|
|
## issue-core Migration
|
|
|
|
The portable deployment path for `vergabe-teilnahme` is:
|
|
|
|
1. Release `issue-core` from its source repo as a wheel, for example
|
|
`0.2.0`.
|
|
2. Publish the wheel to the Gitea Python package registry.
|
|
3. Change `vergabe-teilnahme/pyproject.toml` from the local path
|
|
dependency to `issue-core>=0.2,<0.3`.
|
|
4. Remove the Docker BuildKit `--build-context issue-core=...`
|
|
requirement from image-build instructions.
|
|
5. Build the image on a clean runner that has no sibling `issue-core`
|
|
checkout.
|
|
|
|
Only the registry enablement lives in `railiance-apps`; the package
|
|
release and application dependency change belong to the `issue-core` and
|
|
`vergabe-teilnahme` repos.
|