summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMorris Jobke <hey@morrisjobke.de>2020-08-20 12:39:16 +0200
committerGitHub <noreply@github.com>2020-08-20 12:39:16 +0200
commitffb132752cf46f6e4e71a2f7ee3d7be3be6548b4 (patch)
tree491673a97af45f1c7faef04720207bd52f14436a
parent077e2fec74d19bec23af6e95c082d3802a0c0a91 (diff)
parent50784a7c51a3bd740d666857c463b9c15bd4b25e (diff)
downloadnextcloud-server-ffb132752cf46f6e4e71a2f7ee3d7be3be6548b4.tar.gz
nextcloud-server-ffb132752cf46f6e4e71a2f7ee3d7be3be6548b4.zip
Merge pull request #22314 from nextcloud/ci/noid/run-daily-updates-of-psalm-baseline
Generate psalm-baseline.xml PR instead of requiring this from the PR …
-rw-r--r--.github/workflows/static-code-analysis.yml4
-rw-r--r--.github/workflows/update-psalm-baseline.yml43
2 files changed, 45 insertions, 2 deletions
diff --git a/.github/workflows/static-code-analysis.yml b/.github/workflows/static-code-analysis.yml
index 184b58a7472..8f1fd9a2a30 100644
--- a/.github/workflows/static-code-analysis.yml
+++ b/.github/workflows/static-code-analysis.yml
@@ -20,6 +20,6 @@ jobs:
uses: docker://jakzal/phpqa:php7.4-alpine
with:
args: psalm --monochrome --no-progress --output-format=text --update-baseline || ( git diff && exit 1 )
- - name: Check for changes in Psalm baseline
+ - name: Show potential changes in Psalm baseline
run: |
- bash -c "[[ ! \"`git status --porcelain build/psalm-baseline.xml`\" ]] || ( echo 'Uncommited changes in Psalm baseline' && git status && git diff build/psalm-baseline.xml && exit 1 )"
+ bash -c "[[ ! \"`git status --porcelain build/psalm-baseline.xml`\" ]] || ( echo 'Uncommited changes in Psalm baseline' && git status && git diff build/psalm-baseline.xml)"
diff --git a/.github/workflows/update-psalm-baseline.yml b/.github/workflows/update-psalm-baseline.yml
new file mode 100644
index 00000000000..3822cbf1cc1
--- /dev/null
+++ b/.github/workflows/update-psalm-baseline.yml
@@ -0,0 +1,43 @@
+name: Update Psalm baseline
+
+on:
+ schedule:
+ - cron: '5 6 * * *'
+
+jobs:
+ update-psalm-baseline:
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v2
+ - name: Checkout submodules
+ shell: bash
+ run: |
+ auth_header="$(git config --local --get http.https://github.com/.extraheader)"
+ git submodule sync --recursive
+ git -c "http.extraheader=$auth_header" -c protocol.version=2 submodule update --init --force --recursive --depth=1
+ - name: Remove composer.json
+ shell: bash
+ run: rm composer.json composer.lock
+ - name: Psalm
+ uses: docker://jakzal/phpqa:php7.4-alpine
+ with:
+ args: psalm --monochrome --no-progress --output-format=text --update-baseline
+ - name: Reset composer.json and composer.lock
+ run: |
+ git checkout -- composer.json composer.lock
+ - name: Create Pull Request
+ uses: peter-evans/create-pull-request@v3
+ with:
+ token: ${{ secrets.MACHINE_USER_PAT }}
+ push-to-fork: nextcloud-pr-bot/server
+ commit-message: Update psalm baseline
+ committer: GitHub <noreply@github.com>
+ author: Nextcloud-PR-Bot <nextcloud-pr-bot@users.noreply.github.com>
+ signoff: true
+ branch: automated/noid/psalm-baseline-update
+ title: '[Automated] Update psalm-baseline.xml'
+ body: |
+ Auto-generated update psalm-baseline.xml with fixed psalm warnings
+ labels: |
+ automated pr
+ reviewers: rullzer, morrisjobke, kesselb