2021-02-09 18:48:59 +03:00
|
|
|
name: Test
|
|
|
|
|
|
|
|
on:
|
|
|
|
push:
|
|
|
|
pull_request:
|
2022-09-16 23:23:19 +03:00
|
|
|
workflow_dispatch:
|
2021-02-09 18:48:59 +03:00
|
|
|
|
|
|
|
env:
|
|
|
|
GO111MODULE: on
|
|
|
|
|
2022-10-03 17:53:12 +03:00
|
|
|
permissions:
|
|
|
|
contents: read
|
|
|
|
|
2021-02-09 18:48:59 +03:00
|
|
|
jobs:
|
|
|
|
|
2022-09-16 14:55:56 +03:00
|
|
|
|
|
|
|
lic-headers:
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
|
|
|
|
|
|
- uses: actions/checkout@v3
|
|
|
|
|
|
|
|
- run: >-
|
|
|
|
docker run
|
|
|
|
-v $(pwd):/wrk -w /wrk
|
|
|
|
ghcr.io/google/addlicense
|
|
|
|
-c 'The Cobra Authors'
|
|
|
|
-y '2013-2022'
|
|
|
|
-l apache
|
|
|
|
-ignore '.github/**'
|
|
|
|
-check
|
|
|
|
.
|
|
|
|
|
|
|
|
|
2021-12-08 02:06:09 +03:00
|
|
|
golangci-lint:
|
2022-10-03 17:53:12 +03:00
|
|
|
permissions:
|
|
|
|
contents: read # for actions/checkout to fetch code
|
|
|
|
pull-requests: read # for golangci/golangci-lint-action to fetch pull requests
|
2021-12-08 02:06:09 +03:00
|
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
|
|
|
2022-09-14 06:31:59 +03:00
|
|
|
- uses: actions/checkout@v3
|
|
|
|
|
2022-06-16 01:08:55 +03:00
|
|
|
- uses: actions/setup-go@v3
|
2021-12-08 02:06:09 +03:00
|
|
|
with:
|
2023-03-06 05:11:33 +03:00
|
|
|
go-version: '^1.20'
|
2022-08-30 04:35:16 +03:00
|
|
|
check-latest: true
|
2022-09-14 06:31:59 +03:00
|
|
|
cache: true
|
2021-12-08 02:06:09 +03:00
|
|
|
|
2022-03-26 18:50:12 +03:00
|
|
|
- uses: actions/checkout@v3
|
2021-12-08 02:06:09 +03:00
|
|
|
|
2023-02-12 04:27:13 +03:00
|
|
|
- uses: golangci/golangci-lint-action@v3.4.0
|
2021-12-08 02:06:09 +03:00
|
|
|
with:
|
|
|
|
version: latest
|
|
|
|
args: --verbose
|
2021-02-09 18:48:59 +03:00
|
|
|
|
2022-09-16 14:55:56 +03:00
|
|
|
|
2021-02-09 18:48:59 +03:00
|
|
|
test-unix:
|
|
|
|
strategy:
|
|
|
|
fail-fast: false
|
|
|
|
matrix:
|
|
|
|
platform:
|
|
|
|
- ubuntu
|
|
|
|
- macOS
|
|
|
|
go:
|
2021-08-26 06:18:53 +03:00
|
|
|
- 17
|
2022-03-17 13:26:10 +03:00
|
|
|
- 18
|
2022-08-30 04:35:16 +03:00
|
|
|
- 19
|
2023-03-06 05:11:33 +03:00
|
|
|
- 20
|
2021-08-26 06:18:53 +03:00
|
|
|
name: '${{ matrix.platform }} | 1.${{ matrix.go }}.x'
|
2021-02-09 18:48:59 +03:00
|
|
|
runs-on: ${{ matrix.platform }}-latest
|
|
|
|
steps:
|
|
|
|
|
2022-03-26 18:50:12 +03:00
|
|
|
- uses: actions/checkout@v3
|
2021-02-09 18:48:59 +03:00
|
|
|
|
2022-09-14 06:31:59 +03:00
|
|
|
- uses: actions/setup-go@v3
|
2021-02-09 18:48:59 +03:00
|
|
|
with:
|
2022-09-14 06:31:59 +03:00
|
|
|
go-version: 1.${{ matrix.go }}.x
|
|
|
|
cache: true
|
2021-02-09 18:48:59 +03:00
|
|
|
|
|
|
|
- run: |
|
|
|
|
export GOBIN=$HOME/go/bin
|
2022-12-10 00:57:19 +03:00
|
|
|
go install github.com/kyoh86/richgo@latest
|
|
|
|
go install github.com/mitchellh/gox@latest
|
2021-02-09 18:48:59 +03:00
|
|
|
|
2022-11-25 23:55:09 +03:00
|
|
|
- run: RICHGO_FORCE_COLOR=1 PATH=$HOME/go/bin/:$PATH make richtest
|
2021-02-09 18:48:59 +03:00
|
|
|
|
2022-09-16 14:55:56 +03:00
|
|
|
|
2021-02-09 18:48:59 +03:00
|
|
|
test-win:
|
|
|
|
name: MINGW64
|
|
|
|
defaults:
|
|
|
|
run:
|
|
|
|
shell: msys2 {0}
|
|
|
|
runs-on: windows-latest
|
|
|
|
steps:
|
|
|
|
|
|
|
|
- shell: bash
|
|
|
|
run: git config --global core.autocrlf input
|
|
|
|
|
|
|
|
- uses: msys2/setup-msys2@v2
|
|
|
|
with:
|
|
|
|
msystem: MINGW64
|
|
|
|
update: true
|
|
|
|
install: >
|
|
|
|
git
|
|
|
|
make
|
|
|
|
unzip
|
|
|
|
mingw-w64-x86_64-go
|
|
|
|
|
2022-03-26 18:50:12 +03:00
|
|
|
- uses: actions/checkout@v3
|
2021-02-09 18:48:59 +03:00
|
|
|
|
2022-03-25 18:44:51 +03:00
|
|
|
- uses: actions/cache@v3
|
2021-02-09 18:48:59 +03:00
|
|
|
with:
|
|
|
|
path: ~/go/pkg/mod
|
|
|
|
key: ${{ runner.os }}-${{ matrix.go }}-${{ hashFiles('**/go.sum') }}
|
|
|
|
restore-keys: ${{ runner.os }}-${{ matrix.go }}-
|
|
|
|
|
|
|
|
- run: |
|
|
|
|
export GOBIN=$HOME/go/bin
|
2021-05-03 19:08:39 +03:00
|
|
|
go install github.com/kyoh86/richgo@latest
|
|
|
|
go install github.com/mitchellh/gox@latest
|
2021-02-09 18:48:59 +03:00
|
|
|
|
2022-11-25 23:55:09 +03:00
|
|
|
- run: RICHGO_FORCE_COLOR=1 PATH=$HOME/go/bin:$PATH make richtest
|