chore: update workflows from templates

Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
This commit is contained in:
skjnldsv
2024-03-08 22:02:25 +01:00
parent d0e609438e
commit 09dba5689e
6 changed files with 54 additions and 43 deletions

View File

@@ -9,9 +9,6 @@ on:
release: release:
types: [published] types: [published]
env:
PHP_VERSION: 8.1
jobs: jobs:
build_and_publish: build_and_publish:
runs-on: ubuntu-latest runs-on: ubuntu-latest
@@ -21,7 +18,7 @@ jobs:
steps: steps:
- name: Check actor permission - name: Check actor permission
uses: skjnldsv/check-actor-permission@e591dbfe838300c007028e1219ca82cc26e8d7c5 # v2.1 uses: skjnldsv/check-actor-permission@69e92a3c4711150929bca9fcf34448c5bf5526e7 # v3.0
with: with:
require: write require: write
@@ -32,7 +29,7 @@ jobs:
echo "APP_VERSION=${GITHUB_REF##*/}" >> $GITHUB_ENV echo "APP_VERSION=${GITHUB_REF##*/}" >> $GITHUB_ENV
- name: Checkout - name: Checkout
uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
with: with:
path: ${{ env.APP_NAME }} path: ${{ env.APP_NAME }}
@@ -44,19 +41,19 @@ jobs:
expression: "//info//dependencies//nextcloud/@min-version" expression: "//info//dependencies//nextcloud/@min-version"
- name: Read package.json node and npm engines version - name: Read package.json node and npm engines version
uses: skjnldsv/read-package-engines-version-actions@0ce2ed60f6df073a62a77c0a4958dd0fc68e32e7 # v2.1 uses: skjnldsv/read-package-engines-version-actions@8205673bab74a63eb9b8093402fd9e0e018663a1 # v2.2
id: versions id: versions
# Continue if no package.json # Continue if no package.json
continue-on-error: true continue-on-error: true
with: with:
path: ${{ env.APP_NAME }} path: ${{ env.APP_NAME }}
fallbackNode: "^16" fallbackNode: '^20'
fallbackNpm: "^7" fallbackNpm: '^10'
- name: Set up node ${{ steps.versions.outputs.nodeVersion }} - name: Set up node ${{ steps.versions.outputs.nodeVersion }}
# Skip if no package.json # Skip if no package.json
if: ${{ steps.versions.outputs.nodeVersion }} if: ${{ steps.versions.outputs.nodeVersion }}
uses: actions/setup-node@64ed1c7eab4cce3362f8c340dee64e5eaeef8f7c # v3 uses: actions/setup-node@60edb5dd545a775178f52524783378180af0d1f8 # v3
with: with:
node-version: ${{ steps.versions.outputs.nodeVersion }} node-version: ${{ steps.versions.outputs.nodeVersion }}
@@ -65,17 +62,23 @@ jobs:
if: ${{ steps.versions.outputs.npmVersion }} if: ${{ steps.versions.outputs.npmVersion }}
run: npm i -g npm@"${{ steps.versions.outputs.npmVersion }}" run: npm i -g npm@"${{ steps.versions.outputs.npmVersion }}"
- name: Set up php ${{ env.PHP_VERSION }} - name: Get php version
uses: shivammathur/setup-php@c5fc0d8281aba02c7fda07d3a70cc5371548067d # v2 id: php-versions
uses: icewind1991/nextcloud-version-matrix@58becf3b4bb6dc6cef677b15e2fd8e7d48c0908f # v1.3.1
with: with:
php-version: ${{ env.PHP_VERSION }} filename: ${{ env.APP_NAME }}/appinfo/info.xml
- name: Set up php ${{ steps.php-versions.outputs.php-min }}
uses: shivammathur/setup-php@a4e22b60bbb9c1021113f2860347b0759f66fe5d # v2
with:
php-version: ${{ steps.php-versions.outputs.php-min }}
coverage: none coverage: none
env: env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Check composer.json - name: Check composer.json
id: check_composer id: check_composer
uses: andstor/file-existence-action@20b4d2e596410855db8f9ca21e96fbe18e12930b # v2 uses: andstor/file-existence-action@076e0072799f4942c8bc574a82233e1e4d13e9d6 # v2
with: with:
files: "${{ env.APP_NAME }}/composer.json" files: "${{ env.APP_NAME }}/composer.json"
@@ -88,6 +91,8 @@ jobs:
- name: Build ${{ env.APP_NAME }} - name: Build ${{ env.APP_NAME }}
# Skip if no package.json # Skip if no package.json
if: ${{ steps.versions.outputs.nodeVersion }} if: ${{ steps.versions.outputs.nodeVersion }}
env:
CYPRESS_INSTALL_BINARY: 0
run: | run: |
cd ${{ env.APP_NAME }} cd ${{ env.APP_NAME }}
npm ci npm ci
@@ -95,7 +100,7 @@ jobs:
- name: Check Krankerl config - name: Check Krankerl config
id: krankerl id: krankerl
uses: andstor/file-existence-action@20b4d2e596410855db8f9ca21e96fbe18e12930b # v2 uses: andstor/file-existence-action@076e0072799f4942c8bc574a82233e1e4d13e9d6 # v2
with: with:
files: ${{ env.APP_NAME }}/krankerl.toml files: ${{ env.APP_NAME }}/krankerl.toml
@@ -126,7 +131,7 @@ jobs:
unzip latest-$NCVERSION.zip unzip latest-$NCVERSION.zip
- name: Checkout server master fallback - name: Checkout server master fallback
uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
if: ${{ steps.server-checkout.outcome != 'success' }} if: ${{ steps.server-checkout.outcome != 'success' }}
with: with:
submodules: true submodules: true
@@ -149,7 +154,7 @@ jobs:
tar -zcvf ${{ env.APP_NAME }}.tar.gz ${{ env.APP_NAME }} tar -zcvf ${{ env.APP_NAME }}.tar.gz ${{ env.APP_NAME }}
- name: Attach tarball to github release - name: Attach tarball to github release
uses: svenstaro/upload-release-action@2b9d2847a97b04d02ad5c3df2d3a27baa97ce689 # v2 uses: svenstaro/upload-release-action@04733e069f2d7f7f0b4aebc4fbdbce8613b03ccd # v2
id: attach_to_release id: attach_to_release
with: with:
repo_token: ${{ secrets.GITHUB_TOKEN }} repo_token: ${{ secrets.GITHUB_TOKEN }}

View File

@@ -22,7 +22,7 @@ concurrency:
jobs: jobs:
auto-approve-merge: auto-approve-merge:
if: github.actor == 'dependabot[bot]' if: github.actor == 'dependabot[bot]'
runs-on: ubuntu-latest runs-on: ubuntu-latest-low
permissions: permissions:
# for hmarr/auto-approve-action to approve PRs # for hmarr/auto-approve-action to approve PRs
pull-requests: write pull-requests: write

View File

@@ -24,7 +24,7 @@ jobs:
pull-requests: write pull-requests: write
name: Block fixup and squash commits name: Block fixup and squash commits
runs-on: ubuntu-latest runs-on: ubuntu-latest-low
steps: steps:
- name: Run check - name: Run check

View File

@@ -5,13 +5,7 @@
name: Lint info.xml name: Lint info.xml
on: on: pull_request
pull_request:
push:
branches:
- main
- master
- stable*
permissions: permissions:
contents: read contents: read
@@ -22,18 +16,18 @@ concurrency:
jobs: jobs:
xml-linters: xml-linters:
runs-on: ubuntu-latest runs-on: ubuntu-latest-low
name: info.xml lint name: info.xml lint
steps: steps:
- name: Checkout - name: Checkout
uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
- name: Download schema - name: Download schema
run: wget https://raw.githubusercontent.com/nextcloud/appstore/master/nextcloudappstore/api/v1/release/info.xsd run: wget https://raw.githubusercontent.com/nextcloud/appstore/master/nextcloudappstore/api/v1/release/info.xsd
- name: Lint info.xml - name: Lint info.xml
uses: ChristophWurst/xmllint-action@39155a91429af431d65fafc21fa52ba5c4f5cb71 # v1.1 uses: ChristophWurst/xmllint-action@36f2a302f84f8c83fceea0b9c59e1eb4a616d3c1 # v1.2
with: with:
xml-file: ./appinfo/info.xml xml-file: ./appinfo/info.xml
xml-schema-file: ./info.xsd xml-schema-file: ./info.xsd

View File

@@ -22,12 +22,17 @@ jobs:
steps: steps:
- name: Checkout - name: Checkout
uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
- name: Set up php - name: Get php version
uses: shivammathur/setup-php@c5fc0d8281aba02c7fda07d3a70cc5371548067d # v2 id: versions
uses: icewind1991/nextcloud-version-matrix@58becf3b4bb6dc6cef677b15e2fd8e7d48c0908f # v1.3.1
- name: Set up php${{ steps.versions.outputs.php-available }}
uses: shivammathur/setup-php@a4e22b60bbb9c1021113f2860347b0759f66fe5d # v2
with: with:
php-version: 8.1 php-version: ${{ steps.versions.outputs.php-available }}
extensions: bz2, ctype, curl, dom, fileinfo, gd, iconv, intl, json, libxml, mbstring, openssl, pcntl, posix, session, simplexml, xmlreader, xmlwriter, zip, zlib, sqlite, pdo_sqlite
coverage: none coverage: none
ini-file: development ini-file: development
env: env:

View File

@@ -5,13 +5,7 @@
name: Lint php name: Lint php
on: on: pull_request
pull_request:
push:
branches:
- main
- master
- stable*
permissions: permissions:
contents: read contents: read
@@ -21,22 +15,35 @@ concurrency:
cancel-in-progress: true cancel-in-progress: true
jobs: jobs:
matrix:
runs-on: ubuntu-latest-low
outputs:
php-versions: ${{ steps.versions.outputs.php-versions }}
steps:
- name: Checkout app
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
- name: Get version matrix
id: versions
uses: icewind1991/nextcloud-version-matrix@58becf3b4bb6dc6cef677b15e2fd8e7d48c0908f # v1.0.0
php-lint: php-lint:
runs-on: ubuntu-latest runs-on: ubuntu-latest
needs: matrix
strategy: strategy:
matrix: matrix:
php-versions: [ "8.0", "8.1", "8.2" ] php-versions: ${{fromJson(needs.matrix.outputs.php-versions)}}
name: php-lint name: php-lint
steps: steps:
- name: Checkout - name: Checkout
uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
- name: Set up php ${{ matrix.php-versions }} - name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@c5fc0d8281aba02c7fda07d3a70cc5371548067d # v2 uses: shivammathur/setup-php@a4e22b60bbb9c1021113f2860347b0759f66fe5d # v2
with: with:
php-version: ${{ matrix.php-versions }} 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
coverage: none coverage: none
ini-file: development ini-file: development
env: env:
@@ -48,7 +55,7 @@ jobs:
summary: summary:
permissions: permissions:
contents: none contents: none
runs-on: ubuntu-latest runs-on: ubuntu-latest-low
needs: php-lint needs: php-lint
if: always() if: always()