90 строки
2.6 KiB
YAML
90 строки
2.6 KiB
YAML
name: Lint
|
|
on: push
|
|
|
|
jobs:
|
|
xml-linters:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@master
|
|
- name: Download schema
|
|
run: wget https://apps.nextcloud.com/schema/apps/info.xsd
|
|
- name: Lint info.xml
|
|
uses: ChristophWurst/xmllint-action@v1
|
|
with:
|
|
xml-file: ./appinfo/info.xml
|
|
xml-schema-file: ./info.xsd
|
|
|
|
php-linters:
|
|
runs-on: ubuntu-latest
|
|
strategy:
|
|
matrix:
|
|
php-versions: [ 7.2, 7.3, 7.4 ]
|
|
name: php${{ matrix.php-versions }} lint
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@master
|
|
- name: Set up php${{ matrix.php-versions }}
|
|
uses: shivammathur/setup-php@master
|
|
with:
|
|
php-version: ${{ matrix.php-versions }}
|
|
coverage: none
|
|
- name: Lint
|
|
run: composer run lint
|
|
|
|
php-cs-fixer:
|
|
name: php-cs check
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@master
|
|
- name: Set up php
|
|
uses: shivammathur/setup-php@master
|
|
with:
|
|
php-version: 7.4
|
|
tools: composer:v1
|
|
coverage: none
|
|
- name: Install dependencies
|
|
run: composer i
|
|
- name: Run coding standards check
|
|
run: composer run cs:check
|
|
|
|
app-code-check:
|
|
runs-on: ubuntu-latest
|
|
strategy:
|
|
matrix:
|
|
nextcloud-versions: [ 'master' ]
|
|
name: Nextcloud ${{ matrix.nextcloud-versions }} app code check
|
|
steps:
|
|
- name: Set up php7.4
|
|
uses: shivammathur/setup-php@master
|
|
with:
|
|
php-version: 7.4
|
|
extensions: ctype,curl,dom,gd,iconv,intl,json,mbstring,openssl,posix,sqlite,xml,zip
|
|
- name: Checkout Nextcloud
|
|
run: git clone https://github.com/nextcloud/server.git --recursive --depth 1 -b ${{ matrix.nextcloud-versions }} nextcloud
|
|
- name: Run tests
|
|
run: php -f nextcloud/occ maintenance:install --database-name oc_autotest --database-user oc_autotest --admin-user admin --admin-pass admin --database sqlite --database-pass=''
|
|
- name: Checkout
|
|
uses: actions/checkout@master
|
|
with:
|
|
path: nextcloud/apps/twofactor_totp
|
|
- name: Run tests
|
|
run: php -f nextcloud/occ app:check-code twofactor_totp
|
|
|
|
node-linters:
|
|
runs-on: ubuntu-latest
|
|
name: ESLint
|
|
steps:
|
|
- uses: actions/checkout@master
|
|
- name: Set up Node
|
|
uses: actions/setup-node@v1
|
|
with:
|
|
node-version: 12.x
|
|
- name: npm install
|
|
run: npm ci
|
|
- name: eslint
|
|
run: npm run lint
|
|
env:
|
|
CI: true
|