#gitlab #amazon-s3 #bucket #artifact #release #version #regex

bin+lib gitlab_s3_releaser

Tool to create GitLab releases from S3 bucket

4 releases

0.1.3 Mar 25, 2024
0.1.2 Mar 24, 2024
0.1.1 Mar 24, 2024
0.1.0 Mar 24, 2024

#1548 in Command line utilities

Download history 315/week @ 2024-03-24 85/week @ 2024-03-31 4/week @ 2024-04-07

404 downloads per month

MIT license

24KB
362 lines

GitLab S3 Releaser

Build

A tool to create GitLab releases from versioned files stored in S3 bucket.

Installation

cargo install gitlab-s3-releaser

Usage

Typical usage - publish some external CI-created artifacts to GitLab releases if an internal GitLab CI is not used.

The releaser scans objects in the S3 bucket with a regular expression and finds artifacts. The version of artifact is deduced from version in the regex. For all these artifacts, a binary package and a corresponding release are created for the specific project (parameter project).

Deduce S3 object template example with version named group, for example:

tarballs\/v(?<version>[0-9\.]+)[^\/]*\/.*

Invoke releaser

gitlab-s3-releaser --bucket s3-bucket.tld.org --package=release \
  --path-template "tarballs\/v(?<version>[0-9\.]+)[^\/]*\/.*" \
  --gitlab-host=gitlab.tld.org --project="dev/gitlab-project" 

To view more logs, specify RUST_LOG=info or debug env variable.

Dependencies

~42MB
~628K SLoC