1
0
mirror of https://github.com/goreleaser/goreleaser.git synced 2025-07-03 00:57:43 +02:00
Commit Graph

368 Commits

Author SHA1 Message Date
a77ed9aafd docs: fix example env var name on scoop docs (#3068) 2022-04-26 12:11:43 -03:00
69cf1aa887 feat: first class build targets (#3062)
Adds the ability to tell goreleaser to use the first-class Go ports as
targets.

Closes #3053

Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
2022-04-25 22:07:28 -03:00
5aeb8ace61 fix: prevent folder collisions in builds and universal binaries (#3063)
- on universal binaries, use the build id instead of the binary name to
  create the folder in the dist folder
- on builds, default the id the to the binary name instead of project
  name. The binary name already defaults to the project id if empty, so
  this should only prevent having to specify the id + binary name in
  some cases.

closes #3061

Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
2022-04-25 22:07:14 -03:00
30630bfc7f feat: add builds.no_main_check and builds.command (#3064)
* feat: add builds.no_main_check and builds.command

Added two more options to the builds section:
- command: allow to override the command being run. E.g. instead of
  `go build`, one could run `go test -c` by setting gobinary, command
  and flags, respectively.
- no_main_check: by default, goreleaser will fail if there's no main
  function. This option allows to disable that check.

This PR effectively make GoReleaser able to release Go test binaries
instead of just "regular" binaries.

closes #3037

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

* test: fix broken tests

Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
2022-04-25 22:07:02 -03:00
38bc6b504e docs: fix typos (#3054) 2022-04-19 19:34:24 -03:00
16f7e0d172 docs: clarify release.skip behavior
It skips the entire SCM release, not  only the artifact upload.

Closes #3051

Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
2022-04-19 09:06:12 -03:00
d513b708d0 docs: improve goamd64 docs
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
2022-04-15 23:26:15 -03:00
3e8b848e44 docs: nightlies
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
2022-04-14 14:57:13 -03:00
d8a283ab87 docs: pluralize
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
2022-04-14 14:23:09 -03:00
e3a50e7b9d docs: note goamd64 and nfpm conventional file names
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
2022-04-13 23:44:17 -03:00
53bbc6546f fix: goamd64 should allow the only range from v1 to v4
It was just allowing v2 and v3 due to some misreading on my side.
This commit fixes it to allow v1, v2, v3 and v4.

refs #3016

Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
2022-04-13 21:30:08 -03:00
9dfade2558 fix: nfpm default build ids to empty 2022-04-11 23:59:52 -03:00
b0583c700b feat: support GOAMD64 (#3016)
* feat: support GOAMD64

* fix: test

* wip

* wip: docker et al

* fix: archive format name

* test: added new test

* feat: nfpm amd4, mips et al

* chore: rm unused file

* fix: brew for multiple goamd64

* fix: krew

* feat: aur

* feat: krew

* docs: brew

* feat: gofis

* feat: scoop

* fix: docker filters

* fix: snapcraft

* fix: improve diff a bit

* fix: snapcraft name template
2022-04-11 22:43:22 -03:00
3df29b67ab feat: deprecate gofish (#2999)
* feat: deprecate gofish

gofish was deprecated by its authors, this deprecates it here too

refs https://github.com/goreleaser/goreleaser/discussions/2998

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

* fix: do not publish rig anymore

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

* docs: remove install

* chore: deprecate

* fix(gofish): fix broke logs

Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
2022-04-02 10:41:05 -03:00
905a1640f1 feat(announce): added Slack notification options (#2988)
* feat(announce): added Slack notification options

This feature adds support for specifying a richer content in Slack
announcements. We may now specify "blocks" and "attachments" to produce
better-looking announcement messages.

* fixes #2986

The goreleaser configuration only exposes the top-level structures and does not
check the validity of the Slack API internal structures. This way, we do
not inject hard dependencies on changes in the Slack API.

Notice: untyped config parsing introduces a little hack to have yaml and
JSON marshaling work together properly. This hack won't be necessary
with yaml.v3.

How this has been tested?
-------------------------

* Added unit tests for the config parsing
* Added a (skipped) e2e test.
  For now, this requires a valid Slack webhook, so I've been able to test this manually.

Signed-off-by: Frederic BIDON <fredbi@yahoo.com>

* added more unit tests

Signed-off-by: Frederic BIDON <fredbi@yahoo.com>

* removed yaml.v2 hack

Signed-off-by: Frederic BIDON <fredbi@yahoo.com>
2022-03-30 09:42:59 -03:00
72f9c7a18f feat: allow to filter by ext on http upload pipe (#2992)
The idea is to be able to filter by extension and send each extension to
a different place, if needed.

This also affects the artifactory pipe.

Also updated artifactory docs a bit.

Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
2022-03-19 17:44:34 -03:00
08c9038c29 feat: set -mod on gomod pipe (#2983)
this allows to set the -mod flag on the command used to grab the module
root package, in case its needed to ignore the vendor folder, force
readonly, etc...

Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
2022-03-17 08:53:39 -03:00
0a66b3dc85 feat: deprecate buildpacks (#2982) 2022-03-17 07:55:17 -03:00
d81820bb01 feat: remove some deprecated code, go 1.15 support (#2985)
* feat: remove some deprecated code, go 1.15 support

- auto ignore darwin/arm64 on go <1.15, check https://goreleaser.com/deprecations/#builds-for-darwinarm64
- `dockers.use_buildx` (do not mix with `dockers.use: buildx`), check https://goreleaser.com/deprecations/#dockersuse_buildx

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

* test: remove deprecated test
2022-03-16 23:37:29 -03:00
7730a4de94 feat: brew service block (#2973)
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
2022-03-16 21:12:57 -03:00
c4017fca69 feat: add missing Snapcraft app metadata fields (#2955)
* fix: add missing snapcraft app metadata fields

* docs: add missing snapcraft app metadata fields

* Apply suggestions from code review

Co-authored-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
2022-03-05 23:16:43 -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
f0af44ccbe feat: add filter and reverseFilter template functions (#2924)
* feat: add grep and grep -v template functions

this adds `grep` and `reverseGrep` template functions, which should help dealing with text.

refs #2920

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

* refactor: rename funcs

Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
2022-02-24 22:57:43 -03:00
6ec690723e docs: Homebrew README example formula (#2921) 2022-02-19 21:41:32 -03:00
99547865e1 docs: remove beta wording 2022-02-17 10:10:51 -03:00
d07a5a8541 feat: change default nfpm bindir (#2910)
/usr/local/bin is intended for binaries compiled locally, which is never
the case for goreleaser.

this changes the default to /usr/bin instead.

closes #2909

Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
2022-02-14 21:54:04 -03:00
02a94ce23e feat: lintian overrides (#2892)
* feat: lintian overrides

allow to more easily set lintian overrides

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

* fix: lintian

Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
2022-02-09 11:40:51 -03:00
c457d8fff7 feat: allow to use .Path and .Name on universal binary post hooks (#2891)
* feat: allow to use .Path and .Name on universal binary post hooks

This allows the usage of `{{ .Path }}` and `{{ .Name }}` on post
templates.

Closes #2890

* docs: improve docs

* test: add more tests
2022-02-08 11:44:47 -03:00
f585f3be69 feat: allow to output on hooks
refs #2875
2022-02-05 16:00:49 -03:00
1bdfc9cdff feat: allow to override build flags by goos/goarch/etc (#2860)
* feat: allow to override build flags by goos/goarch/etc

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

* test: improve

* fix: typos

* feat: templates, merges

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

* test: fix

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

* test: one more case

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

* Update internal/builders/golang/build.go

Co-authored-by: Brian Flad <bflad417@gmail.com>

* Update internal/builders/golang/build.go

Co-authored-by: Brian Flad <bflad417@gmail.com>

* test: more tests

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

Co-authored-by: Brian Flad <bflad417@gmail.com>
2022-02-02 00:01:34 -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
0b494f741a docs: description multiline example
refs  #2861

Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
2022-01-31 15:13:07 -03:00
a4176386b2 docs(nfpm): two line "extended" description (#2864) 2022-01-31 14:42:45 -03:00
fa4ba760d9 docs: do not indicate that branch will be created
refs  #2831
2022-01-30 22:30:07 -03:00
7085b4c557 docs: improve docs for changelog skipping
closes #2601
2022-01-30 11:28:00 -03:00
acddce5777 fix(aur): use StrictHostKeyChecking=accept-new by default
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
2022-01-21 22:17:12 -03:00
592e763f6b docs: update docs and schema
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
2022-01-20 16:22:54 -03:00
b02bec962e feat: arch user repository integration (#2838)
* feat: aur PKGBUILD integration

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

* feat: guess install, improve formatting

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

* fix: more deterministic

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

* feat: binary releases, push, more tests

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

* feat: accept key as text

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

* feat: improvements

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

* feat: srcinfo

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

* fix: compile

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

* fix: everything

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

* fix: lint

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

* feat: renames, docs, etc

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

* docs: link to docs

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

* fix: go mod tidy, title

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

* fix: srcinfo tmpl

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

* fix: missing close quote

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

* fix: templates

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

* fix: always defaults conflicts and provides

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

* fix: ssh command

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

* fix: maintainers can be a list

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

* fix: ensure -bin suffix, more tests and docs

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

* fix: this will never happen

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

* fix: whitespaces

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

* fix: goreleaser config

Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
2022-01-20 14:59:39 -03:00
339bcabbb5 feat: add generic webhook announcer (#2750) 2022-01-08 14:46:27 -03:00
4a4c5ec5a6 feat: allow multiple ids on universal binaries (#2811)
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
2022-01-07 09:16:54 -03:00
791de897bb feat: support extra_files in publishers (#2770)
Reference: https://github.com/goreleaser/goreleaser/issues/2768

Co-authored-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
2022-01-06 22:04:43 -03:00
8e1b6a1bbb feat: allow to template dockerfile (#2797)
* feat: allow to template dockerfile

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

* test: added one more test

Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
2022-01-06 15:34:55 -03:00
a19ee5fc42 docs: rename in the docs goreleaser.yml to goreleaser.yaml (#2784) 2021-12-22 21:52:01 -03:00
f42e0872f6 fix: do not group changelog when using github-native (#2781)
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
2021-12-21 14:21:05 -03:00
1f0685f248 docs(nfpm): note about conventional file names and armv6/v7
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
2021-12-21 13:50:21 -03:00
c540c6cbf5 docs: fix hooks env usage
closes #2762

Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
2021-12-15 16:03:58 -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
7c2a93cfaa feat: allow to always log signing output (#2731)
* 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>
2021-12-06 10:07:47 -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