version bump 1.0.0-beta.1 #2
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Add build zip to GitHub releases. | |
# Version: 1.1.0 | |
# yaml-language-server: $schema=https://json.schemastore.org/github-workflow.json | |
name: Release | |
on: | |
push: | |
tags: | |
# Semver (https://semver.org/) release pattern. | |
- '[0-9]+.[0-9]+.[0-9]+*' | |
jobs: | |
# Build distribution release. | |
# | |
# Performs the following steps: | |
# - Checks out the repository. | |
# - Sets up PHP with Composer. | |
# - Logs debug information. | |
# - Get Composer Cache Directory. | |
# - Sets up Composer Caching.. | |
# - Logs debug information. | |
# - Install Composer dependencies with development dependencies. | |
# - Setup NodeJS. | |
# - Get NPM cache directory. | |
# - Sets up NPM Caching. | |
# - Install NPM dependencies. | |
# - Get release version. | |
# - Check for Alpha release. | |
# - Check for Beta release. | |
# - Check for Release Candidate release. | |
# - Logs debug information. | |
# - Build release: | |
# - Pre-release. | |
# - Stable. | |
# - Add package to GitHub releases. | |
dist: | |
name: "Build distribution release." | |
runs-on: ubuntu-latest | |
env: | |
release: stable | |
steps: | |
- name: "Checks out the repository." | |
uses: "actions/checkout@v4" | |
- name: "Sets up PHP with Composer." | |
uses: shivammathur/setup-php@v2 | |
with: | |
php-version: '8.1' | |
tools: composer | |
env: | |
COMPOSER_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
- name: "Get Composer Cache Directory." | |
id: composer-cache | |
run: | | |
echo "dir=$(composer config cache-files-dir)" >> $GITHUB_OUTPUT | |
- name: "Sets up Composer Caching." | |
uses: "actions/cache@v4" | |
with: | |
path: ${{ steps.composer-cache.outputs.dir }} | |
key: ${{ runner.os }}-php-composer-build-${{ hashFiles('**/composer.lock') }} | |
restore-keys: | | |
${{ runner.os }}-php-composer-build- | |
- name: "Logs debug information." | |
run: | | |
php --version | |
composer --version | |
- name: "Install Composer dependencies with development dependencies." | |
run: | | |
composer install --no-interaction --prefer-dist --no-scripts | |
- name: "Setup NodeJS." | |
uses: actions/setup-node@v4 | |
with: | |
node-version: '20' | |
- name: "Get NPM cache directory." | |
id: npm-cache-dir | |
run: | | |
echo "dir=$(npm config get cache)" >> $GITHUB_OUTPUT | |
- name: "Sets up NPM Caching." | |
uses: actions/cache@v4 | |
with: | |
path: ${{ steps.npm-cache-dir.outputs.dir }} | |
key: ${{ runner.os }}-node-npm-build-${{ hashFiles('**/package-lock.json') }} | |
restore-keys: | | |
${{ runner.os }}-node-npm-build- | |
- name: "Install NPM dependencies." | |
run: npm install | |
- name: "Get release version." | |
run: | | |
echo "release_tag=$(node -p -e "require('./package.json').version")" >> $GITHUB_ENV | |
- name: "Get release file base name." | |
run: | | |
echo "release_name=$(node -p -e "require('./package.json').name")" >> $GITHUB_ENV | |
- name: "Logs debug information." | |
run: | | |
node --version | |
npm --version | |
echo ${{ env.release_tag }} | |
echo ${{ env.release_status }} | |
- name: "Build release: Stable" | |
run: | | |
npm run release | |
- name: "Add package to GitHub releases." | |
uses: softprops/action-gh-release@v1 | |
with: | |
files: ./deploy/${{ env.release_name }}-${{env.release_tag }}.zip | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |