name: SpellCheck on: push: branches: - main pull_request: branches: - main jobs: build: runs-on: ubuntu-20.04 name: Lint changed files steps: - uses: actions/checkout@v3 with: fetch-depth: 0 # OR "2" -> To retrieve the preceding commit. - name: Check links in all markdown files uses: gaurav-nelson/github-action-markdown-link-check@1.0.13 with: use-verbose-mode: 'yes' config-file: "scripts/markdown_link_check_config.json" - name: Get changed files id: changed-files uses: tj-actions/changed-files@v29.0.4 with: files: | **/*.py spellcheck: runs-on: ubuntu-20.04 steps: - uses: actions/checkout@v3 - name: Install dependencies run: | sudo apt-get install aspell aspell-en pip install pyspelling - name: Get changed files id: changed-files uses: tj-actions/changed-files@v29.0.4 with: files: | **/*.md - name: Check spellings run: | sources="" for file in ${{ steps.changed-files.outputs.all_changed_files }}; do sources="${sources} -S $file" done if [ ! "$sources" ]; then echo "No files to spellcheck" else pyspelling -c $GITHUB_WORKSPACE/scripts/spellcheck_conf/spellcheck.yaml --name Markdown $sources fi - name: In the case of misspellings if: ${{ failure() }} run: | echo "Please fix the misspellings. If you are sure about some of them, " echo "so append those to scripts/spellcheck_conf/wordlist.txt"