From f8f4bf23a4d0c3919a3b12fb1ce2c39342f9a129 Mon Sep 17 00:00:00 2001 From: Ahmed Date: Thu, 18 Mar 2021 23:10:22 +0100 Subject: [PATCH] Add goreleaser & a gh workflow (#503) * Add goreleaser & a gh workflow * format code --- .github/workflows/release.yml | 29 +++++++++++++++++++++++++++++ .goreleaser.yml | 35 +++++++++++++++++++++++++++++++++++ rule/blank-imports.go | 4 ++-- rule/struct-tag.go | 2 +- 4 files changed, 67 insertions(+), 3 deletions(-) create mode 100644 .github/workflows/release.yml create mode 100644 .goreleaser.yml diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml new file mode 100644 index 0000000..46706f6 --- /dev/null +++ b/.github/workflows/release.yml @@ -0,0 +1,29 @@ +name: Release + +on: + push: + tags: + - '*' + +jobs: + goreleaser: + runs-on: ubuntu-latest + steps: + - + name: Checkout + uses: actions/checkout@v2 + with: + fetch-depth: 0 + - + name: Set up Go + uses: actions/setup-go@v2 + with: + go-version: 1.16 + - + name: Run GoReleaser + uses: goreleaser/goreleaser-action@v2 + with: + version: latest + args: release --rm-dist + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} diff --git a/.goreleaser.yml b/.goreleaser.yml new file mode 100644 index 0000000..ccd80bf --- /dev/null +++ b/.goreleaser.yml @@ -0,0 +1,35 @@ +# This is an example goreleaser.yaml file with some sane defaults. +# Make sure to check the documentation at http://goreleaser.com +--- +archives: + - + replacements: + 386: i386 + amd64: x86_64 + darwin: Darwin + linux: Linux + windows: Windows +before: + hooks: + - "go mod download" + - "go generate ./..." +builds: + - + env: + - CGO_ENABLED=0 + goos: + - linux + - darwin + - windows + +changelog: + filters: + exclude: + - "^docs:" + - "^test:" + sort: asc +checksum: + name_template: checksums.txt +snapshot: + name_template: "{{ .Tag }}-next" +project_name: revive diff --git a/rule/blank-imports.go b/rule/blank-imports.go index 5e93be3..9e8b8fc 100644 --- a/rule/blank-imports.go +++ b/rule/blank-imports.go @@ -22,8 +22,8 @@ func (r *BlankImportsRule) Apply(file *lint.File, _ lint.Arguments) []lint.Failu } const ( - message = "a blank import should be only in a main or test package, or have a comment justifying it" - category = "imports" + message = "a blank import should be only in a main or test package, or have a comment justifying it" + category = "imports" embedImportPath = `"embed"` ) diff --git a/rule/struct-tag.go b/rule/struct-tag.go index 57cf810..cb3818e 100644 --- a/rule/struct-tag.go +++ b/rule/struct-tag.go @@ -168,7 +168,7 @@ func (w lintStructTagRule) checkJSONTag(name string, options []string) (string, case "": // special case for JSON key "-" if name != "-" { - return "option can not be empty in JSON tag", false + return "option can not be empty in JSON tag", false } default: return fmt.Sprintf("unknown option '%s' in JSON tag", opt), false