✨feature: Add release action
This commit is contained in:
@@ -0,0 +1,68 @@
|
|||||||
|
name: Release
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
tags:
|
||||||
|
- 'v[0-9]*.[0-9]*'
|
||||||
|
|
||||||
|
permissions:
|
||||||
|
contents: write
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
release:
|
||||||
|
name: Build & Release
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: Checkout
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
|
||||||
|
- name: Setup PHP
|
||||||
|
uses: shivammathur/setup-php@v2
|
||||||
|
with:
|
||||||
|
php-version: '8.2'
|
||||||
|
tools: composer
|
||||||
|
|
||||||
|
- name: Install Composer dependencies (production only)
|
||||||
|
run: composer install --no-dev --optimize-autoloader --prefer-dist
|
||||||
|
|
||||||
|
- name: Extract version
|
||||||
|
id: version
|
||||||
|
run: echo "version=${GITHUB_REF_NAME#v}" >> "$GITHUB_OUTPUT"
|
||||||
|
|
||||||
|
- name: Stage plugin files
|
||||||
|
run: |
|
||||||
|
mkdir -p /tmp/logo-soup
|
||||||
|
|
||||||
|
# Core files
|
||||||
|
cp logo-soup.php /tmp/logo-soup/
|
||||||
|
cp uninstall.php /tmp/logo-soup/
|
||||||
|
cp README.md /tmp/logo-soup/
|
||||||
|
cp readme.txt /tmp/logo-soup/
|
||||||
|
cp CHANGELOG.md /tmp/logo-soup/
|
||||||
|
cp LICENSE /tmp/logo-soup/
|
||||||
|
|
||||||
|
# Required directories
|
||||||
|
cp -r src /tmp/logo-soup/
|
||||||
|
cp -r blocks /tmp/logo-soup/
|
||||||
|
cp -r vendor /tmp/logo-soup/
|
||||||
|
|
||||||
|
# Optional directories (included when present)
|
||||||
|
[ -d assets ] && cp -r assets /tmp/logo-soup/ || true
|
||||||
|
[ -d languages ] && cp -r languages /tmp/logo-soup/ || true
|
||||||
|
|
||||||
|
- name: Create zip
|
||||||
|
id: zip
|
||||||
|
run: |
|
||||||
|
cd /tmp
|
||||||
|
zip -r "logo-soup-v${{ steps.version.outputs.version }}.zip" logo-soup/
|
||||||
|
echo "zip_path=/tmp/logo-soup-v${{ steps.version.outputs.version }}.zip" >> "$GITHUB_OUTPUT"
|
||||||
|
|
||||||
|
- name: Create GitHub Release
|
||||||
|
uses: softprops/action-gh-release@v2
|
||||||
|
with:
|
||||||
|
name: ${{ github.ref_name }}
|
||||||
|
body_path: CHANGELOG.md
|
||||||
|
files: ${{ steps.zip.outputs.zip_path }}
|
||||||
|
draft: false
|
||||||
|
prerelease: false
|
||||||
Reference in New Issue
Block a user