GitLab Hosting
May 19, 2026 ยท View on GitHub
Use GitLab when you want integrated CI runners and GitLab-hosted review (Merge Requests).
Topology
gitlab.example.com/yoka/pkgs.git recipe definitions
gitlab.example.com/yoka/index raw index branch or Package Registry
packages.example.com/elda optional static cache
Remote Registration
elda rmt add yoka-main=https://gitlab.example.com/yoka/index/-/raw/main/index-v1.json.zst \
--trust pinned \
--trusted-key ed25519:0011223344556677889900112233445566778899aabbccddeeff0011223344 \
--signature-url https://gitlab.example.com/yoka/index/-/raw/main/index-v1.json.zst.sig \
--metadata-url https://gitlab.example.com/yoka/index/-/raw/main/remote-metadata-v1.toml \
--packages-url https://gitlab.example.com/yoka/pkgs.git
Self-hosted GitLab: replace gitlab.example.com everywhere; set api_base to https://gitlab.example.com/api/v4.
Submission Config
[submission]
mode = "pr"
auto_open = true
auto_assign = false
auth = "token"
token_env = "ELDA_GITLAB_TOKEN"
api_base = "https://gitlab.com/api/v4"
remote_name = "origin"
base_branch = "main"
Payloads
The signed Elda index remains authoritative whether payloads live in:
- GitLab Releases
- GitLab Generic Package Registry
- Object storage (S3-compatible)
- A static front (nginx, Caddy)
Record the final HTTPS URLs in the index; clients do not care which GitLab feature served the upload.
CI Notes
- Project access token or
CI_JOB_TOKENfor publish jobs scoped to the index project. .gitlab-ci.ymlcan artifactindex-v1.json.zstand deploy to Pages or Registry onmain.