gitlab_s3_releaser

Crates.iogitlab_s3_releaser
lib.rsgitlab_s3_releaser
version0.1.5
sourcesrc
created_at2024-03-24 11:18:33.842364
updated_at2024-06-07 18:30:33.050005
description Tool to create GitLab releases from S3 bucket
homepage
repositoryhttps://github.com/theirix/gitlab-s3-releaser
max_upload_size
id1184306
size90,989
theirix (theirix)

documentation

README

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.

AWS profile and endpoint could be specified using environment variables AWS_PROFILE and AWS_ENDPOINT_URL.

Commit count: 23

cargo fmt