/laravel-phpinsights-action

Run PHP Insights in Laravel in Github Actions

Primary LanguageDockerfileMIT LicenseMIT

laravel-phpinsights-action

This GitHub Action executes Laravel Artisan Command of phpinsights. The output of the Insights Command can be viewed in the Actions log.

You can optionally define minimum values for Insights categories. If the value falls below your given threshold, the run fails.

Usage

This Action doesn't install composer dependencies on it's own and doesn't contain a phpinsights binary.

It's therefore required that phpinsights is set as a dependency in your project and that another Action installs the composer dependencies.

An example Workflow can look like this.

name: PHP Insights

on: push

jobs:
  phpinsights:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v1

    - uses: MilesChou/composer-action@master
      with:
        args: install -q --no-ansi --no-interaction --no-scripts --no-suggest --no-progress --prefer-dist

    - uses: stefanzweifel/laravel-phpinsights-action@v1.1.1

Arguments

You can pass any valid phpinsights argument to the Action. In this example, all issues are always displayed and a minimum value of 80 has to be achieved in all categories.

name: PHP Insights

on: push

jobs:
  phpinsights:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v1

    - uses: MilesChou/composer-action@master
      with:
        args: install -q --no-ansi --no-interaction --no-scripts --no-suggest --no-progress --prefer-dist

    - uses: stefanzweifel/laravel-phpinsights-action@v1.1.1
      with:
        args: -v --min-quality=80 --min-complexity=80 --min-architecture=80 --min-style=80 --disable-security-check

Versioning

We use SemVer for versioning. For the versions available, see the tags on this repository.

License

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