--- name: Lint on: [push] jobs: markdown_lint: name: "Lint Markdown" runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v2 - name: Setup Ruby uses: actions/setup-ruby@v1 - name: Install mdl run: gem install mdl - name: Lint markdown run: mdl --style .mdl_style.rb ./ markdown_link_check: name: "Check Markdown links" runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v2 - name: Check links uses: gaurav-nelson/github-action-markdown-link-check@1.0.13 with: use-verbose-mode: "yes" shellcheck: name: "Check shell scripts" runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v2 - name: ShellCheck uses: ludeeus/action-shellcheck@1.1.0 python: name: "Lint Python" runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v2 - name: Setup Python uses: actions/setup-python@v2 with: python-version: '3.10' - name: Install dependencies run: pip install flake8 mypy - name: Flake8 run: flake8 $(find . -name '*.py') - name: Mypy run: mypy --strict $(find . -name '*.py')