Skip to content

Latest commit

 

History

70 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 

Repository files navigation

TastyIgniter Reusable Workflows

A collection of reusable GitHub Actions workflows for TastyIgniter projects.

Available Workflows


Auto Merge Release

Automatically merges release PRs matching the pattern Release v4.x.x and creates a GitHub release after all checks pass.

Usage

name: Release Workflow

on:
  workflow_dispatch:
    inputs:
      release-branch:
        description: 'Target branch for release'
        required: false
        default: 'main'
        type: string

jobs:
  release:
    uses: tastyigniter/workflows/.github/workflows/auto-merge-release.yml@main
    with:
      release-branch: ${{ inputs.release-branch || 'main' }}
    secrets:
      ACCESS_TOKEN: ${{ secrets.ACCESS_TOKEN }}

Inputs

Input Description Required Default
release-branch Branch where release PRs should be merged No main

Secrets

Secret Description Required
ACCESS_TOKEN GitHub token with permissions to merge PRs and create releases. Workflow is skipped if unset. No

Build Assets

Builds frontend assets using Node.js and commits the compiled files.

Usage

name: Build Assets

on:
  push:
    branches:
      - main

jobs:
  build:
    uses: tastyigniter/workflows/.github/workflows/build-assets.yml@main
    with:
      commit-file-pattern: 'public'
    secrets:
      ACCESS_TOKEN: ${{ secrets.ACCESS_TOKEN }}

Inputs

Input Description Required Default
commit-file-pattern File pattern for committing compiled assets No public

Secrets

Secret Description Required
ACCESS_TOKEN GitHub token for committing changes No

PHP Code Check

Runs PHP linting, Rector refactoring checks, and static analysis.

Usage

name: PHP Code Check

on:
  push:
    branches:
      - main
  pull_request:

jobs:
  code-check:
    uses: tastyigniter/workflows/.github/workflows/php-code-check.yml@main
    with:
      php-version: '8.3'
    secrets:
      IGNITER_CARTE_KEY: ${{ secrets.IGNITER_CARTE_KEY }}

Inputs

Input Description Required Default
php-version PHP version to use Yes -
composer Composer command to run No update --no-interaction --no-progress

Secrets

Secret Description Required
IGNITER_CARTE_KEY Authentication key for TastyIgniter composer repository No

PHP Linting (Pint)

Runs Laravel Pint for PHP code style fixes and commits the changes.

Usage

name: PHP Linting

on:
  push:
    branches:
      - main
  pull_request:

jobs:
  lint:
    uses: tastyigniter/workflows/.github/workflows/php-lint.yml@main
    with:
      php-version: '8.3'
    secrets:
      IGNITER_CARTE_KEY: ${{ secrets.IGNITER_CARTE_KEY }}

Inputs

Input Description Required Default
php-version PHP version to use No 8.3
composer Composer command to run No install --no-interaction --no-progress --no-scripts
commit-file-pattern File pattern for committing linting fixes No ./

Secrets

Secret Description Required
IGNITER_CARTE_KEY Authentication key for TastyIgniter composer repository No

PHP Tests

Runs PHP tests with MySQL database support.

Usage

name: PHP Tests

on:
  push:
    branches:
      - main
  pull_request:

jobs:
  tests:
    uses: tastyigniter/workflows/.github/workflows/php-tests.yml@main
    with:
      php-version: '8.3'
    secrets:
      IGNITER_CARTE_KEY: ${{ secrets.IGNITER_CARTE_KEY }}

Inputs

Input Description Required Default
php-version PHP version to use Yes -
composer Composer command to run No update --no-interaction --no-progress
command Test command to run No composer test
mysql-image MySQL Docker image to use No mysql:8.0
db-name Database name No testbench
db-prefix Database table prefix No -

Secrets

Secret Description Required
IGNITER_CARTE_KEY Authentication key for TastyIgniter composer repository No

License

This project is licensed under the MIT License - see the LICENSE file for details.

About

Home of TastyIgniter Github Action Reusable Workflows

Resources

Security policy

Stars

1 star

Watchers

0 watching

Forks

Releases

Sponsor this project

Packages

Used by

Contributors