name: ci on: push: branches: [master] pull_request: branches: [master] jobs: lint: runs-on: 'ubuntu-latest' steps: - name: 'Get Changed Files' id: 'files' uses: 'masesgroup/retrieve-changed-files@v2' with: format: 'json' # a force push will cause the action above to fail. Don't do force push when people are # reviewing! - name: Check out code. uses: actions/checkout@v3 - name: 'Check EditorConfig Lint' run: | sudo apt install -y jq golang go install 'github.com/editorconfig-checker/editorconfig-checker/cmd/editorconfig-checker@latest' readarray -t changed_files <<<"$(jq -r '.[]' <<<'${{ steps.files.outputs.added_modified }}')" ~/go/bin/editorconfig-checker ${changed_files[@]} typo: runs-on: ubuntu-latest steps: - name: Check out code. uses: actions/checkout@v3 - name: spell check run: | pip install codespell==2.2 git grep --cached -l '' | grep -v -e 'History\.md' -e 'AUTHORS' -e 'man/.*\.1' -e 'man/.*\.html' | xargs codespell --ignore-words=.github/.ignore_words build: strategy: fail-fast: false matrix: platform: - ubuntu-latest - macos-latest runs-on: ${{ matrix.platform }} steps: - name: Check out code. uses: actions/checkout@v3 - name: Linux Install if: matrix.platform == 'ubuntu-22.04' run: | sudo apt-get install -y bsdmainutils - name: Script run: | ./check_integrity.sh $(find bin | cut -b 5- | xargs) - name: Brew release if: matrix.platform == 'macos-latest' run: | mkdir ../release && git archive --format=tar.gz HEAD > ../release/git-extras-release.tar.gz cd ../release tar -xzf git-extras-release.tar.gz && make PREFIX=$(pwd) INSTALL_VIA=brew ./bin/git-extras update | grep "brew upgrade git-extras"