This is what github actions currently uses when using ubuntu-latest, and what we recommend for new Consul Democracy installations.
43 lines
1.1 KiB
YAML
43 lines
1.1 KiB
YAML
name: linters
|
|
on: [pull_request]
|
|
|
|
permissions:
|
|
contents: read
|
|
|
|
jobs:
|
|
linters:
|
|
runs-on: ubuntu-24.04
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
include:
|
|
- name: RuboCop
|
|
run: bundle exec rubocop --fail-level convention --display-only-fail-level-offenses -f github
|
|
- name: ERB Lint
|
|
run: bundle exec erblint .
|
|
- name: ESLint
|
|
run: npx eslint . --quiet
|
|
- name: Stylelint
|
|
run: npx stylelint app/assets/stylesheets
|
|
- name: Markdownlint
|
|
run: bundle exec mdl *.md docs/
|
|
name: ${{ matrix.name }}
|
|
steps:
|
|
- name: Checkout code
|
|
uses: actions/checkout@v4
|
|
- run: |
|
|
git fetch --no-tags --prune origin +refs/heads/*:refs/remotes/origin/*
|
|
- name: Setup Ruby
|
|
uses: ruby/setup-ruby@v1
|
|
with:
|
|
bundler-cache: true
|
|
- name: Setup NPM
|
|
uses: actions/setup-node@v4
|
|
with:
|
|
cache: "npm"
|
|
node-version-file: ".node-version"
|
|
- name: Install node packages
|
|
run: npm clean-install
|
|
- name: ${{ matrix.name }}
|
|
run: ${{ matrix.run }}
|