diff options
author | John Molakvoæ <skjnldsv@users.noreply.github.com> | 2022-10-15 21:30:47 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-10-15 21:30:47 +0300 |
commit | febd8de9298c2a47d6a0145a336957e26cf71145 (patch) | |
tree | ec7a546cb52ce19607cde93d889721773fd3e289 | |
parent | 9441ce07fda4c6448834869114f561f03a0e1d4d (diff) | |
parent | ae87ecde8824e7922b7740dfd78ccd7252af5e62 (diff) |
Merge pull request #801 from nextcloud/feat/workflow-auto-update-phpunit-mysql.yml
-rw-r--r-- | .github/workflows/phpunit-mysql.yml | 43 |
1 files changed, 40 insertions, 3 deletions
diff --git a/.github/workflows/phpunit-mysql.yml b/.github/workflows/phpunit-mysql.yml index 4531215..e9eb054 100644 --- a/.github/workflows/phpunit-mysql.yml +++ b/.github/workflows/phpunit-mysql.yml @@ -1,12 +1,37 @@ +# This workflow is provided via the organization template repository +# +# https://github.com/nextcloud/.github +# https://docs.github.com/en/actions/learn-github-actions/sharing-workflows-with-your-organization + name: PHPUnit on: pull_request: + paths: + - '.github/workflows/**' + - 'appinfo/**' + - 'lib/**' + - 'templates/**' + - 'tests/**' + - 'vendor/**' + - 'vendor-bin/**' + - '.php-cs-fixer.dist.php' + - 'composer.json' + - 'composer.lock' + push: branches: + - main - master - stable* +permissions: + contents: read + +concurrency: + group: phpunit-mysql-${{ github.head_ref || github.run_id }} + cancel-in-progress: true + env: # Location of the phpunit.xml and phpunit.integration.xml files PHPUNIT_CONFIG: ./tests/phpunit.xml @@ -17,8 +42,6 @@ jobs: runs-on: ubuntu-latest strategy: - # do not stop on another job's failure - fail-fast: false matrix: php-versions: ['7.4', '8.0', '8.1'] server-versions: ['master'] @@ -63,7 +86,15 @@ jobs: extensions: mbstring, iconv, fileinfo, intl, mysql, pdo_mysql coverage: none + - name: Check composer file existence + id: check_composer + uses: andstor/file-existence-action@v1 + with: + files: apps/${{ env.APP_NAME }}/composer.json + - name: Set up PHPUnit + # Only run if phpunit config file exists + if: steps.check_composer.outputs.files_exists == 'true' working-directory: apps/${{ env.APP_NAME }} run: composer i @@ -74,7 +105,6 @@ jobs: mkdir data ./occ maintenance:install --verbose --database=mysql --database-name=nextcloud --database-host=127.0.0.1 --database-port=$DB_PORT --database-user=root --database-pass=rootpassword --admin-user admin --admin-pass password ./occ app:enable --force ${{ env.APP_NAME }} - php -S localhost:8080 & - name: Check PHPUnit config file existence id: check_phpunit @@ -94,6 +124,11 @@ jobs: with: files: apps/${{ env.APP_NAME }}/${{ env.PHPUNIT_INTEGRATION_CONFIG }} + - name: Run Nextcloud + # Only run if phpunit integration config file exists + if: steps.check_integration.outputs.files_exists == 'true' + run: php -S localhost:8080 & + - name: PHPUnit integration # Only run if phpunit integration config file exists if: steps.check_integration.outputs.files_exists == 'true' @@ -101,6 +136,8 @@ jobs: run: ./vendor/phpunit/phpunit/phpunit -c ${{ env.PHPUNIT_INTEGRATION_CONFIG }} summary: + permissions: + contents: none runs-on: ubuntu-latest needs: phpunit-mysql |