[CI] Forgejo Actions based release process (squash) version
use Actions environment variables in Makefile (#25319) (#25318) uses Actions variable to determine the version. But Forgejo builds happen in a container where they are not available. Do not use them. Also verify the version of the binary is as expected for sanity check.
This commit is contained in:
parent
cf2ec62740
commit
6decf111a1
|
@ -129,6 +129,14 @@ runs:
|
||||||
docker create --platform $platform --name forgejo-$arch ${{ steps.registry.outputs.host-port }}/${{ inputs.owner }}/${{ inputs.repository }}:${{ inputs.tag-version }}${{ inputs.suffix }}
|
docker create --platform $platform --name forgejo-$arch ${{ steps.registry.outputs.host-port }}/${{ inputs.owner }}/${{ inputs.repository }}:${{ inputs.tag-version }}${{ inputs.suffix }}
|
||||||
binary="${{ inputs.binary-name }}-${{ inputs.tag-version }}-linux"
|
binary="${{ inputs.binary-name }}-${{ inputs.tag-version }}-linux"
|
||||||
docker cp forgejo-$arch:${{ inputs.binary-path }} $binary-$arch
|
docker cp forgejo-$arch:${{ inputs.binary-path }} $binary-$arch
|
||||||
|
chmod +x $binary-$arch
|
||||||
|
# the displayed version is converted with - sometime changed into +, deal with it
|
||||||
|
pattern=$(echo "${{ inputs.tag-version }}" | tr - .)
|
||||||
|
if ! ./$binary-$arch --version | grep "$pattern" ; then
|
||||||
|
echo "ERROR: expected version pattern $pattern not found in the output of $binary-$arch --version"
|
||||||
|
./$binary-$arch --version
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
xz --keep -9 $binary-$arch
|
xz --keep -9 $binary-$arch
|
||||||
shasum -a 256 $binary-$arch > $binary-$arch.sha256
|
shasum -a 256 $binary-$arch > $binary-$arch.sha256
|
||||||
shasum -a 256 $binary-$arch.xz > $binary-$arch.xz.sha256
|
shasum -a 256 $binary-$arch.xz > $binary-$arch.xz.sha256
|
||||||
|
|
24
Makefile
24
Makefile
|
@ -79,28 +79,8 @@ endif
|
||||||
STORED_VERSION_FILE := VERSION
|
STORED_VERSION_FILE := VERSION
|
||||||
HUGO_VERSION ?= 0.111.3
|
HUGO_VERSION ?= 0.111.3
|
||||||
|
|
||||||
ifneq ($(GITHUB_REF_TYPE),branch)
|
GITEA_VERSION ?= $(shell git describe --tags --always | sed 's/-/+/' | sed 's/^v//')
|
||||||
VERSION ?= $(subst v,,$(GITHUB_REF_NAME))
|
VERSION = ${GITEA_VERSION}
|
||||||
GITEA_VERSION ?= $(GITHUB_REF_NAME)
|
|
||||||
else
|
|
||||||
ifneq ($(GITHUB_REF_NAME),)
|
|
||||||
VERSION ?= $(subst release/v,,$(GITHUB_REF_NAME))
|
|
||||||
else
|
|
||||||
VERSION ?= main
|
|
||||||
endif
|
|
||||||
|
|
||||||
STORED_VERSION=$(shell cat $(STORED_VERSION_FILE) 2>/dev/null)
|
|
||||||
ifneq ($(STORED_VERSION),)
|
|
||||||
GITEA_VERSION ?= $(STORED_VERSION)
|
|
||||||
else
|
|
||||||
GITEA_VERSION ?= $(shell git describe --tags --always | sed 's/-/+/' | sed 's/^v//')
|
|
||||||
endif
|
|
||||||
endif
|
|
||||||
|
|
||||||
# if version = "main" then update version to "nightly"
|
|
||||||
ifeq ($(VERSION),main)
|
|
||||||
VERSION := main-nightly
|
|
||||||
endif
|
|
||||||
|
|
||||||
LDFLAGS := $(LDFLAGS) -X "main.MakeVersion=$(MAKE_VERSION)" -X "main.Version=$(GITEA_VERSION)" -X "main.Tags=$(TAGS)"
|
LDFLAGS := $(LDFLAGS) -X "main.MakeVersion=$(MAKE_VERSION)" -X "main.Version=$(GITEA_VERSION)" -X "main.Tags=$(TAGS)"
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue