* fix: sign with cert only
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* test: coverage
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* chore: style
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* fix: empty sig
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* fix: log
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* chore: fmt
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* feat: improve universal binaries on krew/brew/gofish
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* test: OnlyReplacingUnibins
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* fix: archive
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* fix: do not replace single-arch
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* fix: artifacts.json when type is archive
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* test: fix scoop test
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* feat: allow to always log signing output
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* fix: improve code a bit
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* fix: refresh checksums
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* fix: better logs
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* fix: keep no art behavior, add more tests
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* fix: refresh in more places
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* chore: fmt
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* fix: refresh in the end
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* fix: marshal extra with refresh
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* fix: signature
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* feat: store artifact list into dist/artifacts.json
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* chore: fmt
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* feat: allow to customize release notes update behavior
closes#1384
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* fix: make it a bit better
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* fix: jsonschema
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* feat: expose .PreviousTag
* fix: previous tag will never be a commit
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* fix: tests
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* docs: tag
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* fix(brew): Remove deprecated `bottle :unneeded`
Fixes this warning from Homebrew:
`Warning: Calling bottle :unneeded is deprecated! There is no replacement.`
* fix(brew): fix regression that added newlines to formula
* feat(brew): multi-arch brew on binary archives
also fixes brew taps when archives have different binaries in each platform (e.g. some binary is only on the linux archives for some reason)
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* Update internal/pipe/brew/template.go
Co-authored-by: Radek Simko <radek.simko@gmail.com>
* fix: spacing
Co-authored-by: Radek Simko <radek.simko@gmail.com>
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
Co-authored-by: Radek Simko <radek.simko@gmail.com>
* feat(homebrew): support binary releases
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* fix: improve code
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* fix: improve code a bit
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* test: fix archive testts
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* feat(gofish): support binary releases
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* fix: improve code
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* fix(archive): binary format should have the full binary name
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* fix: added an extra field
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* refactor: put common extra keys in the artifact package
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* refactor: common extra fields have their own funcs
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* refactor: 2 more
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* fix: review
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* feat: artifacts.Remove
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* feat: fatbinary
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* feat: run fatbinary on pipeline
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* feat: make archives work with fat binaries
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* feat: make brew work with fat binaries
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* feat: make gofish work with fat binaries
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* test: archive binary fatbin
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* docs: fat binaries
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* test: fix on linux
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* feat(ci): enable fat bins on goreleaser itself
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* refactor: rename to universal binaries
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* fix: config
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* fix: rename prop
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
When using the announce feature, you might want to inform your users about the features and changes that this release brings. This change allows you to use {{ .ReleaseNotes }} in any template string, after the changelog pipeline step has been executed.
* test: speed up minio tests
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* test: speed up minio tests
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* test: speed up minio tests
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* fix: rm unused param
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* fix: use not-so-common contianer name
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* test: speed
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* test: inc coverage
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* test: inc coverage
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* feat: changelog from github
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* refactor: unifying client mocks
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* refactor: unifying client mocks
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* fix: mocks
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* test: added tests
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* fix: remove unused code
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* test: added more
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* fix: testdata
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* fix: fmt
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* test: fix
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* test: fix
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* docs: improve docs
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* refactor: unifying client mocks
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* refactor: unifying client mocks
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* feat: allow default branch to be used in gitlab
* feat: add func to get default branch
* fix: matching branch args
* feat: branch customization
* fix: fixing dummyclient naming
* refactor: remove createbranch
* feat: Adding gitlab branch customization
* feat: testing for github and gitea defaultbranch
* fix: remove dummy debug message
* fix: removing note about gitea not being supported
* feat: allow default branch to be used in gitlab
* docs: links updat
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* chore: delete kodiak.yml
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* feat: add func to get default branch
* fix: matching branch args
* feat: branch customization
* fix: docs: Missing mattermost docs on website (#2543)
* docs: update CircleCI example (#2545)
* fix: fixing dummyclient naming
* docs: some little fixes on the webpage (#2547)
* feat: some little fixes on the webpage
Signed-off-by: Batuhan Apaydın <batuhan.apaydin@trendyol.com>
* Update www/docs/overrides/home.html
Co-authored-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
* refactor: remove unused not impl error (#2540)
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* feat: add template support for homebrew tap owner (#2544)
* feat: add template support for homebrew tap name
refs #2544
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* refactor: remove createbranch
* feat: Adding gitlab branch customization
* feat: testing for github and gitea defaultbranch
* fix: remove dummy debug message
* fix: removing note about gitea not being supported
Co-authored-by: Carlos Alexandro Becker <caarlos0@gmail.com>
Co-authored-by: Engin Diri <engin.diri@mail.schwarz>
Co-authored-by: Ricardo N Feliciano <FelicianoTech@gmail.com>
Co-authored-by: Batuhan Apaydın <batuhan.apaydin@trendyol.com>
Co-authored-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
Co-authored-by: Erik Weber <terbolous@gmail.com>
* feat: allow to skip announcers
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* docs: announce.skip
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* refactor: improve brew templates
based on #2509
Co-authored-by: Engin Diri <engin.diri@mail.schwarz>
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* fix: improve templates a bit
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* refactor: improve check
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* refactor: improve less
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* refactor: improve counts
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
Co-authored-by: Engin Diri <engin.diri@mail.schwarz>
Background
---
GitLab supports
[subgroups](https://docs.gitlab.com/ee/user/group/subgroups/) so a
repository can look something like
`gitlab.com/top-level-group/sub-group/repository` for example https://gitlab.com/gitlab-com/gl-infra/jsonnet-tool.
At the moment this detection doens't work out of the box and requires
the user to set the
[`owner`](8b0781e576/.goreleaser.yml (L32-35))
Solution
---
Instead of dropping off the nested sub-groups automatically add them.
Co-authored-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
* refactor: improve middleware
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* fix: upload tests
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* fix: twitter tests
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* fix: source tests
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* fix: snapshot tests
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* test: improved some tests
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* fix: snapcraft skip
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* fix: skip slack
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* fix: skip sign
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* fix: skip scoop
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* fix: skip reddit
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* fix: skip discord
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* fix: skip publish
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* fix: skip nfpm
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* fix: skip milestone
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* fix: skip custompublishers
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* fix: skip checksums
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* fix: skip changelog
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* fix: skip brew
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* fix: skip blob
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* fix: skip before
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* fix: skip artifactory
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* fix: skip announce
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* fix: skip defaults
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* fix: cmds
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* fix: skip docker
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* chore: todo
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* fix: go.mod
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* fix: skip release
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* fix: remove old skip pipe errors
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* fix: skip teams
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* fix: skip brew
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* fix/test: skip smtp
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* fix: lint issues
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* fix: skip docker
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* fix: skip brew and scoop
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* fix: skip docker
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* fix: skip http/artifactory
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* test: increase coverage
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* test: fix
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* refactor: improve build
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* test: coverage
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
Background
---
In 5bcfa9042d the condition was changed to
that it can support the new status code returned by GitLab. However, the
condition is now checked `resp != nil` and not `resp == nil` which causes
the condition not to trigger when the resp is nil and only returns an
error. We can reproduce this issue by running
`TestGitLabCreateReleaseUknownHost` test added in this commit.
Solution
---
If we look at other error handling
91a8abb2e6/internal/client/gitlab.go (L106)
we can see that we check if the `resp` is nil as well before continuing.
Added tests for the following use cases:
- When there is an error and no response was returned.
- When there is a 403 or 404 error so we expect to create a release
first.
- When there is an unknown error (not 404, 403) we just bail.
Background
---
When a git repository is hosted in multiple GitLab instances the
`.goreleaser.yml` needs to take in consideration both APIs endpoints. At
the moment it defaults to GitLab.com and you can override it with
`gitlab_urls` however this forces you to only support 1 GitLab instance.
We need this for
https://gitlab.com/gitlab-com/gl-infra/infrastructure/-/issues/14122
where we have a tool that is developed on GitLab.com but then mirrored
to an internal GitLab instance since we need it to operate GitLab.com
even when it's down.
Solution
---
Support templates like `{{ .Env.CI_SERVER_URL }}` for the
`gitlab_urls`, `github_urls` and `gitea_urls` so it can use environment
variables and the same `.goreleaser` file can be used in multiple SCM
instances.
Co-authored-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
* feat: Add support for templating NFPM bindir
Example: Allow software to be deployed in '/usr/lib64' directory on x86_64 arch
and in '/usr/lib' directory in i386
* test: invalid bindir template
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* docs: bindir template
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
Co-authored-by: Rémi Ferrand <remi.ferrand@cc.in2p3.fr>