2021-02-18 20:38:32 +00:00
|
|
|
name: Lint, Test, Build
|
|
|
|
|
|
|
|
on:
|
|
|
|
push:
|
|
|
|
tags-ignore:
|
|
|
|
- 'v*'
|
|
|
|
branches:
|
|
|
|
- "**"
|
|
|
|
pull_request:
|
|
|
|
|
|
|
|
jobs:
|
|
|
|
lintTestBuild:
|
|
|
|
name: Lint, Test, Build
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
2021-04-13 22:38:36 +00:00
|
|
|
-
|
|
|
|
name: Checkout
|
2021-02-18 20:38:32 +00:00
|
|
|
uses: actions/checkout@v2
|
2021-04-13 22:38:36 +00:00
|
|
|
-
|
|
|
|
name: Setup Go
|
2021-02-18 20:38:32 +00:00
|
|
|
uses: actions/setup-go@v2
|
|
|
|
with:
|
2021-03-02 22:27:02 +00:00
|
|
|
go-version: '1.15.6'
|
2021-04-13 22:38:36 +00:00
|
|
|
-
|
|
|
|
name: Install Deps
|
2021-02-18 21:25:27 +00:00
|
|
|
id: install-deps
|
|
|
|
run: sudo apt-get -y install libpcsclite-dev
|
2021-04-13 22:38:36 +00:00
|
|
|
-
|
|
|
|
name: golangci-lint
|
|
|
|
uses: golangci/golangci-lint-action@v2
|
|
|
|
with:
|
|
|
|
# Optional: version of golangci-lint to use in form of v1.2 or v1.2.3 or `latest` to use the latest version
|
|
|
|
version: 'latest'
|
|
|
|
|
|
|
|
# Optional: working directory, useful for monorepos
|
|
|
|
# working-directory: somedir
|
|
|
|
|
|
|
|
# Optional: golangci-lint command line arguments.
|
2021-04-13 22:42:54 +00:00
|
|
|
args: --timeout=30m
|
2021-04-13 22:38:36 +00:00
|
|
|
|
|
|
|
# Optional: show only new issues if it's a pull request. The default value is `false`.
|
|
|
|
# only-new-issues: true
|
|
|
|
|
|
|
|
# Optional: if set to true then the action will use pre-installed Go.
|
|
|
|
# skip-go-installation: true
|
|
|
|
|
|
|
|
# Optional: if set to true then the action don't cache or restore ~/go/pkg.
|
|
|
|
# skip-pkg-cache: true
|
|
|
|
|
|
|
|
# Optional: if set to true then the action don't cache or restore ~/.cache/go-build.
|
|
|
|
# skip-build-cache: true
|
|
|
|
-
|
|
|
|
name: Test, Build
|
|
|
|
id: lint_test_build
|
|
|
|
run: V=1 make ci
|
|
|
|
-
|
|
|
|
name: Codecov
|
2021-02-18 20:38:32 +00:00
|
|
|
uses: codecov/codecov-action@v1.2.1
|
|
|
|
with:
|
|
|
|
token: ${{ secrets.CODECOV_TOKEN }} # not required for public repos
|
|
|
|
file: ./coverage.out # optional
|
|
|
|
name: codecov-umbrella # optional
|
|
|
|
fail_ci_if_error: true # optional (default = false)
|