This repository has been archived on 2023-11-25. You can view files and clone it, but cannot push or open issues or pull requests.
kreaper/.github/workflows/go.yml

76 lines
2 KiB
YAML
Raw Normal View History

2022-04-13 19:00:32 +00:00
name: Go
on:
push:
branches:
- main
pull_request:
permissions:
contents: read
pull-requests: read
jobs:
build:
name: Build
runs-on: ubuntu-latest
steps:
- name: Set up Go
uses: actions/setup-go@v3
with:
go-version: '^1.18'
id: go
- name: Check out code into the Go module directory
uses: actions/checkout@v3
with:
lfs: true
2022-04-13 20:16:58 +00:00
- name: Install gotestsum
run: go install gotest.tools/gotestsum@latest
- name: Create out directory
run: mkdir -p ./out
- name: Run tests
run: gotestsum -- -coverprofile=out/cover.txt -shuffle=on -race -covermode=atomic ./...
2022-04-14 14:55:25 +00:00
- name: Upload coverage report
uses: codecov/codecov-action@v3
2022-04-14 14:55:25 +00:00
with:
files: out/cover.txt
name: kreaper
2022-04-13 19:00:32 +00:00
- name: golangci-lint
uses: golangci/golangci-lint-action@v3
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.
# args: --issues-exit-code=0
# 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: Run GoReleaser
uses: goreleaser/goreleaser-action@v2
with:
version: latest
args: release --rm-dist
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}