Feat: Add validation support #52
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Run Tests | |
on: | |
push: | |
branches: | |
- main | |
tags: | |
- v3.* | |
pull_request: | |
branches: | |
- main | |
permissions: | |
contents: read | |
jobs: | |
test: | |
strategy: | |
matrix: | |
os: [ubuntu-latest, macos-latest, windows-latest] | |
go: [1.19.x, 1.20.x] | |
name: ${{ matrix.os }} @ Go ${{ matrix.go }} | |
runs-on: ${{ matrix.os }} | |
steps: | |
- uses: actions/setup-go@v3 | |
with: | |
go-version: ${{ matrix.go }} | |
- name: Set PATH | |
run: echo "${GITHUB_WORKSPACE}/.local/bin" >>"${GITHUB_PATH}" | |
- uses: actions/checkout@v3 | |
- if: matrix.go == '1.20.x' && matrix.os == 'ubuntu-latest' | |
run: make ensure-goimports | |
- if: matrix.go == '1.20.x' && matrix.os == 'ubuntu-latest' | |
run: make lint | |
- run: make vet | |
- run: make test | |
env: | |
GFLAGS: -tags urfave_cli_no_docs | |
- run: make test | |
- run: make check-binary-size | |
env: | |
GFLAGS: -tags urfave_cli_no_docs | |
- run: make check-binary-size | |
- if: matrix.go == '1.20.x' && matrix.os == 'ubuntu-latest' | |
run: make generate | |
- run: make diffcheck | |
- if: matrix.go == '1.20.x' && matrix.os == 'ubuntu-latest' | |
run: make v3diff | |
- if: success() && matrix.go == '1.20.x' && matrix.os == 'ubuntu-latest' | |
uses: codecov/codecov-action@v3 | |
with: | |
token: ${{ secrets.CODECOV_TOKEN }} | |
fail_ci_if_error: true | |
test-docs: | |
name: test-docs | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/setup-go@v3 | |
with: | |
go-version: 1.20.x | |
- uses: actions/setup-node@v3 | |
with: | |
node-version: '16' | |
- name: Set PATH | |
run: echo "${GITHUB_WORKSPACE}/.local/bin" >>"${GITHUB_PATH}" | |
- uses: actions/checkout@v3 | |
- run: make ensure-gfmrun | |
- run: make gfmrun | |
env: | |
FLAGS: --walk docs/v3/ | |
- run: make diffcheck | |
publish: | |
permissions: | |
contents: write | |
# TODO: switch once v3 is out of alpha {{ | |
# if: startswith(github.ref, 'refs/tags/') | |
if: 'false' | |
# }} | |
name: publish | |
needs: [test-docs] | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
with: | |
fetch-depth: 0 | |
- run: make ensure-mkdocs | |
env: | |
FLAGS: --upgrade-pip | |
- run: make set-mkdocs-remote | |
env: | |
MKDOCS_REMOTE_GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
- run: make deploy-mkdocs |