Skip to content

Commit

Permalink
Merge pull request #2 from LerianStudio/develop
Browse files Browse the repository at this point in the history
Develop
  • Loading branch information
lfbarrile01 authored Mar 5, 2025
2 parents 79c353a + b8fa283 commit 1d074db
Show file tree
Hide file tree
Showing 4 changed files with 271 additions and 8 deletions.
141 changes: 141 additions & 0 deletions .golangci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,141 @@
linters:
enable:
- bodyclose
- gocognit
- depguard
- dogsled
- dupword # Detects duplicate words.
- errchkjson
- gocyclo
- loggercheck
- ineffassign
- wsl
- misspell # Detects commonly misspelled English words in comments.
- nakedret
- nilerr # Detects code that returns nil even if it checks that the error is not nil.
- nolintlint # Detects ill-formed or insufficient nolint directives.
- prealloc # Detects slice declarations that could potentially be pre-allocated.
- predeclared # Detects code that shadows one of Go's predeclared identifiers
- reassign
- revive # Metalinter; drop-in replacement for golint.
- stylecheck # Replacement for golint
- tenv # Detects using os.Setenv instead of t.Setenv.
- thelper # Detects test helpers without t.Helper().
- tparallel # Detects inappropriate usage of t.Parallel().
- unconvert # Detects unnecessary type conversions.
- unparam
- unused
- usestdlibvars
- wastedassign
- errcheck

run:
timeout: 5m
tests: false

linters-settings:
depguard:
rules:
main:
deny:
- pkg: io/ioutil
desc: The io/ioutil package has been deprecated, see https://go.dev/doc/go1.16#ioutil
gocyclo:
min-complexity: 16
govet:
enable:
- shadow
settings:
shadow:
strict: true
revive:
rules:
# https://github.com/mgechev/revive/blob/master/RULES_DESCRIPTIONS.md#import-shadowing
- name: import-shadowing
severity: warning
disabled: false
# https://github.com/mgechev/revive/blob/master/RULES_DESCRIPTIONS.md#empty-block
- name: empty-block
severity: warning
disabled: false
# https://github.com/mgechev/revive/blob/master/RULES_DESCRIPTIONS.md#empty-lines
- name: empty-lines
severity: warning
disabled: false
# https://github.com/mgechev/revive/blob/master/RULES_DESCRIPTIONS.md#use-any
- name: use-any
severity: warning
disabled: false
issues:
# The default exclusion rules are a bit too permissive, so copying the relevant ones below
exclude-use-default: false
exclude:
- parameter .* always receives
exclude-rules:
# We prefer to use an "exclude-list" so that new "default" exclusions are not
# automatically inherited. We can decide whether or not to follow upstream
# defaults when updating golang-ci-lint versions.
# Unfortunately, this means we have to copy the whole exclusion pattern, as
# (unlike the "include" option), the "exclude" option does not take exclusion
# ID's.
#
# These exclusion patterns are copied from the default excluses at:
# https://github.com/golangci/golangci-lint/blob/v1.44.0/pkg/config/issues.go#L10-L104
# EXC0001
- text: "Error return value of .((os\\.)?std(out|err)\\..*|.*Close|.*Flush|os\\.Remove(All)?|.*print(f|ln)?|os\\.(Un)?Setenv). is not checked"
linters:
- errcheck
# EXC0003
- text: "func name will be used as test\\.Test.* by other packages, and that stutters; consider calling this"
linters:
- revive
# EXC0006
- text: "Use of unsafe calls should be audited"
linters:
- gosec
# EXC0007
- text: "Subprocess launch(ed with variable|ing should be audited)"
linters:
- gosec
# EXC0008
- text: "G307"
linters:
- gosec
# EXC0009
- text: "(Expect directory permissions to be 0750 or less|Expect file permissions to be 0600 or less)"
linters:
- gosec
# EXC0010
- text: "Potential file inclusion via variable"
linters:
- gosec
- text: "G113"
linters:
- gosec
- text: "G104"
linters:
- gosec
- text: "G204: Subprocess launched with a potential tainted input or cmd arguments"
linters:
- gosec
- text: "G306: Expect WriteFile permissions to be 0600 or less"
linters:
- gosec
- text: "package-comments: should have a package comment"
linters:
- revive
- path: _test\.go
linters:
- errcheck
- gosec
- text: "ST1000: at least one file in a package should have a package comment"
linters:
- stylecheck
# Allow "err" and "ok" vars to shadow existing declarations, otherwise we get too many false positives.
- text: '^shadow: declaration of "(err|ok)" shadows declaration'
linters:
- govet
# Maximum issues count per one linter. Set to 0 to disable. Default is 50.
max-issues-per-linter: 0
# Maximum count of issues with the same text. Set to 0 to disable. Default is 3.
max-same-issues: 0
73 changes: 73 additions & 0 deletions .goreleaser.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
version: 2

builds:
- id: "auth"
env:
- CGO_ENABLED=0
main: ./cmd
binary: auth

goos:
- linux
- windows
- darwin
- freebsd

goarch:
- "386"
- amd64
- arm
- ppc64

goarm:
- "7"

archives:
- format: zip

nfpms:
- id: packages
license: Apache-2.0 license
maintainer: Lerian Studio Technologies <https://github.com/LerianStudio/>
package_name: auth
homepage: https://github.com/LerianStudio/auth
bindir: /usr/local/bin
formats:
- apk
- deb
- rpm
- archlinux

changelog:
sort: asc
filters:
exclude:
- "merge conflict"
- Merge pull request
- Merge remote-tracking branch
- Merge branch
- go mod tidy
groups:
- title: "Breaking Changes"
regexp: "^.*breaking[(\\w)]*:+.*$"
order: 0
- title: "New Features"
regexp: "^.*feat[(\\w)]*:+.*$"
order: 10
- title: "Improvements"
regexp: "^.*chore[(\\w)]*:+.*$"
order: 20
- title: "Bug Fixes"
regexp: "^.*fix[(\\w)]*:+.*$"
order: 30
- title: "Security Updates"
regexp: '^.*?sec(\([[:word:]]+\))??!?:.+$'
order: 40
- title: "Documentation Updates"
regexp: ^.*?docs(\([[:word:]]+\))??!?:.+$
order: 50
- title: "Tests"
regexp: ^.*?(test(s)?(\([[:word:]]+\))?)!?:.+$
order: 60
- title: Other Work
order: 999
59 changes: 51 additions & 8 deletions .releaserc.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,15 +9,58 @@ plugins:
"releaseRules":
[
{ "type": "feat", "release": "minor" },
{ "type": "fix", "release": "patch" },
{ "type": "refactor", "release": "patch" },
{ "type": "perf", "release": "minor" },
{ "type": "build", "release": "minor" },
{ "type": "chore", "release": "patch" },
{ "type": "ci", "release": "patch" },
{ "type": "test", "release": "patch" },
{ "type": "fix", "release": "minor" },
{ "type": "refactor", "release": "minor" },
{ "type": "docs", "release": "patch" },
{ "breaking": true, "release": "major" },
],
},
{ "breaking": true, "release": "major" }
]
}
],
"@semantic-release/release-notes-generator",
"@semantic-release/github",
[
"@semantic-release/release-notes-generator",
{
"preset": "conventionalcommits",
"parserOpts": {
"noteKeywords": ["BREAKING CHANGE", "BREAKING CHANGES", "BREAKING"]
},
"writerOpts": {
"commitsSort": ["subject", "scope"]
}
}
],
[
"@semantic-release/changelog",
{
"changelogFile": "CHANGELOG.md"
}
],
[
"@semantic-release/git",
{
"message": "chore(release): ${nextRelease.version}\n\n${nextRelease.notes}",
"assets": ["CHANGELOG.md"]
}
],
[
"@semantic-release/github"
],
[
"@saithodev/semantic-release-backmerge",
{
"backmergeBranches": [{"from": "main", "to": "develop"}],
"message": "chore(release): Preparations for next release [skip ci]"
}
]
]

branches:
- "main"
- main
- name: develop
prerelease: "beta"
- name: hotfix/*
prerelease: "hf"
6 changes: 6 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
## [1.1.0-beta.1](https://github.com/LerianStudio/auth-sdk/compare/v1.0.10...v1.1.0-beta.1) (2025-03-05)


### Features

* organize workflow ([a1256b1](https://github.com/LerianStudio/auth-sdk/commit/a1256b19e8db9897ef894d3dc481792e38de6de0))

0 comments on commit 1d074db

Please sign in to comment.