Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
30 changes: 15 additions & 15 deletions .github/actions-lock.txt
Original file line number Diff line number Diff line change
@@ -1,20 +1,20 @@
# SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: MIT
acad44f3e99b665897766ce90374dd03 block-merge-freeze.yml
7f15fef2fde87aae0eb8386ded489372 command-compile.yml
c68267e33681e70e0d90b8d7c58da269 command-openapi.yml
4fb9690e44e3728c1d21c9a34037e83c command-compile.yml
eb315872141ae5af4da49644fc9390f7 command-openapi.yml
e6351c608939c31ae1e32923aa82aa10 dependabot-approve-merge.yml
dc0ae733f35c60274937c2647c027d46 lint-eslint.yml
79006ab196f5664fc444e63645cfd8a7 lint-php-cs.yml
300be6a756abda800e40850918f2d964 lint-php.yml
0dc931ec237a235370e224282608b20e npm-audit-fix.yml
ab958fa2b07234fceab6b6d836fb7f19 npm-build.yml
b45e44d9ffe39586b38b6a925c1a9740 openapi.yml
6d8eebf482b2932971b7912139f16d9f phpunit-mariadb.yml
3cacf28a710b387e83d3858af40b7ffe phpunit-mysql.yml
f89c18551d6a29af9bca63a0fd30a039 phpunit-oci.yml
12a43f55ac6aedc321b62e00f9d864f0 phpunit-pgsql.yml
ba5a538fea1a9e53dfcbeb53b83ea6fa phpunit-sqlite.yml
aaa395a26591445ccf4c8196d7f01ee7 pr-feedback.yml
6c355cb7b5d4da4d56a58e6d7f82881b psalm-matrix.yml
4276208e79e34e2c23756469acecde13 lint-eslint.yml
230493ed3855e3f7d9209cc63e9dbe13 lint-php-cs.yml
994cce702e8c1ec02e45e113e48512b6 lint-php.yml
f1909c78987565cb19a471c60dc53950 npm-audit-fix.yml
6e07ed85ca156b6bf121a50dc1af6712 npm-build.yml
bd5935b32142ff805a1e195f9c8c9cd4 openapi.yml
9a40d9f4ed2a328a0ae7fedc5b380089 phpunit-mariadb.yml
ccf70525553e797b8d7a1fb30d344323 phpunit-mysql.yml
dc762923203b94da162ea3339b23ea65 phpunit-oci.yml
2b074ba7d721c93009615d0f917ad972 phpunit-pgsql.yml
eaef9ddd2f5552e34c3bc921a48c5e1f phpunit-sqlite.yml
2639f2b96989a4fcbb441ca8f1fecb2f pr-feedback.yml
d1e7dba2e25a3921ba09a8357bcd47c5 psalm-matrix.yml
2dbec18233063b42f4d8e03bbb43671c reuse.yml
17 changes: 7 additions & 10 deletions .github/workflows/command-compile.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@

name: Compile Command
on:
issue_comment:
issue_comment: # zizmor: ignore[dangerous-triggers]
types: [created]

permissions:
Expand Down Expand Up @@ -116,20 +116,17 @@ jobs:
git config --local user.name 'nextcloud-command'

- name: Read package.json node and npm engines version
uses: skjnldsv/read-package-engines-version-actions@06d6baf7d8f41934ab630e97d9e6c0bc9c9ac5e4 # v3
uses: nextcloud-libraries/parse-package-engines-action@39fcc545a815c353dd0a3fd8fd2ef6e59fd02b92 # v0.2.0
id: package-engines-versions
with:
fallbackNode: '^24'
fallbackNpm: '^11.3'

- name: Set up node ${{ steps.package-engines-versions.outputs.nodeVersion }}
uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0
- name: Set up node ${{ steps.package-engines-versions.outputs.node-version }}
uses: actions/setup-node@949feb2413d6458794dcd2491c4babbbce0c15c1 # v7.1.0
with:
node-version: ${{ steps.package-engines-versions.outputs.nodeVersion }}
node-version: ${{ steps.package-engines-versions.outputs.node-version }}
cache: npm

- name: Set up npm ${{ steps.package-engines-versions.outputs.npmVersion }}
run: npm i -g 'npm@${{ steps.package-engines-versions.outputs.npmVersion }}'
- name: Set up npm ${{ steps.package-engines-versions.outputs.package-manager-version }}
run: npm i -g 'npm@${{ steps.package-engines-versions.outputs.package-manager-version }}'

- name: Rebase to ${{ needs.init.outputs.base_ref }}
if: ${{ contains(needs.init.outputs.arg1, 'rebase') }}
Expand Down
21 changes: 9 additions & 12 deletions .github/workflows/command-openapi.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@

name: OpenAPI Command
on:
issue_comment:
issue_comment: # zizmor: ignore[dangerous-triggers]
types: [created]

permissions:
Expand Down Expand Up @@ -124,23 +124,20 @@ jobs:

- name: Read package.json node and npm engines version
if: steps.check_typescript_openapi.outputs.files_exists == 'true'
uses: skjnldsv/read-package-engines-version-actions@06d6baf7d8f41934ab630e97d9e6c0bc9c9ac5e4 # v3
uses: nextcloud-libraries/parse-package-engines-action@39fcc545a815c353dd0a3fd8fd2ef6e59fd02b92 # v0.2.0
id: node_versions
# Continue if no package.json
continue-on-error: true
with:
fallbackNode: '^24'
fallbackNpm: '^11.3'

- name: Set up node ${{ steps.node_versions.outputs.nodeVersion }}
if: ${{ steps.node_versions.outputs.nodeVersion }}
uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0
- name: Set up node ${{ steps.node_versions.outputs.node-version }}
if: ${{ steps.node_versions.outcome == 'success' }}
uses: actions/setup-node@949feb2413d6458794dcd2491c4babbbce0c15c1 # v7.1.0
with:
node-version: ${{ steps.node_versions.outputs.nodeVersion }}
node-version: ${{ steps.node_versions.outputs.node-version }}

- name: Set up npm ${{ steps.node_versions.outputs.npmVersion }}
if: ${{ steps.node_versions.outputs.nodeVersion }}
run: npm i -g 'npm@${{ steps.node_versions.outputs.npmVersion }}'
- name: Set up npm ${{ steps.node_versions.outputs.package-manager-version }}
if: ${{ steps.node_versions.outcome == 'success' }}
run: npm i -g 'npm@${{ steps.node_versions.outputs.package-manager-version }}'

- name: Rebase to ${{ needs.init.outputs.base_ref }}
if: ${{ contains(needs.init.outputs.arg1, 'rebase') }}
Expand Down
15 changes: 6 additions & 9 deletions .github/workflows/lint-eslint.yml
Original file line number Diff line number Diff line change
Expand Up @@ -61,19 +61,16 @@ jobs:
persist-credentials: false

- name: Read package.json node and npm engines version
uses: skjnldsv/read-package-engines-version-actions@06d6baf7d8f41934ab630e97d9e6c0bc9c9ac5e4 # v3
uses: nextcloud-libraries/parse-package-engines-action@39fcc545a815c353dd0a3fd8fd2ef6e59fd02b92 # v0.2.0
id: versions
with:
fallbackNode: '^24'
fallbackNpm: '^11.3'

- name: Set up node ${{ steps.versions.outputs.nodeVersion }}
uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0
- name: Set up node ${{ steps.versions.outputs.node-version }}
uses: actions/setup-node@949feb2413d6458794dcd2491c4babbbce0c15c1 # v7.1.0
with:
node-version: ${{ steps.versions.outputs.nodeVersion }}
node-version: ${{ steps.versions.outputs.node-version }}

- name: Set up npm ${{ steps.versions.outputs.npmVersion }}
run: npm i -g 'npm@${{ steps.versions.outputs.npmVersion }}'
- name: Set up npm ${{ steps.versions.outputs.package-manager-version }}
run: npm i -g 'npm@${{ steps.versions.outputs.package-manager-version }}'

- name: Install dependencies
env:
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/lint-php-cs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ jobs:
uses: nextcloud-libraries/nextcloud-version-matrix@cd0211ffcef1065e2020cd579e4843b8746e7a58 # v1.3.3

- name: Set up php${{ steps.versions.outputs.php-min }}
uses: shivammathur/setup-php@f3e473d116dcccaddc5834248c87452386958240 # 2.37.2
uses: shivammathur/setup-php@eb7c497e18156a6bbabfef1d3a82760b9eda3962 # 2.40.0
with:
php-version: ${{ steps.versions.outputs.php-min }}
extensions: bz2, ctype, curl, dom, fileinfo, gd, iconv, intl, json, libxml, mbstring, openssl, pcntl, posix, session, simplexml, xmlreader, xmlwriter, zip, zlib, sqlite, pdo_sqlite
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/lint-php.yml
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@ jobs:
persist-credentials: false

- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@f3e473d116dcccaddc5834248c87452386958240 # 2.37.2
uses: shivammathur/setup-php@eb7c497e18156a6bbabfef1d3a82760b9eda3962 # 2.40.0
with:
php-version: ${{ matrix.php-versions }}
extensions: bz2, ctype, curl, dom, fileinfo, gd, iconv, intl, json, libxml, mbstring, openssl, pcntl, posix, session, simplexml, xmlreader, xmlwriter, zip, zlib, sqlite, pdo_sqlite
Expand Down
77 changes: 62 additions & 15 deletions .github/workflows/npm-audit-fix.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,16 +11,21 @@ name: Npm audit fix and compile
on:
workflow_dispatch:
schedule:
# At 2:30 on Sundays
- cron: '30 2 * * 0'
# At 22:30 on Saturdays
- cron: '30 22 * * 6'

permissions:
contents: read
contents: write
pull-requests: write

jobs:
build:
runs-on: ubuntu-latest

env:
# env variable for maintainers: 'false' disables auto-merge for these pull requests
AUTOMERGE: true

strategy:
fail-fast: false
matrix:
Expand All @@ -29,7 +34,6 @@ jobs:
- 'stable35'
- 'stable34'
- 'stable33'
- 'stable32'

name: npm-audit-fix-${{ matrix.branches }}

Expand All @@ -42,35 +46,62 @@ jobs:
ref: ${{ matrix.branches }}
continue-on-error: true

- name: Check for active merge freeze
id: freeze
if: steps.checkout.outcome == 'success'
env:
BRANCH_NAME: ${{ matrix.branches }}
run: |
if [[ ! -f .github/workflows/block-merge-freeze.yml ]]; then
echo 'No block-merge-freeze workflow, continuing'
exit 0
fi
if [[ "$BRANCH_NAME" == 'main' || "$BRANCH_NAME" == 'master' ]]; then
SERVER_REF='master'
elif [[ "$BRANCH_NAME" =~ ^stable[0-9]+$ ]]; then
SERVER_REF="$BRANCH_NAME"
else
echo 'Not based on master/main/stable*, so skipping freeze check'
exit 0
fi
curl -sf "https://raw.githubusercontent.com/nextcloud/server/$SERVER_REF/version.php" --output version.php
if grep 'OC_VersionString' version.php | grep -q -i -E '(\.0\.0 RC[3-9]|\.[1-9][0-9]* RC)'; then
echo "Merge freeze is active for $SERVER_REF, skipping"
echo 'active=true' >> $GITHUB_OUTPUT
fi
rm version.php

- name: Read package.json node and npm engines version
uses: skjnldsv/read-package-engines-version-actions@06d6baf7d8f41934ab630e97d9e6c0bc9c9ac5e4 # v3
if: steps.freeze.outputs.active != 'true'
uses: nextcloud-libraries/parse-package-engines-action@39fcc545a815c353dd0a3fd8fd2ef6e59fd02b92 # v0.2.0
id: versions
with:
fallbackNode: '^24'
fallbackNpm: '^11.3'

- name: Set up node ${{ steps.versions.outputs.nodeVersion }}
uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0
- name: Set up node ${{ steps.versions.outputs.node-version }}
if: steps.freeze.outputs.active != 'true'
uses: actions/setup-node@949feb2413d6458794dcd2491c4babbbce0c15c1 # v7.1.0
with:
node-version: ${{ steps.versions.outputs.nodeVersion }}
node-version: ${{ steps.versions.outputs.node-version }}

- name: Set up npm ${{ steps.versions.outputs.npmVersion }}
run: npm i -g 'npm@${{ steps.versions.outputs.npmVersion }}'
- name: Set up npm ${{ steps.versions.outputs.package-manager-version }}
if: steps.freeze.outputs.active != 'true'
run: npm i -g 'npm@${{ steps.versions.outputs.package-manager-version }}'

- name: Fix npm audit
id: npm-audit
if: steps.freeze.outputs.active != 'true'
uses: nextcloud-libraries/npm-audit-action@1b1728b2b4a7a78d69de65608efcf4db0e3e42d0 # v0.2.0

- name: Run npm ci and npm run build
if: steps.checkout.outcome == 'success'
if: steps.freeze.outputs.active != 'true' && steps.checkout.outcome == 'success'
env:
CYPRESS_INSTALL_BINARY: 0
run: |
npm ci
npm run build --if-present

- name: Create Pull Request
if: steps.checkout.outcome == 'success'
id: create-pull-request
if: steps.freeze.outputs.active != 'true' && steps.checkout.outcome == 'success'
uses: peter-evans/create-pull-request@5f6978faf089d4d20b00c7766989d076bb2fc7f1 # v8.1.1
with:
token: ${{ secrets.COMMAND_BOT_PAT }}
Expand All @@ -84,3 +115,19 @@ jobs:
labels: |
dependencies
3. to review

# Approve using the default GITHUB_TOKEN, as the PR itself was created
# using COMMAND_BOT_PAT and GitHub does not allow an account to approve its own PR
- name: GitHub actions bot approve
if: steps.freeze.outputs.active != 'true' && steps.create-pull-request.outputs.pull-request-operation != 'none'
run: gh pr review --approve "$PR_URL"
env:
PR_URL: ${{ steps.create-pull-request.outputs.pull-request-url }}
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}

- name: Enable auto merge
if: steps.freeze.outputs.active != 'true' && steps.create-pull-request.outputs.pull-request-operation != 'none' && fromJSON(env.AUTOMERGE)
uses: peter-evans/enable-pull-request-automerge@a660677d5469627102a1c1e11409dd063606628d # v3.0.0
with:
token: ${{ secrets.GITHUB_TOKEN }}
pull-request-number: ${{ steps.create-pull-request.outputs.pull-request-number }}
15 changes: 6 additions & 9 deletions .github/workflows/npm-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -58,19 +58,16 @@ jobs:
persist-credentials: false

- name: Read package.json node and npm engines version
uses: skjnldsv/read-package-engines-version-actions@06d6baf7d8f41934ab630e97d9e6c0bc9c9ac5e4 # v3
uses: nextcloud-libraries/parse-package-engines-action@39fcc545a815c353dd0a3fd8fd2ef6e59fd02b92 # v0.2.0
id: versions
with:
fallbackNode: '^24'
fallbackNpm: '^11.3'

- name: Set up node ${{ steps.versions.outputs.nodeVersion }}
uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0
- name: Set up node ${{ steps.versions.outputs.node-version }}
uses: actions/setup-node@949feb2413d6458794dcd2491c4babbbce0c15c1 # v7.1.0
with:
node-version: ${{ steps.versions.outputs.nodeVersion }}
node-version: ${{ steps.versions.outputs.node-version }}

- name: Set up npm ${{ steps.versions.outputs.npmVersion }}
run: npm i -g 'npm@${{ steps.versions.outputs.npmVersion }}'
- name: Set up npm ${{ steps.versions.outputs.package-manager-version }}
run: npm i -g 'npm@${{ steps.versions.outputs.package-manager-version }}'

- name: Validate package-lock.json # See https://github.com/npm/cli/issues/4460
run: |
Expand Down
23 changes: 10 additions & 13 deletions .github/workflows/openapi.yml
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ jobs:
uses: nextcloud-libraries/nextcloud-version-matrix@cd0211ffcef1065e2020cd579e4843b8746e7a58 # v1.3.3

- name: Set up php
uses: shivammathur/setup-php@f3e473d116dcccaddc5834248c87452386958240 # 2.37.2
uses: shivammathur/setup-php@eb7c497e18156a6bbabfef1d3a82760b9eda3962 # 2.40.0
with:
php-version: ${{ steps.php_versions.outputs.php-available }}
extensions: xml
Expand All @@ -52,26 +52,23 @@ jobs:

- name: Read package.json node and npm engines version
if: steps.check_typescript_openapi.outputs.files_exists == 'true'
uses: skjnldsv/read-package-engines-version-actions@06d6baf7d8f41934ab630e97d9e6c0bc9c9ac5e4 # v3
uses: nextcloud-libraries/parse-package-engines-action@39fcc545a815c353dd0a3fd8fd2ef6e59fd02b92 # v0.2.0
id: node_versions
# Continue if no package.json
continue-on-error: true
with:
fallbackNode: '^24'
fallbackNpm: '^11.3'

- name: Set up node ${{ steps.node_versions.outputs.nodeVersion }}
if: ${{ steps.node_versions.outputs.nodeVersion }}
uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0
- name: Set up node ${{ steps.node_versions.outputs.node-version }}
if: ${{ steps.node_versions.outcome == 'success' }}
uses: actions/setup-node@949feb2413d6458794dcd2491c4babbbce0c15c1 # v7.1.0
with:
node-version: ${{ steps.node_versions.outputs.nodeVersion }}
node-version: ${{ steps.node_versions.outputs.node-version }}

- name: Set up npm ${{ steps.node_versions.outputs.npmVersion }}
if: ${{ steps.node_versions.outputs.nodeVersion }}
run: npm i -g 'npm@${{ steps.node_versions.outputs.npmVersion }}'
- name: Set up npm ${{ steps.node_versions.outputs.package-manager-version }}
if: ${{ steps.node_versions.outcome == 'success' }}
run: npm i -g 'npm@${{ steps.node_versions.outputs.package-manager-version }}'

- name: Install dependencies
if: ${{ steps.node_versions.outputs.nodeVersion }}
if: ${{ steps.node_versions.outcome == 'success' }}
env:
CYPRESS_INSTALL_BINARY: 0
PUPPETEER_SKIP_DOWNLOAD: true
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/phpunit-mariadb.yml
Original file line number Diff line number Diff line change
Expand Up @@ -104,7 +104,7 @@ jobs:
path: apps/${{ env.APP_NAME }}

- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@f3e473d116dcccaddc5834248c87452386958240 # 2.37.2
uses: shivammathur/setup-php@eb7c497e18156a6bbabfef1d3a82760b9eda3962 # 2.40.0
with:
php-version: ${{ matrix.php-versions }}
# https://docs.nextcloud.com/server/stable/admin_manual/installation/source_installation.html#prerequisites-for-manual-installation
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/phpunit-mysql.yml
Original file line number Diff line number Diff line change
Expand Up @@ -102,7 +102,7 @@ jobs:
path: apps/${{ env.APP_NAME }}

- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@f3e473d116dcccaddc5834248c87452386958240 # 2.37.2
uses: shivammathur/setup-php@eb7c497e18156a6bbabfef1d3a82760b9eda3962 # 2.40.0
with:
php-version: ${{ matrix.php-versions }}
# https://docs.nextcloud.com/server/stable/admin_manual/installation/source_installation.html#prerequisites-for-manual-installation
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/phpunit-oci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -114,7 +114,7 @@ jobs:
path: apps/${{ env.APP_NAME }}

- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@f3e473d116dcccaddc5834248c87452386958240 # 2.37.2
uses: shivammathur/setup-php@eb7c497e18156a6bbabfef1d3a82760b9eda3962 # 2.40.0
with:
php-version: ${{ matrix.php-versions }}
# https://docs.nextcloud.com/server/stable/admin_manual/installation/source_installation.html#prerequisites-for-manual-installation
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/phpunit-pgsql.yml
Original file line number Diff line number Diff line change
Expand Up @@ -105,7 +105,7 @@ jobs:
path: apps/${{ env.APP_NAME }}

- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@f3e473d116dcccaddc5834248c87452386958240 # 2.37.2
uses: shivammathur/setup-php@eb7c497e18156a6bbabfef1d3a82760b9eda3962 # 2.40.0
with:
php-version: ${{ matrix.php-versions }}
# https://docs.nextcloud.com/server/stable/admin_manual/installation/source_installation.html#prerequisites-for-manual-installation
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/phpunit-sqlite.yml
Original file line number Diff line number Diff line change
Expand Up @@ -94,7 +94,7 @@ jobs:
path: apps/${{ env.APP_NAME }}

- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@f3e473d116dcccaddc5834248c87452386958240 # 2.37.2
uses: shivammathur/setup-php@eb7c497e18156a6bbabfef1d3a82760b9eda3962 # 2.40.0
with:
php-version: ${{ matrix.php-versions }}
# https://docs.nextcloud.com/server/stable/admin_manual/installation/source_installation.html#prerequisites-for-manual-installation
Expand Down
Loading
Loading