Skip to content

Commit

Permalink
build-meta: support build of deployment tags (freifunk-darmstadt#94)
Browse files Browse the repository at this point in the history
When building for a special (automatic deployment) we want to enable the
autoupdater.

Signed-off-by: David Bauer <[email protected]>
(cherry picked from commit a424d74)
  • Loading branch information
blocktrron committed Aug 11, 2024
1 parent 19c12c9 commit e74ee93
Show file tree
Hide file tree
Showing 2 changed files with 19 additions and 0 deletions.
16 changes: 16 additions & 0 deletions .github/build-meta.sh
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,9 @@ DEPLOY="0"
# Don't release by default. Enable for tags.
CREATE_RELEASE="0"

# This is not the latest release by default.
LATEST_RELEASE="0"

# Target whitelist
if [ -n "$WORKFLOW_DISPATCH_TARGETS" ]; then
# Get targets from dispatch event
Expand All @@ -36,6 +39,8 @@ TESTING_TAG_RE="^[2-9].[0-9]-[0-9]{8}$"
CUSTOM_TESTING_TAG_RE="^[2-9].[0-9]-[0-9]{8}"
# Regex for release firmware tag
RELEASE_TAG_RE="^[2-9].[0-9].[0-9]$"
# Regex for release deployment firmware tag
RELEASE_DEPLOYMENT_TAG_RE="^[2-9].[0-9].[0-9]"

# Get Gluon version information
if [ -n "$WORKFLOW_DISPATCH_REPOSITORY" ] && [ -n "$WORKFLOW_DISPATCH_REFERENCE" ]; then
Expand Down Expand Up @@ -110,9 +115,19 @@ elif [ "$GITHUB_EVENT_NAME" = "push" ] && [ "$GITHUB_REF_TYPE" = "tag" ]; then
MANIFEST_BETA="1"
SIGN_MANIFEST="1"

LATEST_RELEASE="1"

RELEASE_VERSION="$GITHUB_REF_NAME"
BROKEN="0"
DEPLOY="1"
elif [[ "$GITHUB_REF_NAME" =~ $RELEASE_DEPLOYMENT_TAG_RE ]]; then
# Deployment release - autoupdater Branch is stable and enabled
AUTOUPDATER_ENABLED="1"
AUTOUPDATER_BRANCH="stable"

RELEASE_VERSION="$GITHUB_REF_NAME"
BROKEN="1"
DEPLOY="0"
else
# Unknown release - Disable autoupdater
AUTOUPDATER_ENABLED="0"
Expand Down Expand Up @@ -169,6 +184,7 @@ echo "manifest-testing=$MANIFEST_TESTING" >> "$BUILD_META_OUTPUT"
echo "sign-manifest=$SIGN_MANIFEST" >> "$BUILD_META_OUTPUT"
echo "deploy=$DEPLOY" >> "$BUILD_META_OUTPUT"
echo "create-release=$CREATE_RELEASE" >> "$BUILD_META_OUTPUT"
echo "latest-release=$LATEST_RELEASE" >> "$BUILD_META_OUTPUT"
echo "target-whitelist=$TARGET_WHITELIST" >> "$BUILD_META_OUTPUT"

# Copy over to GITHUB_OUTPUT
Expand Down
3 changes: 3 additions & 0 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,8 @@ jobs:
${{ steps.build-metadata.outputs.sign-manifest }}
create-release: >-
${{ steps.build-metadata.outputs.create-release }}
latest-release: >-
${{ steps.build-metadata.outputs.latest-release }}
deploy: >-
${{ steps.build-metadata.outputs.deploy }}
target-whitelist: >-
Expand Down Expand Up @@ -514,5 +516,6 @@ jobs:
uses: softprops/action-gh-release@v2
with:
body_path: gluon-gha-data/release-notes.md
make_latest: ${{ needs.build-meta.outputs.latest-release == '1' }}
files: |
gluon-gha-data/release-artifacts/*

0 comments on commit e74ee93

Please sign in to comment.