chore: Sync MokoStandards 04.03.00 #105
295
.github/workflows/auto-release.yml
vendored
295
.github/workflows/auto-release.yml
vendored
@@ -1,7 +1,5 @@
|
|||||||
# Copyright (C) 2026 Moko Consulting <hello@mokoconsulting.tech>
|
# Copyright (C) 2026 Moko Consulting <hello@mokoconsulting.tech>
|
||||||
#
|
#
|
||||||
# This file is part of a Moko Consulting project.
|
|
||||||
#
|
|
||||||
# SPDX-License-Identifier: GPL-3.0-or-later
|
# SPDX-License-Identifier: GPL-3.0-or-later
|
||||||
#
|
#
|
||||||
# FILE INFORMATION
|
# FILE INFORMATION
|
||||||
@@ -9,12 +7,26 @@
|
|||||||
# INGROUP: MokoStandards.Release
|
# INGROUP: MokoStandards.Release
|
||||||
# REPO: https://github.com/mokoconsulting-tech/MokoStandards
|
# REPO: https://github.com/mokoconsulting-tech/MokoStandards
|
||||||
# PATH: /templates/workflows/shared/auto-release.yml
|
# PATH: /templates/workflows/shared/auto-release.yml
|
||||||
# VERSION: 04.01.00
|
# VERSION: 04.03.00
|
||||||
# BRIEF: Auto-create a GitHub Release on every push to main with version from README.md
|
# BRIEF: Unified build & release pipeline — version branch, platform version, badges, tag, release
|
||||||
# NOTE: Synced via bulk-repo-sync to .github/workflows/auto-release.yml in all governed repos.
|
#
|
||||||
# For Dolibarr (crm-module) repos, also updates $this->version in the module descriptor.
|
# ╔════════════════════════════════════════════════════════════════════════╗
|
||||||
|
# ║ BUILD & RELEASE PIPELINE ║
|
||||||
|
# ╠════════════════════════════════════════════════════════════════════════╣
|
||||||
|
# ║ ║
|
||||||
|
# ║ Triggers on push to main (skips bot commits + [skip ci]): ║
|
||||||
|
# ║ ║
|
||||||
|
# ║ 1. Read version from README.md ║
|
||||||
|
# ║ 2. Create version/XX.YY.ZZ branch (snapshot) ║
|
||||||
|
# ║ 3. Set platform version (Dolibarr $this->version, Joomla <version>) ║
|
||||||
|
# ║ 4. Update [VERSION: XX.YY.ZZ] badges in markdown files ║
|
||||||
|
# ║ 5. Write update.txt for Dolibarr module update checks ║
|
||||||
|
# ║ 6. Create git tag vXX.YY.ZZ ║
|
||||||
|
# ║ 7. Create GitHub Release with changelog notes ║
|
||||||
|
# ║ ║
|
||||||
|
# ╚════════════════════════════════════════════════════════════════════════╝
|
||||||
|
|
||||||
name: Auto Release
|
name: Build & Release
|
||||||
|
|
||||||
on:
|
on:
|
||||||
push:
|
push:
|
||||||
@@ -22,14 +34,16 @@ on:
|
|||||||
- main
|
- main
|
||||||
- master
|
- master
|
||||||
|
|
||||||
|
env:
|
||||||
|
FORCE_JAVASCRIPT_ACTIONS_TO_NODE24: true
|
||||||
|
|
||||||
permissions:
|
permissions:
|
||||||
contents: write
|
contents: write
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
release:
|
release:
|
||||||
name: Create Release
|
name: Build & Release Pipeline
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
# Skip bot commits (version sync, [skip ci]) to avoid infinite loops
|
|
||||||
if: >-
|
if: >-
|
||||||
!contains(github.event.head_commit.message, '[skip ci]') &&
|
!contains(github.event.head_commit.message, '[skip ci]') &&
|
||||||
github.actor != 'github-actions[bot]'
|
github.actor != 'github-actions[bot]'
|
||||||
@@ -41,123 +55,250 @@ jobs:
|
|||||||
token: ${{ secrets.GH_TOKEN || github.token }}
|
token: ${{ secrets.GH_TOKEN || github.token }}
|
||||||
fetch-depth: 0
|
fetch-depth: 0
|
||||||
|
|
||||||
- name: Extract version from README.md
|
- name: Setup MokoStandards tools
|
||||||
|
env:
|
||||||
|
GH_TOKEN: ${{ secrets.GH_TOKEN || github.token }}
|
||||||
|
COMPOSER_AUTH: '{"github-oauth":{"github.com":"${{ secrets.GH_TOKEN || github.token }}"}}'
|
||||||
|
run: |
|
||||||
|
git clone --depth 1 --branch version/04.03.00 --quiet \
|
||||||
|
"https://x-access-token:${GH_TOKEN}@github.com/mokoconsulting-tech/MokoStandards.git" \
|
||||||
|
/tmp/mokostandards
|
||||||
|
cd /tmp/mokostandards
|
||||||
|
composer install --no-dev --no-interaction --quiet
|
||||||
|
|
||||||
|
# ── STEP 1: Read version ───────────────────────────────────────────
|
||||||
|
- name: "Step 1: Read version from README.md"
|
||||||
id: version
|
id: version
|
||||||
run: |
|
run: |
|
||||||
VERSION=$(grep -oP '^\s*VERSION:\s*\K[0-9]{2}\.[0-9]{2}\.[0-9]{2}' README.md | head -1)
|
VERSION=$(php /tmp/mokostandards/api/cli/version_read.php --path . 2>/dev/null)
|
||||||
if [ -z "$VERSION" ]; then
|
if [ -z "$VERSION" ]; then
|
||||||
echo "⚠️ No VERSION found in README.md — skipping release"
|
echo "⏭️ No VERSION in README.md — skipping release"
|
||||||
echo "skip=true" >> "$GITHUB_OUTPUT"
|
echo "skip=true" >> "$GITHUB_OUTPUT"
|
||||||
exit 0
|
exit 0
|
||||||
fi
|
fi
|
||||||
echo "version=$VERSION" >> "$GITHUB_OUTPUT"
|
echo "version=$VERSION" >> "$GITHUB_OUTPUT"
|
||||||
echo "tag=v${VERSION}" >> "$GITHUB_OUTPUT"
|
echo "tag=v${VERSION}" >> "$GITHUB_OUTPUT"
|
||||||
|
echo "branch=version/${VERSION}" >> "$GITHUB_OUTPUT"
|
||||||
echo "skip=false" >> "$GITHUB_OUTPUT"
|
echo "skip=false" >> "$GITHUB_OUTPUT"
|
||||||
echo "✅ Version: $VERSION (tag: v${VERSION})"
|
echo "✅ Version: $VERSION"
|
||||||
|
|
||||||
- name: Check if tag already exists
|
- name: Check if already released
|
||||||
if: steps.version.outputs.skip != 'true'
|
if: steps.version.outputs.skip != 'true'
|
||||||
id: tag_check
|
id: check
|
||||||
run: |
|
run: |
|
||||||
TAG="${{ steps.version.outputs.tag }}"
|
TAG="${{ steps.version.outputs.tag }}"
|
||||||
if git rev-parse "$TAG" >/dev/null 2>&1; then
|
BRANCH="${{ steps.version.outputs.branch }}"
|
||||||
echo "ℹ️ Tag $TAG already exists — skipping release"
|
|
||||||
echo "exists=true" >> "$GITHUB_OUTPUT"
|
TAG_EXISTS=false
|
||||||
|
BRANCH_EXISTS=false
|
||||||
|
|
||||||
|
git rev-parse "$TAG" >/dev/null 2>&1 && TAG_EXISTS=true
|
||||||
|
git ls-remote --heads origin "$BRANCH" 2>/dev/null | grep -q "$BRANCH" && BRANCH_EXISTS=true
|
||||||
|
|
||||||
|
echo "tag_exists=$TAG_EXISTS" >> "$GITHUB_OUTPUT"
|
||||||
|
echo "branch_exists=$BRANCH_EXISTS" >> "$GITHUB_OUTPUT"
|
||||||
|
|
||||||
|
if [ "$TAG_EXISTS" = "true" ] && [ "$BRANCH_EXISTS" = "true" ]; then
|
||||||
|
echo "already_released=true" >> "$GITHUB_OUTPUT"
|
||||||
else
|
else
|
||||||
echo "exists=false" >> "$GITHUB_OUTPUT"
|
echo "already_released=false" >> "$GITHUB_OUTPUT"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
- name: Update Dolibarr module version
|
# ── SANITY CHECKS ────────────────────────────────────────────────────
|
||||||
|
- name: "Sanity: Platform-specific validation"
|
||||||
if: >-
|
if: >-
|
||||||
steps.version.outputs.skip != 'true' &&
|
steps.version.outputs.skip != 'true' &&
|
||||||
steps.tag_check.outputs.exists != 'true'
|
steps.check.outputs.already_released != 'true'
|
||||||
run: |
|
run: |
|
||||||
PLATFORM=""
|
VERSION="${{ steps.version.outputs.version }}"
|
||||||
if [ -f ".moko-standards" ]; then
|
PLATFORM=$(php /tmp/mokostandards/api/cli/platform_detect.php --path . 2>/dev/null)
|
||||||
PLATFORM=$(grep -E '^platform:' .moko-standards | sed 's/.*:[[:space:]]*//' | tr -d '"')
|
ERRORS=0
|
||||||
|
|
||||||
|
echo "## 🔍 Pre-Release Sanity Checks" >> $GITHUB_STEP_SUMMARY
|
||||||
|
echo "" >> $GITHUB_STEP_SUMMARY
|
||||||
|
echo "Platform: \`${PLATFORM}\`" >> $GITHUB_STEP_SUMMARY
|
||||||
|
echo "" >> $GITHUB_STEP_SUMMARY
|
||||||
|
|
||||||
|
# Common checks
|
||||||
|
if [ ! -f "LICENSE" ]; then
|
||||||
|
echo "❌ Missing LICENSE file" >> $GITHUB_STEP_SUMMARY
|
||||||
|
ERRORS=$((ERRORS+1))
|
||||||
|
else
|
||||||
|
echo "✅ LICENSE" >> $GITHUB_STEP_SUMMARY
|
||||||
fi
|
fi
|
||||||
|
|
||||||
VERSION="${{ steps.version.outputs.version }}"
|
if [ ! -d "src" ]; then
|
||||||
|
echo "⚠️ No src/ directory" >> $GITHUB_STEP_SUMMARY
|
||||||
|
else
|
||||||
|
echo "✅ src/ directory" >> $GITHUB_STEP_SUMMARY
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Dolibarr-specific checks
|
||||||
if [ "$PLATFORM" = "crm-module" ]; then
|
if [ "$PLATFORM" = "crm-module" ]; then
|
||||||
echo "📦 Dolibarr release — setting module version to '${VERSION}'"
|
MOD_FILE=$(find src -path "*/core/modules/mod*.class.php" -print -quit 2>/dev/null)
|
||||||
# Update $this->version in the module descriptor (core/modules/mod*.class.php)
|
if [ -z "$MOD_FILE" ]; then
|
||||||
find . -path "*/core/modules/mod*.class.php" -exec \
|
echo "❌ No module descriptor (src/core/modules/mod*.class.php)" >> $GITHUB_STEP_SUMMARY
|
||||||
sed -i "s/\(\$this->version\s*=\s*\)['\"][^'\"]*['\"]/\1'${VERSION}'/" {} + 2>/dev/null || true
|
ERRORS=$((ERRORS+1))
|
||||||
|
else
|
||||||
|
echo "✅ Module descriptor: \`${MOD_FILE}\`" >> $GITHUB_STEP_SUMMARY
|
||||||
|
|
||||||
|
# Check module number
|
||||||
|
NUMERO=$(grep -oP '\$this->numero\s*=\s*\K\d+' "$MOD_FILE" 2>/dev/null || echo "0")
|
||||||
|
if [ "$NUMERO" = "0" ] || [ -z "$NUMERO" ]; then
|
||||||
|
echo "❌ Module number (\$this->numero) is 0 or not set" >> $GITHUB_STEP_SUMMARY
|
||||||
|
ERRORS=$((ERRORS+1))
|
||||||
|
else
|
||||||
|
echo "✅ Module number: ${NUMERO}" >> $GITHUB_STEP_SUMMARY
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Check url_last_version exists
|
||||||
|
if grep -q 'url_last_version' "$MOD_FILE" 2>/dev/null; then
|
||||||
|
echo "✅ url_last_version is set" >> $GITHUB_STEP_SUMMARY
|
||||||
|
else
|
||||||
|
echo "⚠️ url_last_version not set — update checks won't work" >> $GITHUB_STEP_SUMMARY
|
||||||
|
fi
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# Joomla-specific checks
|
||||||
if [ "$PLATFORM" = "waas-component" ]; then
|
if [ "$PLATFORM" = "waas-component" ]; then
|
||||||
echo "📦 Joomla release — setting manifest version to '${VERSION}'"
|
MANIFEST=$(find . -maxdepth 2 -name "*.xml" -exec grep -l '<extension' {} \; 2>/dev/null | head -1)
|
||||||
# Update <version> tag in Joomla XML manifest files
|
if [ -z "$MANIFEST" ]; then
|
||||||
find . -maxdepth 2 -name "*.xml" -exec grep -l '<extension' {} \; 2>/dev/null | while read -r manifest; do
|
echo "❌ No Joomla XML manifest found" >> $GITHUB_STEP_SUMMARY
|
||||||
sed -i "s|<version>[^<]*</version>|<version>${VERSION}</version>|" "$manifest" 2>/dev/null || true
|
ERRORS=$((ERRORS+1))
|
||||||
done
|
else
|
||||||
|
echo "✅ Manifest: \`${MANIFEST}\`" >> $GITHUB_STEP_SUMMARY
|
||||||
|
|
||||||
|
# Check extension type
|
||||||
|
TYPE=$(grep -oP '<extension[^>]+type="\K[^"]+' "$MANIFEST" 2>/dev/null)
|
||||||
|
echo "✅ Extension type: ${TYPE:-unknown}" >> $GITHUB_STEP_SUMMARY
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Commit the version update if anything changed
|
echo "" >> $GITHUB_STEP_SUMMARY
|
||||||
if ! git diff --quiet; then
|
if [ "$ERRORS" -gt 0 ]; then
|
||||||
git config --local user.email "github-actions[bot]@users.noreply.github.com"
|
echo "**❌ ${ERRORS} error(s) — release may be incomplete**" >> $GITHUB_STEP_SUMMARY
|
||||||
git config --local user.name "github-actions[bot]"
|
else
|
||||||
git add -A
|
echo "**✅ All sanity checks passed**" >> $GITHUB_STEP_SUMMARY
|
||||||
git commit -m "chore(release): set version to ${VERSION} [skip ci]" \
|
|
||||||
--author="github-actions[bot] <github-actions[bot]@users.noreply.github.com>"
|
|
||||||
git push
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
- name: Extract changelog entry
|
# ── STEP 2: Create version branch ──────────────────────────────────
|
||||||
|
- name: "Step 2: Create version branch"
|
||||||
if: >-
|
if: >-
|
||||||
steps.version.outputs.skip != 'true' &&
|
steps.version.outputs.skip != 'true' &&
|
||||||
steps.tag_check.outputs.exists != 'true'
|
steps.check.outputs.branch_exists != 'true'
|
||||||
id: changelog
|
run: |
|
||||||
|
BRANCH="${{ steps.version.outputs.branch }}"
|
||||||
|
git checkout -b "$BRANCH"
|
||||||
|
git push origin "$BRANCH"
|
||||||
|
echo "🌿 Created branch: ${BRANCH}" >> $GITHUB_STEP_SUMMARY
|
||||||
|
|
||||||
|
# ── STEP 3: Set platform version ───────────────────────────────────
|
||||||
|
- name: "Step 3: Set platform version"
|
||||||
|
if: >-
|
||||||
|
steps.version.outputs.skip != 'true' &&
|
||||||
|
steps.check.outputs.already_released != 'true'
|
||||||
run: |
|
run: |
|
||||||
VERSION="${{ steps.version.outputs.version }}"
|
VERSION="${{ steps.version.outputs.version }}"
|
||||||
|
php /tmp/mokostandards/api/cli/version_set_platform.php \
|
||||||
|
--path . --version "$VERSION" --branch main
|
||||||
|
|
||||||
# Try to extract the section for this version from CHANGELOG.md
|
# ── STEP 4: Update version badges ──────────────────────────────────
|
||||||
NOTES=""
|
- name: "Step 4: Update version badges"
|
||||||
if [ -f "CHANGELOG.md" ]; then
|
|
||||||
# Extract text between this version's heading and the next heading
|
|
||||||
NOTES=$(awk "/^##.*${VERSION}/,/^## /" CHANGELOG.md | head -50 | sed '1d;$d')
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ -z "$NOTES" ]; then
|
|
||||||
NOTES="Release ${VERSION}"
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Write to file to avoid shell escaping issues
|
|
||||||
echo "$NOTES" > /tmp/release_notes.md
|
|
||||||
echo "✅ Release notes prepared"
|
|
||||||
|
|
||||||
- name: Create tag and release
|
|
||||||
if: >-
|
if: >-
|
||||||
steps.version.outputs.skip != 'true' &&
|
steps.version.outputs.skip != 'true' &&
|
||||||
steps.tag_check.outputs.exists != 'true'
|
steps.check.outputs.already_released != 'true'
|
||||||
|
run: |
|
||||||
|
VERSION="${{ steps.version.outputs.version }}"
|
||||||
|
find . -name "*.md" ! -path "./.git/*" ! -path "./vendor/*" | while read -r f; do
|
||||||
|
if grep -q '\[VERSION:' "$f" 2>/dev/null; then
|
||||||
|
sed -i "s/\[VERSION:[[:space:]]*[0-9]\{2\}\.[0-9]\{2\}\.[0-9]\{2\}\]/[VERSION: ${VERSION}]/" "$f"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
# ── STEP 5: Write update.txt (Dolibarr) ────────────────────────────
|
||||||
|
- name: "Step 5: Write update.txt"
|
||||||
|
if: >-
|
||||||
|
steps.version.outputs.skip != 'true' &&
|
||||||
|
steps.check.outputs.already_released != 'true'
|
||||||
|
run: |
|
||||||
|
PLATFORM=$(php /tmp/mokostandards/api/cli/platform_detect.php --path . 2>/dev/null)
|
||||||
|
if [ "$PLATFORM" = "crm-module" ]; then
|
||||||
|
VERSION="${{ steps.version.outputs.version }}"
|
||||||
|
printf '%s' "$VERSION" > update.txt
|
||||||
|
echo "📦 update.txt: ${VERSION}" >> $GITHUB_STEP_SUMMARY
|
||||||
|
fi
|
||||||
|
|
||||||
|
# ── Commit all changes ─────────────────────────────────────────────
|
||||||
|
- name: Commit release changes
|
||||||
|
if: >-
|
||||||
|
steps.version.outputs.skip != 'true' &&
|
||||||
|
steps.check.outputs.already_released != 'true'
|
||||||
|
run: |
|
||||||
|
if git diff --quiet && git diff --cached --quiet; then
|
||||||
|
echo "ℹ️ No changes to commit"
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
VERSION="${{ steps.version.outputs.version }}"
|
||||||
|
git config --local user.email "github-actions[bot]@users.noreply.github.com"
|
||||||
|
git config --local user.name "github-actions[bot]"
|
||||||
|
git add -A
|
||||||
|
git commit -m "chore(release): build ${VERSION} [skip ci]" \
|
||||||
|
--author="github-actions[bot] <github-actions[bot]@users.noreply.github.com>"
|
||||||
|
git push
|
||||||
|
|
||||||
|
# ── STEP 6: Create tag ─────────────────────────────────────────────
|
||||||
|
- name: "Step 6: Create git tag"
|
||||||
|
if: >-
|
||||||
|
steps.version.outputs.skip != 'true' &&
|
||||||
|
steps.check.outputs.tag_exists != 'true'
|
||||||
|
run: |
|
||||||
|
TAG="${{ steps.version.outputs.tag }}"
|
||||||
|
git tag "$TAG"
|
||||||
|
git push origin "$TAG"
|
||||||
|
echo "🏷️ Tag: ${TAG}" >> $GITHUB_STEP_SUMMARY
|
||||||
|
|
||||||
|
# ── STEP 7: Create GitHub Release ──────────────────────────────────
|
||||||
|
- name: "Step 7: Create GitHub Release"
|
||||||
|
if: >-
|
||||||
|
steps.version.outputs.skip != 'true' &&
|
||||||
|
steps.check.outputs.tag_exists != 'true'
|
||||||
env:
|
env:
|
||||||
GH_TOKEN: ${{ secrets.GH_TOKEN || github.token }}
|
GH_TOKEN: ${{ secrets.GH_TOKEN || github.token }}
|
||||||
run: |
|
run: |
|
||||||
TAG="${{ steps.version.outputs.tag }}"
|
|
||||||
VERSION="${{ steps.version.outputs.version }}"
|
VERSION="${{ steps.version.outputs.version }}"
|
||||||
|
TAG="${{ steps.version.outputs.tag }}"
|
||||||
|
BRANCH="${{ steps.version.outputs.branch }}"
|
||||||
|
|
||||||
# Create the tag
|
NOTES=$(php /tmp/mokostandards/api/cli/release_notes.php --path . --version "$VERSION" 2>/dev/null)
|
||||||
git tag "$TAG"
|
[ -z "$NOTES" ] && NOTES="Release ${VERSION}"
|
||||||
git push origin "$TAG"
|
echo "$NOTES" > /tmp/release_notes.md
|
||||||
|
|
||||||
# Create the release
|
|
||||||
gh release create "$TAG" \
|
gh release create "$TAG" \
|
||||||
--title "${VERSION}" \
|
--title "${VERSION}" \
|
||||||
--notes-file /tmp/release_notes.md \
|
--notes-file /tmp/release_notes.md \
|
||||||
--target main
|
--target "$BRANCH"
|
||||||
|
|
||||||
echo "🚀 Release ${VERSION} created: $TAG"
|
echo "🚀 Release ${VERSION}" >> $GITHUB_STEP_SUMMARY
|
||||||
|
|
||||||
- name: Summary
|
# ── Summary ────────────────────────────────────────────────────────
|
||||||
if: steps.version.outputs.skip != 'true'
|
- name: Pipeline Summary
|
||||||
|
if: always()
|
||||||
run: |
|
run: |
|
||||||
VERSION="${{ steps.version.outputs.version }}"
|
VERSION="${{ steps.version.outputs.version }}"
|
||||||
TAG="${{ steps.version.outputs.tag }}"
|
if [ "${{ steps.version.outputs.skip }}" = "true" ]; then
|
||||||
if [ "${{ steps.tag_check.outputs.exists }}" = "true" ]; then
|
echo "## ⏭️ Release Skipped" >> $GITHUB_STEP_SUMMARY
|
||||||
echo "## ℹ️ Release — ${VERSION}" >> $GITHUB_STEP_SUMMARY
|
echo "No VERSION in README.md" >> $GITHUB_STEP_SUMMARY
|
||||||
echo "Tag \`${TAG}\` already exists — no new release created." >> $GITHUB_STEP_SUMMARY
|
elif [ "${{ steps.check.outputs.already_released }}" = "true" ]; then
|
||||||
|
echo "## ℹ️ Already Released — ${VERSION}" >> $GITHUB_STEP_SUMMARY
|
||||||
else
|
else
|
||||||
echo "## 🚀 Release — ${VERSION}" >> $GITHUB_STEP_SUMMARY
|
echo "" >> $GITHUB_STEP_SUMMARY
|
||||||
echo "Created tag \`${TAG}\` and GitHub Release." >> $GITHUB_STEP_SUMMARY
|
echo "## ✅ Build & Release Complete" >> $GITHUB_STEP_SUMMARY
|
||||||
|
echo "" >> $GITHUB_STEP_SUMMARY
|
||||||
|
echo "| Step | Result |" >> $GITHUB_STEP_SUMMARY
|
||||||
|
echo "|------|--------|" >> $GITHUB_STEP_SUMMARY
|
||||||
|
echo "| Version | \`${VERSION}\` |" >> $GITHUB_STEP_SUMMARY
|
||||||
|
echo "| Branch | \`${{ steps.version.outputs.branch }}\` |" >> $GITHUB_STEP_SUMMARY
|
||||||
|
echo "| Tag | \`${{ steps.version.outputs.tag }}\` |" >> $GITHUB_STEP_SUMMARY
|
||||||
|
echo "| Release | [View](https://github.com/${{ github.repository }}/releases/tag/${{ steps.version.outputs.tag }}) |" >> $GITHUB_STEP_SUMMARY
|
||||||
fi
|
fi
|
||||||
|
|||||||
Reference in New Issue
Block a user