grocy/.github/workflows/release.yml
google-labs-jules[bot] ee0561e187 fix: Make release workflow tag trigger more flexible
This commit updates the GitHub Actions workflow for releases to be more flexible.

The workflow will now trigger on tags that follow either the 'v*.*.*' pattern or the '*.*.*' pattern. This allows the user to create releases using tags with or without a 'v' prefix (e.g., 'v1.2.3' or '1.2.3').
2025-08-15 14:19:05 +00:00

67 lines
1.7 KiB
YAML

name: Release
on:
push:
tags:
- 'v*.*.*'
- '*.*.*'
jobs:
release:
name: Create Release
runs-on: ubuntu-latest
permissions:
contents: write
steps:
- name: Checkout code
uses: actions/checkout@v3
- name: Set up PHP
uses: shivammathur/setup-php@v2
with:
php-version: '8.2'
extensions: mbstring, intl, gd, sqlite3, pdo_sqlite, zip, bcmath
coverage: none
- name: Get Composer Cache Directory
id: composer-cache
run: |
echo "dir=$(composer config cache-files-dir)" >> $GITHUB_OUTPUT
- uses: actions/cache@v3
with:
path: ${{ steps.composer-cache.outputs.dir }}
key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.lock') }}
restore-keys: |
${{ runner.os }}-composer-
- name: Install Composer dependencies
run: composer install --no-interaction --no-progress --no-suggest --no-dev --optimize-autoloader
- name: Set up Node.js
uses: actions/setup-node@v3
with:
node-version: '20'
cache: 'yarn'
- name: Install Node.js dependencies
run: yarn install --frozen-lockfile
- name: Get version
id: get_version
run: |
VERSION=$(grep -o '"version": "[^"]*"' version.json | grep -o '[^"]*$')
echo "VERSION=$VERSION" >> $GITHUB_ENV
- name: Build release package
run: |
chmod +x release.sh
./release.sh
- name: Create Release and Upload Asset
uses: softprops/action-gh-release@v1
with:
files: "grocy_${{ env.VERSION }}.zip"
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}