mirror of
https://github.com/coollabsio/coolify.git
synced 2026-11-06 13:10:37 -04:00
refactor(release): put a v in front of the upstream version in tags
- An upstream line is tagged v<upstream>-v<version> in git instead of <upstream>-v<version> - Coolify has no upstream lines, its git tags stay v<version>, and the v is stripped from the Docker image tags
This commit is contained in:
@@ -154,7 +154,7 @@ jobs:
|
||||
echo "tags=$tags" >> "$GITHUB_OUTPUT"
|
||||
jq -r 'to_entries[] | "\(.key) \(.value)"' <<< "$tags" | while read -r tag release; do
|
||||
for repository in ghcr.io/coollabsio/coolify docker.io/coollabsio/coolify; do
|
||||
docker buildx imagetools create --tag "$repository:$tag" "$repository:${release#v}"
|
||||
docker buildx imagetools create --tag "$repository:${tag#v}" "$repository:${release#v}"
|
||||
done
|
||||
done
|
||||
latest="$(jq -r '.latest // empty' <<< "$tags")"
|
||||
|
||||
+2
-2
@@ -78,7 +78,7 @@ read_versions() {
|
||||
|
||||
read_changes() {
|
||||
local tag range hash subject
|
||||
tag="$(git describe --tags --abbrev=0 --match "*v$stable" 2> /dev/null)" || true
|
||||
tag="$(git describe --tags --abbrev=0 --match "v${UPSTREAM:+*-v}$stable" 2> /dev/null)" || true
|
||||
range="${tag:+$tag..}HEAD"
|
||||
required="patch"
|
||||
if [ -n "$(git log -E --grep="$BREAKING_CHANGE" --format=%h "$range")" ]; then
|
||||
@@ -195,7 +195,7 @@ artifact_version() {
|
||||
}
|
||||
|
||||
release_tags() {
|
||||
git tag --list "$@" | grep -E "^${UPSTREAM:+[^-]+-}v[0-9]+\.[0-9]+\.[0-9]+(-(alpha|beta|rc)\.[0-9]+)?$" || true
|
||||
git tag --list "$@" | grep -E "^v${UPSTREAM:+[^-]+-v}[0-9]+\.[0-9]+\.[0-9]+(-(alpha|beta|rc)\.[0-9]+)?$" || true
|
||||
}
|
||||
|
||||
tag_versions() {
|
||||
|
||||
+8
-7
@@ -89,6 +89,7 @@ print_next_build() {
|
||||
else
|
||||
select_nightly_base
|
||||
fi
|
||||
[ -z "$UPSTREAM" ] || current_version="${current_version#*-v}"
|
||||
build="$base.$(date -u +%Y%m%d)"
|
||||
if [[ "$current_version" == "$build".* ]]; then
|
||||
build+=".$((${current_version##*.} + 1))"
|
||||
@@ -96,7 +97,7 @@ print_next_build() {
|
||||
build+=".1"
|
||||
fi
|
||||
upstream_lines <(git show "$revision:$UPSTREAM_FILE") | while read -r name upstream; do
|
||||
jq -nc --arg name "$name" --arg version "$upstream" --arg tag "${upstream:+$upstream-}v$build" '{$name, $version, $tag}'
|
||||
jq -nc --arg name "$name" --arg version "$upstream" --arg tag "v${upstream:+$upstream-v}$build" '{$name, $version, $tag}'
|
||||
done | jq -sc --arg branch "$branch" --arg revision "$revision" --arg image "$build" '{$branch, $revision, $image, lines: .}'
|
||||
exit 0
|
||||
}
|
||||
@@ -175,7 +176,7 @@ select_releases() {
|
||||
releases=
|
||||
[ "$publish" = true ] || return 0
|
||||
while read -r name sqlite; do
|
||||
tag="${sqlite:+$sqlite-}v$version"
|
||||
tag="v${sqlite:+$sqlite-v}$version"
|
||||
if grep -qxF "$tag" <<< "$tags"; then
|
||||
info "$tag is published"
|
||||
continue
|
||||
@@ -183,7 +184,7 @@ select_releases() {
|
||||
previous=
|
||||
while read -r older; do
|
||||
! newer "$sqlite" "$older" || previous="$older"
|
||||
done < <(with_version "$version" <<< "$tags" | sed -n 's/-v.*//p')
|
||||
done < <(with_version "$version" <<< "$tags" | sed -nE 's/^v(.*)-v.*/\1/p')
|
||||
added+="$tag"$'\n'
|
||||
releases+="$(jq -nc --arg name "$name" --arg version "$sqlite" --arg image "$version" --arg tag "$tag" --arg previous "$previous" \
|
||||
'{$name, $version, $image, $tag, $previous}')"$'\n'
|
||||
@@ -288,8 +289,8 @@ moved_tags() {
|
||||
moving_tags() {
|
||||
local tags releases latest preview base image sqlite prefix seen=" "
|
||||
tags="$(cat)"
|
||||
releases="$(sed -nE 's/^((.*)-)?v([^-]*)$/\3 \2/p' <<< "$tags" | sort -k1,1rV -k2,2rV)"
|
||||
latest="$(awk 'NR == 1 && NF { print ($2 == "" ? "" : $2 "-") "v" $1 }' <<< "$releases")"
|
||||
releases="$(sed -nE 's/^v((.*)-v)?([^-]*)$/\3 \2/p' <<< "$tags" | sort -k1,1rV -k2,2rV)"
|
||||
latest="$(awk 'NR == 1 && NF { print "v" ($2 == "" ? "" : $2 "-v") $1 }' <<< "$releases")"
|
||||
preview="$latest"
|
||||
while read -r base; do
|
||||
if newer "$base" "${latest##*v}"; then
|
||||
@@ -303,7 +304,7 @@ moving_tags() {
|
||||
while read -r image sqlite; do
|
||||
prefix="$sqlite"
|
||||
while [ -n "$prefix" ] && [[ "$seen" != *" $prefix "* ]]; do
|
||||
echo "$prefix $sqlite-v$image"
|
||||
echo "$prefix v$sqlite-v$image"
|
||||
seen+="$prefix "
|
||||
[[ "$prefix" == *.* ]] || break
|
||||
prefix="${prefix%.*}"
|
||||
@@ -312,7 +313,7 @@ moving_tags() {
|
||||
}
|
||||
|
||||
release_tags() {
|
||||
git tag --list "$@" | grep -E "^${UPSTREAM:+[^-]+-}v[0-9]+\.[0-9]+\.[0-9]+(-(alpha|beta|rc)\.[0-9]+)?$" || true
|
||||
git tag --list "$@" | grep -E "^v${UPSTREAM:+[^-]+-v}[0-9]+\.[0-9]+\.[0-9]+(-(alpha|beta|rc)\.[0-9]+)?$" || true
|
||||
}
|
||||
|
||||
tag_versions() {
|
||||
|
||||
Reference in New Issue
Block a user