diff --git a/.github/dependabot.yml b/.github/dependabot.yml index 3938344..d30f881 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -4,3 +4,7 @@ updates: directory: "/" schedule: interval: "daily" + - package-ecosystem: "github-actions" + directory: "/" + schedule: + interval: "daily" diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml new file mode 100644 index 0000000..fb6ee77 --- /dev/null +++ b/.github/workflows/ci.yaml @@ -0,0 +1,49 @@ +--- +on: + pull_request: {} + push: + branches: + - "main" + tags: + - "v*" + +env: + GO_VERSION: "1.16" + +jobs: + build: + runs-on: "ubuntu-latest" + steps: + - uses: "actions/checkout@v2" + - uses: "actions/cache@v2" + with: + path: "~/go/pkg/mod" + key: "${{ runner.os }}-gomod-${{ hashFiles('**/go.sum') }}" + restore-keys: | + ${{ runner.os }}-gomod- + + - uses: "actions/setup-go@v2" + with: + go-version: "${{ env.GO_VERSION }}" + - run: "go build ./..." + + lint: + runs-on: "ubuntu-latest" + steps: + - uses: "actions/checkout@v2" + - uses: "golangci/golangci-lint-action@v2" + + test: + needs: "build" + runs-on: "ubuntu-latest" + steps: + - uses: "actions/checkout@v2" + - uses: "actions/cache@v2" + with: + path: "~/go/pkg/mod" + key: "${{ runner.os }}-gomod-${{ hashFiles('**/go.sum') }}" + + - uses: "actions/setup-go@v2" + with: + go-version: "${{ env.GO_VERSION }}" + - run: "go test ./..." diff --git a/.golangci.yaml b/.golangci.yaml new file mode 100644 index 0000000..28bc372 --- /dev/null +++ b/.golangci.yaml @@ -0,0 +1,21 @@ +--- +linters: + disable-all: true + enable: + - "deadcode" + - "errcheck" + - "errorlint" + - "gofmt" + - "gosimple" + - "govet" + - "ineffassign" + - "makezero" + - "misspell" + - "nakedret" + - "nilerr" + - "staticcheck" + - "structcheck" + - "unconvert" + - "unparam" + - "unused" + - "varcheck"