From 8efa8ca420690688dce323831c3c14c16832335c Mon Sep 17 00:00:00 2001 From: Moe Mizrak Date: Tue, 25 Jun 2024 18:22:49 +0300 Subject: [PATCH] main.yml is added to github actions (#11) --- .github/workflows/main.yml | 56 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 .github/workflows/main.yml diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml new file mode 100644 index 0000000..fdcd80d --- /dev/null +++ b/.github/workflows/main.yml @@ -0,0 +1,56 @@ +name: Main + +on: + push: + branches: + - master + pull_request: + +jobs: + test: + runs-on: ${{ matrix.os }} + strategy: + fail-fast: true + matrix: + os: [ ubuntu-latest ] + php: [ 8.1 ] + laravel: [ 10.* ] + dependency-version: [ prefer-lowest, prefer-stable ] + exclude: + - php: 8.1 + laravel: 11.* + + name: Tests PHP${{ matrix.php }} - Laravel v${{ matrix.laravel }} + steps: + - name: Checkout Repository + uses: actions/checkout@v2 + + - name: Setup PHP Environment + uses: shivammathur/setup-php@v2 + with: + php-version: ${{ matrix.php }} + extensions: dom, mbstring, zip + coverage: none + + - name: Cache Composer Dependencies + uses: actions/cache@v1 + with: + path: ~/.composer/cache/files + key: dependencies-php-${{ matrix.php }}-L${{ matrix.laravel }}-${{ matrix.dependency-version }}-composer-${{ hashFiles('composer.json') }} + + - name: Copy Environment Files + run: | + php -r "file_exists('.env.testing') || copy('.env.ci', '.env.testing');" + php -r "file_exists('.env') || copy('.env.ci', '.env');" + + - name: Install Composer Dependencies + run: composer install --no-interaction --no-scripts --no-progress --prefer-dist + + - name: Run PHPUnit Tests + run: vendor/bin/phpunit --log-junit phpunit-report.xml + + - name: Upload PHPUnit Report + uses: actions/upload-artifact@v2 + with: + name: PHPUnit Test Report + path: phpunit-report.xml \ No newline at end of file