discourse-data-explorer/.github/workflows/plugin-linting.yml

67 lines
1.8 KiB
YAML
Raw Normal View History

2020-09-25 12:47:02 -04:00
name: Linting
2020-10-09 11:09:43 -04:00
on:
push:
branches:
- main
pull_request:
2020-09-25 12:47:02 -04:00
2022-01-25 05:39:43 -05:00
concurrency:
group: plugin-linting-${{ format('{0}-{1}', github.head_ref || github.run_number, github.job) }}
cancel-in-progress: true
2020-09-25 12:47:02 -04:00
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
2020-09-25 12:47:02 -04:00
2020-10-09 11:09:43 -04:00
- name: Set up Node.js
uses: actions/setup-node@v3
2020-10-09 11:09:43 -04:00
with:
node-version: 18
cache: yarn
- name: Yarn install
run: yarn install
2020-09-25 12:47:02 -04:00
2020-10-09 11:09:43 -04:00
- name: Set up ruby
uses: ruby/setup-ruby@v1
2020-10-09 11:09:43 -04:00
with:
ruby-version: 2.7
bundler-cache: true
2020-09-25 12:47:02 -04:00
2020-10-09 11:09:43 -04:00
- name: ESLint
if: ${{ !cancelled() }}
run: yarn eslint --ext .js,.js.es6 --no-error-on-unmatched-pattern {test,assets,admin/assets}/javascripts
2020-09-25 12:47:02 -04:00
2020-10-09 11:09:43 -04:00
- name: Prettier
if: ${{ !cancelled() }}
shell: bash
2020-10-09 11:09:43 -04:00
run: |
yarn prettier -v
if [ 0 -lt $(find assets admin/assets -type f \( -name "*.scss" -or -name "*.js" -or -name "*.es6" \) 2> /dev/null | wc -l) ]; then
yarn prettier --list-different "assets/**/*.{scss,js,es6}"
2020-10-09 15:03:10 -04:00
fi
if [ 0 -lt $(find test -type f \( -name "*.js" -or -name "*.es6" \) 2> /dev/null | wc -l) ]; then
yarn prettier --list-different "test/**/*.{js,es6}"
fi
2020-09-25 12:47:02 -04:00
- name: Ember template lint
if: ${{ !cancelled() }}
run: yarn ember-template-lint --no-error-on-unmatched-pattern assets/javascripts admin/assets/javascripts
2020-10-09 11:09:43 -04:00
- name: Rubocop
if: ${{ !cancelled() }}
2020-10-09 11:09:43 -04:00
run: bundle exec rubocop .
- name: Syntax Tree
if: ${{ !cancelled() }}
run: |
if test -f .streerc; then
bundle exec stree check Gemfile $(git ls-files '*.rb') $(git ls-files '*.rake')
else
echo "Stree config not detected for this repository. Skipping."
fi