name: Run Tests on: pull_request: branches: - master - v1 env: GO111MODULE: on GOPROXY: https://proxy.golang.org jobs: test: strategy: matrix: os: [ubuntu-latest, macos-latest, windows-latest] go: [1.11, 1.12, 1.13] name: ${{ matrix.os }} @ Go ${{ matrix.go }} runs-on: ${{ matrix.os }} steps: - name: Set up Go ${{ matrix.go }} uses: actions/setup-go@v1 with: go-version: ${{ matrix.go }} - name: Set GOPATH and PATH run: | echo "##[set-env name=GOPATH;]$(dirname $GITHUB_WORKSPACE)" echo "##[add-path]$(dirname $GITHUB_WORKSPACE)/bin" shell: bash - name: Checkout Code uses: actions/checkout@v1 with: ref: ${{ github.ref }} - name: Install Dependencies (Linux) if: matrix.os == 'ubuntu-latest' run: | mkdir -p $GOPATH/bin curl -s https://api.github.com/repos/urfave/gfmrun/releases/latest | grep gfmrun-linux-amd64 | grep download | cut -d '"' -f 4 | wget -O $GOPATH/bin/gfmrun -i - chmod +x $GOPATH/bin/gfmrun npm install markdown-toc - name: Install Dependencies (Mac) if: matrix.os == 'macos-latest' run: | mkdir -p $GOPATH/bin curl -s https://api.github.com/repos/urfave/gfmrun/releases/latest | grep gfmrun-darwin-amd64 | grep download | cut -d '"' -f 4 | wget -O $GOPATH/bin/gfmrun -i - chmod +x $GOPATH/bin/gfmrun npm install markdown-toc - name: Install Dependencies (Windows) if: matrix.os == 'windows-latest' run: | md $GOPATH/bin choco install curl choco install wget choco install gnuwin32-coreutils.install curl -s https://api.github.com/repos/urfave/gfmrun/releases/latest | grep gfmrun-windows-amd64 | grep download | cut -d "\"" -f 4 | wget -O $GOPATH/bin/gfmrun -i - npm install markdown-toc - name: Run Tests (v1) if: contains(github.base_ref, 'v1') run: | go run build.go vet go run build.go test go run build.go gfmrun docs/v1/manual.md go run build.go toc docs/v1/manual.md - name: Run Tests (v2) if: contains(github.base_ref, 'master') run: | go run build.go vet go run build.go test go run build.go gfmrun docs/v2/manual.md go run build.go toc docs/v2/manual.md - name: Send Coverage Report if: success() env: CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }} run: bash <(curl -s https://codecov.io/bash)