1
0
mirror of https://github.com/goreleaser/goreleaser.git synced 2025-07-01 00:54:57 +02:00

57 Commits

Author SHA1 Message Date
0468da12fd feat: default GOARM change to 7 (#5157)
Guarded by an environment variable for now.

Closes #5155
2024-09-27 13:31:29 -03:00
e8da87cecb feat(tmpl): IsSingleTarget (#5122)
refs #5024

Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
2024-09-07 11:09:21 -03:00
ec2db4a727 feat!: rename module to /v2 (#4894)
<!--

Hi, thanks for contributing!

Please make sure you read our CONTRIBUTING guide.

Also, add tests and the respective documentation changes as well.

-->


<!-- If applied, this commit will... -->

...

<!-- Why is this change being made? -->

...

<!-- # Provide links to any relevant tickets, URLs or other resources
-->

...

---------

Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
2024-05-26 15:02:57 -03:00
12469c4251 feat: store which action is being taken in the context (#4508)
refs #4504

Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
2023-12-29 15:22:03 -03:00
25a054c5e1 feat: improve --single-target (#4442)
closes #4437 
closes #4426

---------

Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
2023-11-27 18:29:50 -03:00
622c426eb3 refactor: --skip=item (#4272)
Laying the ground work to allow skipping more pipes without adding new
flags et al.

---------

Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
2023-09-16 17:01:20 -03:00
73e59160de test: use t.Setenv to set env vars (#4140)
We have been using `t.Setenv` is most of our tests. This PR replaces the
remaining `os.Setenv` with `t.Setenv`.

Reference: https://pkg.go.dev/testing#T.Setenv

```go
func TestFoo(t *testing.T) {
	// before
	os.Setenv(key, "new value")
	defer os.Unsetenv(key)
	
	// after
	t.Setenv(key, "new value")
}
```

---------

Signed-off-by: Eng Zer Jun <engzerjun@gmail.com>
2023-06-25 09:54:10 -03:00
72cf8404c1 feat: continue on error (#4127)
closes #3989

Basically, when some of these pipes fail, the error will be memorized,
and all errors will be thrown in the end.

Meaning: the exit code will still be 1, but it'll not have stopped in
the first error.

Thinking of maybe adding a `--fail-fast` flag to disable this behavior
as well 🤔

---------

Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
2023-06-20 09:33:59 -03:00
4330b522ea feat: IsGitDirty template variable (#3967)
will only ever be true on snapshots or when ran with `--skip-validate`.
This should be useful as a ldflag, for example.
2023-05-02 01:04:18 -03:00
e6159a1283 fix: remove unused field (#3817)
this is not being used, so... let's delete

Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>
2023-03-01 14:47:17 -03:00
2634fbdad4 fix: race condition on artifacts.List (#3813)
I have no idea why this never happened before... the lock was
ineffective in `artifacts.List`, which should have caused at least some
race condition at some point.

Anyway, got it once locally while working on another feature, and
couldn't believe my eyes.

Fixed, thank goodness!

Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>
2023-03-01 01:05:30 -03:00
4954815ae4 fix: improve handling of --rm-dist deprecation (#3728)
- improved how we handle `--rm-dist` deprecation so it looks more like
other deprecations
- improved deprecation error message a bit as well

Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>
2023-01-29 00:24:11 -03:00
2450746e5c feat: add ko support (#3653)
continuing the PR by @developer-guy 


- [x] should be a publisher, as it does publish the images it builds
every time
- [x] `Default` method does not work
- [x] the `fromConfig` thing should probably be on the defaults, too
- [x] wire `--skip-ko`
- [x] documentation
- [x] more tests
- [x] use same registry as docker tests does
- [ ] see if we can make the log output match goreleaser's
- [ ] ??

closes #2556
closes #3490

Signed-off-by: Batuhan Apaydın <batuhan.apaydin@trendyol.com>
Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>
Co-authored-by: actions-user <actions@github.com>
Co-authored-by: Jason Hall <jason@chainguard.dev>
Co-authored-by: Batuhan Apaydın <batuhan.apaydin@trendyol.com>
2023-01-16 22:34:49 -03:00
da2335791a fix: native changeloger without previous tag (#3668)
closes #3662

Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>
2022-12-29 10:41:59 -03:00
8cb4eb1654 fix: ruleguard and semgrep scans and fixes (#3364)
run semgrep-go ruleguard and semgrep scans

https://github.com/dgryski/semgrep-go

Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>
2022-09-11 15:32:23 -03:00
d79484ef1d feat: added --skip-before flag (#3182)
* feat: added --skip-before flag

this would allow to skip global before hooks

Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>

* fix: skip docker test

Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>
2022-06-22 21:56:53 -03:00
ae399220ef feat: add --skip-docker (#3176)
Allow to skip the entire docker images and manifests builds.

Might be useful for faster local builds et al.

closes #3144

Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>
2022-06-22 21:39:20 -03:00
9efea360b9 refactory: make easier to manage merges with pro (#3178)
* refactory: improve cmd code

Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>

* fix: improve time reporting

Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>

* fix: improve artifacts json

Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>

* fix: improve artifacts json

Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>

* fix: diffs

Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>

* docs: improve root cmd help

Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>
2022-06-22 01:48:11 -03:00
077ce16174 feat: more go 1.18 (#2984)
* feat: more go 1.18

moved more workflows to go 1.18, switched some code to strings.Cut

Signed-off-by: Carlos A Becker <caarlos0@gmail.com>

* revert unwanted change
2022-03-16 23:28:13 -03:00
d295d0bdff feat: annotated tag body (#2923)
* feat: annotated tag body

this adds another template variable, `TagBody`, with the body of the annotated tag/commit message only.

Signed-off-by: Carlos A Becker <caarlos0@gmail.com>

* refactor: tag contents

Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
2022-02-24 22:57:51 -03:00
9d481d4630 feat: expose runtime goos and goarch on templates and metadata (#2859)
* feat: expose runtime goos and goarch on templates and metadata

* test: fix duplicated map literal in some os/arch

Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
2022-01-31 22:36:22 -03:00
bfdec808ab feat: add sbom generation pipe (#2648)
Signed-off-by: Alex Goodman <alex.goodman@anchore.com>

Co-authored-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
2021-12-12 00:21:51 -03:00
6ea7fb792a feat: annotated tag contents (#2744)
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
2021-12-06 16:52:26 -03:00
9b9eef04a2 feat: get annotated tag message (#2730)
refs  #2726

Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
2021-12-05 23:23:15 -03:00
274ffae03c feat: add git summary support (aka git describe --dirty --tags --always) (#2700)
* feat: add git summary support (aka git describe --dirty --tags --always)

* feat: update documentation for new summary template variable

* test: add tests for new summary feature
2021-11-25 03:01:56 +00:00
cd261a527a feat: allow to use .PreviousTag on templates (#2683)
* 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>
2021-11-24 09:12:24 -03:00
312e52a760 feat: sign with env and output certificate (#2662)
* feat: sign with env and output certificate

* fix: test

* fix: prop name

* test: blob upload

* test: http upload

* test: exec

* test: sign
2021-11-11 22:56:03 -03:00
a2ba9cb8fa refactor: release url (#2637)
* refactor: release url

* chore: fmt

* chore: less diffs

* docs: lowercase everything

* chore: improve fmt

* chore: revert
2021-11-06 16:54:01 -03:00
b99ccc029c feat: add message template support for git providers (#2626)
* feat: add message template support for git providers

Co-authored-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
Signed-off-by: Batuhan Apaydın <batuhan.apaydin@trendyol.com>
Co-authored-by: Furkan Türkal <furkan.turkal@trendyol.com>
Co-authored-by: Erkan Zileli <erkan.zileli@trendyol.com>
Signed-off-by: Batuhan Apaydın <batuhan.apaydin@trendyol.com>

* Apply suggestions from code review

Co-authored-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
Co-authored-by: Furkan Türkal <furkan.turkal@trendyol.com>
Co-authored-by: Erkan Zileli <erkan.zileli@trendyol.com>
2021-11-06 15:39:43 -03:00
89e5a4ebf1 feat: changelog from github (#2548)
* 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>
2021-10-04 09:32:30 -03:00
c739724f12 refactor: unifying client mocks (#2549)
* 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>
2021-10-03 13:24:20 -03:00
39e5792993 fix: env templates
closes #2281

Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
2021-06-04 18:11:29 +00:00
a2d7ccad2f feat: --skip-announce (#2249) 2021-05-25 00:45:59 -03:00
9913fe7db6 feat: template release notes (#2242)
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
2021-05-21 21:07:47 -03:00
860b4a8f81 chore: gofumpt & lint (#2190)
Signed-off-by: Carlos Becker <caarlos0@gmail.com>
2021-04-25 14:20:49 -03:00
7378edc708 feat: allow to use ModulePath on templates (#2128)
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
2021-03-22 08:55:01 -03:00
f417d7783d feat: add support for git branch in templates (#1906)
Add a `.Branch` field to the text templates populated by the current git
branch.

Signed-off-by: Ben Kochie <superq@gmail.com>

Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
2020-11-18 18:50:31 +00:00
979f8632b7 refactor: use require on all tests (#1839)
* refactor: use require on all tests

Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>

* refactor: use require on all tests

Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>

Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
2020-10-06 12:48:04 +00:00
0d4f605388 feat: deterministic / reproducible build support (#1641)
* Make checksum ordering consistent

* Use consistent time for build date

* Add commit date to templates

* Add config option for build mod timestamp

* Make goreleaser builds reproducible

* Fix error in wording

* Update www/docs/customization/build.md
2020-07-06 17:09:22 -03:00
69c8a502db chore(deps): bump github.com/golangci/golangci-lint from 1.23.7 to 1.27.0 (#1563)
* chore(deps): bump github.com/golangci/golangci-lint from 1.23.7 to 1.27.0

Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>

* fix: tests

Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
2020-05-26 00:48:10 -03:00
363aa74dcb feat: Expose semver for snapshots (#1557) 2020-05-24 15:05:49 +00:00
983f342ab8 feat: Add build command (#1520)
* feat: Add build command

* feat(cmd/build): Add skip-post-hooks flag

* Update internal/pipeline/pipeline.go

Co-authored-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>

Co-authored-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
2020-05-15 11:19:20 -03:00
a5f0343368 feat: improve check command (#1435)
* feat: improve check command

Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>

* fix: main test

Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>

* fix: tests

Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>

* fix: tests, finally

Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>

* fix: lint

Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
2020-04-12 14:31:35 -03:00
181799c9c8 feat(sign): id, concurrent map (#1321)
* feat(sign): id, concurrent map

Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>

* fix: more tests

Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>

* fix: comments

Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
2020-01-30 00:21:45 -03:00
16cb4d8277 feat: Added new flags to support release notes header and footer. (#1212)
* Added new flags to support release notes header and footer.

Created two flags for release generation.
--release-footer
--release-header
These flags can help you to add custom changelog text before/after changes that are generated by git log.

* Fix changelog.go to avoid lint errors

* Fix test typo

* Added tests for main, fixed bug with no passing options to release ctx

* Add @caarlos0  suggestions
2019-11-15 10:22:11 -03:00
50235f2974 chore(deps): bump all (#1174)
* chore(deps): bump

Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>

* chore(deps): bump semver

Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>

* chore(deps): bump cors

Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
2019-10-06 12:39:53 -03:00
eb40d8682b feat: gitea release support (#1114)
* adds gitea release support
* closes #1106
2019-08-26 09:31:38 +02:00
e92bbe32ce feat: full gitlab support for brew and scoop (#1084)
* makes context tokentype a public var

* passes artifacts object into client upload function. extracts gitlab upload hash from url

* adds gitlab url to brew config

* build brew formula depending on token type

* fixes client for release tests

* fixes exiting brew tests

* fixes scoop test with dummy client adaption

* uses new artifact upload hash

* fixes brew usage

* updates gitlab createFile for brew

* fixes logging for non-existing file in gitlab logging

* fix: gitlab createFile

* fix: removes encoding from gitlab create and update file opts

* fix: gitlab upload and artifact set upload hash

* fix: linter

* changed artifact item to a pointer in ctx

* docs: updates homebrew

* feat: enables scoop for gitlab release

* fix: scoop panic for pointer access

* chore: rename formula build func for brew

* chore: brew removes comments

* fix: brew tests

* test: updates brew tests

* docs: updates homebrew

* test: for token type not implemented for brew

* tests: for multiple linux builds

* fix: build artifacts are pointer in scoop

* test: for scoop and gitlab

* test: for artifacts set upload hash

* adds missing files after adaption

* chore: removes and clarifies comments

* fix: moves artifact upload hash to extra map

* adds comment why we initialize the extra map
2019-08-13 15:28:03 -03:00
eb7ba2a294 feat: add gitlab for releases (#1038)
* outlines gitlab client integration

* makes client parameter more explicit

* adds gitlab url to config

* changes releaseID to string to adapt to gitlab

* updates to latest gitlab client lib 0.18

* fixes copy paster in gitlab upload func

* fixes gitlab typo in config

* adds gitlab token to env and context

* release now uses the client factory method

* skips brew pipe if it is not a github release

* add github tokentype to publish tests

* skips scoop pipe if it is not a github release

* corrects brew skip msg

* adds gitlab token to main test

* adds gitlab to release docs

* validates config and errors accordingly

* adapt release pipe name to include gitlab

* fixes gitlab client after testing

* moves not-configured brew and scoop pipe checks as first check

* adds more debug to gitlab client

* adapts changelog generation for gitlab markdown

* adds debug log for gitlab changelog

* env needs to run before changelog pipe

* moves gitlab default download url to default pipe

* moves multiple releases check to from config to release pipe

* release differs now for github and gitlab

* adds debug gitlab release update msgs

* moves env pipe as second after before because it determines the token type other pipes depend on

* adaptes error check on gitlab release creation

* Revert "adaptes error check on gitlab release creation"

This reverts commit 032024571c.

* simplifies gitlab client logic. removes comments

* skips tls verification for gitlab client if specified in config

* updates the docs

* adds clarification that brew and scoop are not supported if it is a gitlab release

* fixes copy paster in release.md

* adds missing blob pipe in defaults and publish due to missing in merge

* updates comment in gitlab client
2019-06-29 11:02:40 -03:00
310bf450a8 fix: all envs allowed on build template (#992) 2019-04-09 09:15:05 -03:00