@ -4,41 +4,34 @@ on:
push:
push:
branches:
branches:
- master
- master
- v1
tags:
- v2.*
pull_request:
pull_request:
branches:
branches:
- master
- master
- v1
jobs:
jobs:
test:
test:
strategy:
strategy:
matrix:
matrix:
os : [ ubuntu-latest, macos-latest, windows-latest]
os : [ ubuntu-latest, macos-latest, windows-latest]
go : [ 1.1 5, 1.16 , 1.17 ]
go : [ 1.1 6.x, 1.17.x, 1.18.x ]
name : ${{ matrix.os }} @ Go ${{ matrix.go }}
name : ${{ matrix.os }} @ Go ${{ matrix.go }}
runs-on : ${{ matrix.os }}
runs-on : ${{ matrix.os }}
steps:
steps:
- name : Set up Go ${{ matrix.go }}
- name : Set up Go ${{ matrix.go }}
uses : actions/setup-go@v 1
uses : actions/setup-go@v 3
with:
with:
go-version : ${{ matrix.go }}
go-version : ${{ matrix.go }}
- name : Set GOPATH, PATH and ENV
- name : Set PATH
run : |
run : echo "${GITHUB_WORKSPACE}/.local/bin" >>"${GITHUB_PATH}"
echo "GOPATH=$(dirname $GITHUB_WORKSPACE)" >> $GITHUB_ENV
echo "GO111MODULE=on" >> $GITHUB_ENV
echo "GOPROXY=https://proxy.golang.org" >> $GITHUB_ENV
echo "$(dirname $GITHUB_WORKSPACE)/bin" >> $GITHUB_PATH
shell : bash
- name : Checkout Code
- name : Checkout Code
uses : actions/checkout@v1
uses : actions/checkout@v3
with:
ref : ${{ github.ref }}
- name : GOFMT Check
- name : GOFMT Check
if : matrix.go == 1.17 && matrix.os == 'ubuntu-latest'
if : matrix.go == ' 1.17.x' && matrix.os == 'ubuntu-latest'
run : test -z $(gofmt -l .)
run : test -z $(gofmt -l .)
- name : vet
- name : vet
@ -51,8 +44,8 @@ jobs:
run : go run internal/build/build.go check-binary-size
run : go run internal/build/build.go check-binary-size
- name : Upload coverage to Codecov
- name : Upload coverage to Codecov
if : success() && matrix.go == 1.17 && matrix.os == 'ubuntu-latest'
if : success() && matrix.go == ' 1.17.x' && matrix.os == 'ubuntu-latest'
uses : codecov/codecov-action@v 1
uses : codecov/codecov-action@v 2
with:
with:
fail_ci_if_error : true
fail_ci_if_error : true
@ -61,44 +54,30 @@ jobs:
runs-on : ubuntu-latest
runs-on : ubuntu-latest
steps:
steps:
- name : Set up Go
- name : Set up Go
uses : actions/setup-go@v 1
uses : actions/setup-go@v 3
with:
with:
# Currently fails on 1.16+
go-version : 1.18 .x
go-version : 1.15
- name : Use Node.js 1 2.x
- name : Use Node.js 1 6
uses : actions/setup-node@v 1
uses : actions/setup-node@v 3
with:
with:
node-version : 12. x
node-version : '16'
- name : Set GOPATH, PATH and ENV
- name : Set PATH
run : |
run : echo "${GITHUB_WORKSPACE}/.local/bin" >>"${GITHUB_PATH}"
echo "GOPATH=$(dirname $GITHUB_WORKSPACE)" >> $GITHUB_ENV
echo "GO111MODULE=on" >> $GITHUB_ENV
echo "GOPROXY=https://proxy.golang.org" >> $GITHUB_ENV
echo "$(dirname $GITHUB_WORKSPACE)/bin" >> $GITHUB_PATH
shell : bash
- name : Checkout Code
- name : Checkout Code
uses : actions/checkout@v1
uses : actions/checkout@v3
with:
ref : ${{ github.ref }}
- name : Install Dependencies
- name : Install Dependencies
run : |
run:
mkdir -p $GOPATH/bin
mkdir -p "${GITHUB_WORKSPACE}/.local/bin" &&
curl - L -o $GOPATH/bin/gfmrun "https://github.com/urfave/gfmrun/releases/download/v1.2.14/gfmrun-$(go env GOOS)-amd64-v1.2.14"
curl - fsSL -o "${GITHUB_WORKSPACE}/.local/bin/gfmrun" "https://github.com/urfave/gfmrun/releases/download/v1.3.0/gfmrun-$(go env GOOS)-$(go env GOARCH)-v1.3.0" &&
chmod +x $GOPATH/bin/gfmrun
chmod +x "${GITHUB_WORKSPACE}/.local/bin/gfmrun" &&
npm install -g markdown-toc@1.2.0
npm install -g markdown-toc@1.2.0
- name : Run Tests (v1)
- name : gfmrun
if : contains(github.base_ref, 'v1')
run : go run internal/build/build.go gfmrun docs/v2/manual.md
run : |
go run internal/build/build.go gfmrun docs/v1/manual.md
- name : toc
go run internal/build/build.go toc docs/v1/manual.md
run : go run internal/build/build.go toc docs/v2/manual.md
- name : Run Tests (v2)
if : contains(github.base_ref, 'master')
run : |
go run internal/build/build.go gfmrun docs/v2/manual.md
go run internal/build/build.go toc docs/v2/manual.md