diff options
-rw-r--r-- | .github/workflows/dependabot-approve-merge.yml | 4 | ||||
-rw-r--r-- | .github/workflows/lint-eslint.yml | 15 | ||||
-rw-r--r-- | .github/workflows/lint-php-cs.yml | 18 | ||||
-rw-r--r-- | .github/workflows/lint-php.yml | 12 | ||||
-rw-r--r-- | .github/workflows/lint-stylelint.yml | 20 | ||||
-rw-r--r-- | .github/workflows/phpunit-mysql.yml | 32 | ||||
-rw-r--r-- | .github/workflows/phpunit-pgsql.yml | 34 | ||||
-rw-r--r-- | .github/workflows/phpunit-sqlite.yml | 32 |
8 files changed, 138 insertions, 29 deletions
diff --git a/.github/workflows/dependabot-approve-merge.yml b/.github/workflows/dependabot-approve-merge.yml index 0d6e343..d408548 100644 --- a/.github/workflows/dependabot-approve-merge.yml +++ b/.github/workflows/dependabot-approve-merge.yml @@ -15,6 +15,10 @@ on: permissions: contents: read +concurrency: + group: dependabot-approve-merge-${{ github.head_ref || github.run_id }} + cancel-in-progress: true + jobs: auto-approve-merge: if: github.actor == 'dependabot[bot]' diff --git a/.github/workflows/lint-eslint.yml b/.github/workflows/lint-eslint.yml index 5f48fb5..c08763e 100644 --- a/.github/workflows/lint-eslint.yml +++ b/.github/workflows/lint-eslint.yml @@ -5,13 +5,14 @@ name: Lint -on: - pull_request: - push: - branches: - - main - - master - - stable* +on: pull_request + +permissions: + contents: read + +concurrency: + group: lint-eslint-${{ github.head_ref || github.run_id }} + cancel-in-progress: true jobs: lint: diff --git a/.github/workflows/lint-php-cs.yml b/.github/workflows/lint-php-cs.yml index 9aad514..2814102 100644 --- a/.github/workflows/lint-php-cs.yml +++ b/.github/workflows/lint-php-cs.yml @@ -5,12 +5,14 @@ name: Lint -on: - pull_request: - push: - branches: - - master - - stable* +on: pull_request + +permissions: + contents: read + +concurrency: + group: lint-php-cs-${{ github.head_ref || github.run_id }} + cancel-in-progress: true jobs: lint: @@ -20,9 +22,9 @@ jobs: steps: - name: Checkout - uses: actions/checkout@v2 + uses: actions/checkout@v3 - - name: Set up php ${{ matrix.php-versions }} + - name: Set up php uses: shivammathur/setup-php@v2 with: php-version: "7.4" diff --git a/.github/workflows/lint-php.yml b/.github/workflows/lint-php.yml index 9cfb484..62476c9 100644 --- a/.github/workflows/lint-php.yml +++ b/.github/workflows/lint-php.yml @@ -9,9 +9,17 @@ on: pull_request: push: branches: + - main - master - stable* +permissions: + contents: read + +concurrency: + group: lint-php-${{ github.head_ref || github.run_id }} + cancel-in-progress: true + jobs: php-lint: runs-on: ubuntu-latest @@ -23,7 +31,7 @@ jobs: steps: - name: Checkout - uses: actions/checkout@v2 + uses: actions/checkout@v3 - name: Set up php ${{ matrix.php-versions }} uses: shivammathur/setup-php@v2 @@ -35,6 +43,8 @@ jobs: run: composer run lint summary: + permissions: + contents: none runs-on: ubuntu-latest needs: php-lint diff --git a/.github/workflows/lint-stylelint.yml b/.github/workflows/lint-stylelint.yml index 64edcfb..17b7aeb 100644 --- a/.github/workflows/lint-stylelint.yml +++ b/.github/workflows/lint-stylelint.yml @@ -5,12 +5,14 @@ name: Lint -on: - pull_request: - push: - branches: - - master - - stable* +on: pull_request + +permissions: + contents: read + +concurrency: + group: lint-stylelint-${{ github.head_ref || github.run_id }} + cancel-in-progress: true jobs: lint: @@ -20,17 +22,17 @@ jobs: steps: - name: Checkout - uses: actions/checkout@v2 + uses: actions/checkout@v3 - name: Read package.json node and npm engines version - uses: skjnldsv/read-package-engines-version-actions@v1.1 + uses: skjnldsv/read-package-engines-version-actions@v1.2 id: versions with: fallbackNode: '^12' fallbackNpm: '^6' - name: Set up node ${{ steps.versions.outputs.nodeVersion }} - uses: actions/setup-node@v2 + uses: actions/setup-node@v3 with: node-version: ${{ steps.versions.outputs.nodeVersion }} diff --git a/.github/workflows/phpunit-mysql.yml b/.github/workflows/phpunit-mysql.yml index db45a57..e9eb054 100644 --- a/.github/workflows/phpunit-mysql.yml +++ b/.github/workflows/phpunit-mysql.yml @@ -7,11 +7,31 @@ 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 @@ -66,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 @@ -76,7 +104,7 @@ jobs: run: | 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 ${{ env.APP_NAME }} + ./occ app:enable --force ${{ env.APP_NAME }} - name: Check PHPUnit config file existence id: check_phpunit @@ -108,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 diff --git a/.github/workflows/phpunit-pgsql.yml b/.github/workflows/phpunit-pgsql.yml index 489739e..1acbcc3 100644 --- a/.github/workflows/phpunit-pgsql.yml +++ b/.github/workflows/phpunit-pgsql.yml @@ -7,11 +7,31 @@ 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-pgsql-${{ 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 @@ -28,7 +48,7 @@ jobs: services: postgres: - image: postgres + image: postgres:14 ports: - 4444:5432/tcp env: @@ -63,7 +83,15 @@ jobs: extensions: mbstring, iconv, fileinfo, intl, pgsql, pdo_pgsql 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 @@ -73,7 +101,7 @@ jobs: run: | mkdir data ./occ maintenance:install --verbose --database=pgsql --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 ${{ env.APP_NAME }} + ./occ app:enable --force ${{ env.APP_NAME }} - name: Check PHPUnit config file existence id: check_phpunit @@ -105,6 +133,8 @@ jobs: run: ./vendor/phpunit/phpunit/phpunit -c ${{ env.PHPUNIT_INTEGRATION_CONFIG }} summary: + permissions: + contents: none runs-on: ubuntu-latest needs: phpunit-pgsql diff --git a/.github/workflows/phpunit-sqlite.yml b/.github/workflows/phpunit-sqlite.yml index 2ba6fbe..f820263 100644 --- a/.github/workflows/phpunit-sqlite.yml +++ b/.github/workflows/phpunit-sqlite.yml @@ -7,11 +7,31 @@ 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-sqlite-${{ 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 @@ -52,7 +72,15 @@ jobs: extensions: mbstring, iconv, fileinfo, intl, sqlite, pdo_sqlite 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 @@ -62,7 +90,7 @@ jobs: run: | mkdir data ./occ maintenance:install --verbose --database=sqlite --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 ${{ env.APP_NAME }} + ./occ app:enable --force ${{ env.APP_NAME }} - name: Check PHPUnit config file existence id: check_phpunit @@ -94,6 +122,8 @@ jobs: run: ./vendor/phpunit/phpunit/phpunit -c ${{ env.PHPUNIT_INTEGRATION_CONFIG }} summary: + permissions: + contents: none runs-on: ubuntu-latest needs: phpunit-sqlite |