Skip to content

feat: maintenance update, basic object storage support, minor cleanup… #395

feat: maintenance update, basic object storage support, minor cleanup…

feat: maintenance update, basic object storage support, minor cleanup… #395

Workflow file for this run

name: Lint
on:
pull_request:
branches:
- main
- dev
paths-ignore:
- l10n/**
push:
branches:
- main
- dev
paths-ignore:
- l10n/**
workflow_dispatch:
env:
APP_NAME: mediadc
CPA_NAME: cloud_py_api
jobs:
xml-lint:
runs-on: ubuntu-22.04
name: info.xml lint
steps:
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4
- name: Download xml appinfo schema
run: wget https://raw.githubusercontent.com/nextcloud/appstore/master/nextcloudappstore/api/v1/release/info.xsd
- name: Lint appinfo/info.xml
uses: ChristophWurst/[email protected]
with:
xml-file: ./appinfo/info.xml
xml-schema-file: ./info.xsd
php-lint:
runs-on: ubuntu-22.04
name: php-lint
strategy:
matrix:
php-versions: ["8.1", "8.2"]
steps:
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php-versions }}
coverage: none
- name: Lint
run: composer run lint
php-cs:
runs-on: ubuntu-22.04
name: php-cs
strategy:
matrix:
php-versions: ["8.1", "8.2"]
steps:
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php-versions }}
coverage: none
- name: Install dependencies
run: composer i
- name: Lint
run: composer run cs:check || ( echo 'Please run `composer run cs:fix` to format your code' && exit 1 )
php-psalm-analysis:
runs-on: ubuntu-22.04
strategy:
matrix:
php-versions: ["8.1", "8.2"]
server-versions: [ '30.0.0' ]
name: php-psalm-analysis
steps:
- name: Cache nextcloud server
id: nextcloud_setup
uses: actions/cache@v3
with:
path: nextcloud-${{ matrix.server-versions }}.zip
key: ${{ matrix.server-versions }}
- name: Download nextcloud ${{ matrix.server-versions }}
if: steps.nextcloud_setup.outputs.cache-hit != 'true'
continue-on-error: true
id: server-checkout
run: |
NCVERSION=${{ matrix.server-versions }}
wget --quiet https://download.nextcloud.com/server/releases/latest-$NCVERSION.zip
unzip latest-$NCVERSION.zip
- name: Checkout ${{ env.APP_NAME }} app
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4
with:
path: apps/${{ env.APP_NAME }}
- name: Checkout ${{ env.CPA_NAME }} app
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4
if: ${{ steps.server-checkout.outcome != 'success' }}
with:
repository: cloud-py-api/${{ env.CPA_NAME }}
path: apps/${{ env.CPA_NAME }}
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php-versions }}
coverage: none
- name: Install dependencies
working-directory: apps/${{ env.APP_NAME }}
run: composer i
- name: Run coding standards check
working-directory: apps/${{ env.APP_NAME }}
run: composer run psalm
php-security-analysis:
runs-on: ubuntu-22.04
permissions:
contents: read
actions: read
security-events: write
name: security analysis
steps:
- uses: actions/checkout@v3
with:
submodules: recursive
- name: Psalm
uses: docker://vimeo/psalm-github-actions:4.30.0
with:
security_analysis: true
composer_ignore_platform_reqs: false
report_file: results.sarif
- name: Upload Security Analysis results to GitHub
uses: github/codeql-action/upload-sarif@v2
with:
sarif_file: results.sarif
js-eslint:
runs-on: ubuntu-22.04
name: eslint
steps:
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4
- name: Install dependencies
run: npm ci
- name: ESLint
run: npm run lint
stylelint:
runs-on: ubuntu-22.04
name: stylelint
steps:
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4
- name: Install dependencies
run: npm ci
- name: Lint
run: npm run stylelint