···1+#!/bin/bash
2+3+# prints out current version from CI variables
4+5+set -euo pipefail
6+7+echoerr() { printf "%s\n" "$*" >&2; }
8+if [[ ${CI_COMMIT_TAG:-} != "" ]]; then
9+ echo "latest"
10+elif [[ ${CI_COMMIT_BRANCH:-} != "" ]]; then
11+ echo $CI_COMMIT_BRANCH | sed 's/\//-/'
12+else
13+ echoerr "CI_COMMIT_TAG and CI_COMMIT_BRANCH undefined, can't get branch"
14+ exit 1
15+fi
+12
util/release-files.sh
···000000000000
···1+#!/bin/bash
2+3+# gets all the files for a release version
4+5+set -euo pipefail
6+set -x
7+8+VERSION="$1"
9+10+id="$(curl --silent --fail "$CI_API_V4_URL/projects/$CI_PROJECT_ID/packages?package_version=$VERSION" | jq -r '.[0].id')"
11+files="$(curl --silent --fail "$CI_API_V4_URL/projects/$CI_PROJECT_ID/packages/$id/package_files")"
12+echo $files | jq -c '[.[] | {"name": .file_name, "url": ("'$CI_API_V4_URL'/projects/'$CI_PROJECT_ID'/packages/generic/latest/'$VERSION'/" + .file_name)}]'
+9
util/tools.go
···000000000
···1+//go:build tools
2+3+package main
4+5+import (
6+ _ "gitlab.com/gitlab-org/release-cli/cmd/release-cli"
7+)
8+9+// This file just exists so we can `go install` stuff with pinned versions later