A custom GitLab workflow helper package.
Project description
gitlab-flow
Custom GitLab workflow helper package built with uv.
Local development
uv sync
uv run gitlab-flow --help
uv run pytest
uv build
Build artifacts are created under dist/.
Onboard a GitLab identity
gitlab-flow onboard creates a GitLab user, registers an Ed25519 SSH key,
issues an impersonation PAT, and prints the credentials as JSON.
GITLAB_URL=https://gitlab.example.com \
GITLAB_TOKEN=glpat-admin-token \
GITLAB_SSH_HOST=git.example.com \
GITLAB_SSH_PORT=2223 \
uv run gitlab-flow onboard doc-fixer
Optional environment variables:
GITLAB_EMAIL_DOMAIN=example.com
GITLAB_PAT_EXPIRES_AT=2099-12-31
If GITLAB_PAT_EXPIRES_AT is not set, gitlab-flow asks GitLab to create a
non-expiring token. If the instance requires token expiration dates, the command
fails with an explicit error instead of silently choosing a fallback date.
The JSON includes pat.token, ssh.private_key, and ssh.public_key.
Progress and errors are written to stderr.
Publish to GitLab Package Registry
The included .gitlab-ci.yml publishes the package when a Git tag is pushed.
git tag v0.1.0
git push origin v0.1.0
GitLab CI publishes to:
${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/pypi
using:
uv publish \
--publish-url "${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/pypi" \
--username gitlab-ci-token \
--password "${CI_JOB_TOKEN}" \
dist/*
Install from GitLab
Replace <project-id> and <token> with your GitLab project ID and a token
that can read the package registry.
uv add gitlab-flow \
--index-url "https://__token__:<token>@<gitlab-host>/api/v4/projects/<project-id>/packages/pypi/simple"
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 Distributions
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 gitlab_flow-0.1.1-py3-none-any.whl.
File metadata
- Download URL: gitlab_flow-0.1.1-py3-none-any.whl
- Upload date:
- Size: 5.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.30 {"installer":{"name":"uv","version":"0.9.30","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"12","id":"bookworm","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4a022c4cdb6a44c87a50277b69424907bc98a980354b0c309d2957783af4135c
|
|
| MD5 |
85b1555e4ba14a3191624a713646ca83
|
|
| BLAKE2b-256 |
1c2f5b698bba9dbd36802752f9c1788bd945011e104ee0b940f88da13006a7b4
|