Download and upload release assets for GitLab projects and groups
This project has been archived.
The maintainers of this project have marked this project as archived. No new releases are expected.
Project description
cal-gitlab-releases
Download and upload release assets for GitLab projects and groups.
Installation
pip install cal-gitlab-releases
Usage
# Download release assets from a group
cal-gitlab-releases download -u https://gitlab.com -p myorg/public -o ./releases
# Upload release assets to a target GitLab
cal-gitlab-releases upload -u https://gitlab.example.com -p target-group -i ./releases -t TOKEN
Commands
download
Download release assets from GitLab projects or groups. Supports version filtering, manifest-based incremental downloads, and parallel threads.
Use --flat to download all files into a single directory (useful for manual inspection). Note that flat output cannot be used with the upload command, which requires the project/tag directory structure.
Size limits
Use --max-file-size (-S) to skip individual files larger than a threshold, and --max-total-size (-T) to cap the total bytes downloaded in a single session. Both accept human-readable suffixes: K, M, G, T (e.g., 500M, 10G). Files skipped due to size limits are recorded in the manifest so they are not re-attempted on subsequent runs. Files skipped by the total size budget are not recorded, so the next run will pick them up.
upload
Upload release assets to GitLab. Reads the same directory structure produced by download, creates releases if they don't exist, and attaches asset files as release links.
Configuration
Settings can be provided via CLI args, environment variables, or a config file at ~/.config/cal-gitlab-releases/config.json:
{
"gitlab_url": "https://gitlab.example.com",
"token": "glpat-xxxxxxxxxxxx",
"base_group": "myorg",
"output": "./downloads",
"version_filter": "release",
"parallel": 32,
"max_file_size": "500M",
"max_total_size": "10G",
"project_exclude": ["private/tools/harproxy"]
}
Licence
MIT License — Copyright (c) 2026 Cyber Assessment Labs
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 cal_gitlab_releases-1.1.0-py3-none-any.whl.
File metadata
- Download URL: cal_gitlab_releases-1.1.0-py3-none-any.whl
- Upload date:
- Size: 43.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0db7457683d125a52e54733e479f9643e7772be8db0a2399d3e770b79f370f88
|
|
| MD5 |
d3964c9245af1d05473cd4bcc82114ca
|
|
| BLAKE2b-256 |
9225bab24d87bb9156313fec2843b226c3ed4dbc9b4b6406f815d03d64caa076
|