1
0
mirror of https://github.com/goreleaser/goreleaser.git synced 2025-01-10 03:47:03 +02:00
Commit Graph

645 Commits

Author SHA1 Message Date
Carlos Alexandro Becker
ea7a696fab
feat: improve docker errors (#3080)
* feat: improve docker errors

Adding an error page with some more info to help debug issues.

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

* fix: forgot return

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

* fix: missing err

Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
2022-05-02 22:05:42 -03:00
Carlos Alexandro Becker
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
Carlos Alexandro Becker
63436392db
fix: custom targets if missing goamd64, goarm, gomips (#3056)
* fix: custom targets if missing goamd64, goarm, gomips

if the user provide custom targets without the goamd64, goarm or gomips bit, things may go awry at some point.

this prevents issues by suffixing them with the default when its missing.

closes https://github.com/goreleaser/goreleaser/issues/3055

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

* test: fix build tests

Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
2022-04-20 09:43:39 -03:00
Carlos Alexandro Becker
922992ce76
fix: archive ids (#3052)
* fix: archive ids

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

* test: add archive id filter test

Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
2022-04-19 22:49:08 -03:00
Albert Salim
50fb252272
test: change test docker registry port numbers (#3046)
Port 5000 is used by MacOS Monterey for
Airplay Receiver by default.
2022-04-16 15:33:17 -03:00
Carlos A Becker
dbf2d0e293
fix: brew formula default goamd64
Was defaulting to v2 instead of v1.

closes #3049

Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
2022-04-16 15:26:14 -03:00
Carlos A Becker
3663ec1b13
test: goamd64 tests
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
2022-04-15 23:26:25 -03:00
Carlos A Becker
21df724a1e
fix: snapcraft and GOAMD64
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
2022-04-15 23:25:32 -03:00
Carlos A Becker
2d6e83cf3f
fix: nfpm conventional file names with GOAMD64
Fixes conventional file names when using GOAMD64

refs #3016

Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
2022-04-13 23:38:39 -03:00
Carlos A Becker
c30339070e
fix(snap): incorrect skip due go GOAMD64
the valid arch check was not considering GOAMD64

refs #3016

Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
2022-04-13 23:12:58 -03:00
Carlos Alexandro Becker
1c2a1b56d8
fix: nfpm lintian concurrency issue (#3039)
* fix: nfpm lintian concurrency issue

Several goroutines might touch the lintian file inside dist at the same
time, which might cause weird errors, namely `archive/tar: write too long`.

This PR fixes it by namespacing the file to the package name + arch,
so one goroutine won't touch the work of the other.

It also improves some logs and tests.

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

* fix: linter issues

Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
2022-04-13 22:26:58 -03:00
Carlos A Becker
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
Carlos Alexandro Becker
ce9058ac8c
refactor: use context on git exec calls (#3032) 2022-04-12 08:35:19 -03:00
Carlos A Becker
700c8a682f
fix: nfpm id filter 2022-04-12 01:08:49 -03:00
Carlos A Becker
9dfade2558
fix: nfpm default build ids to empty 2022-04-11 23:59:52 -03:00
Carlos A Becker
cd7edb7a2e
chore: fix typo 2022-04-11 23:58:39 -03:00
Carlos A Becker
9c773d6d6b
fix: remove some deprecated brew todos 2022-04-11 23:58:18 -03:00
Carlos A Becker
de825aab35
fix: remove deprecated todo 2022-04-11 23:57:17 -03:00
Carlos Alexandro Becker
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
Carlos Alexandro Becker
acfffe1c98
refactor: improve scoop tests (#3031)
* refactor: improve scoop tests

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

* fix: improve diff a bit
2022-04-11 20:19:58 -03:00
Carlos Alexandro Becker
02595554de
fix: use universal binary id (#3028)
Ensure the new ID is set, and add a test to prevent the bug from
happening again.

closes #3027
2022-04-08 21:15:07 -03:00
dependabot[bot]
c50dbc5bd5
feat(deps): bump github.com/charmbracelet/keygen from 0.2.1 to 0.3.0 (#3024)
* feat(deps): bump github.com/charmbracelet/keygen from 0.2.1 to 0.3.0

Bumps [github.com/charmbracelet/keygen](https://github.com/charmbracelet/keygen) from 0.2.1 to 0.3.0.
- [Release notes](https://github.com/charmbracelet/keygen/releases)
- [Commits](https://github.com/charmbracelet/keygen/compare/v0.2.1...v0.3.0)

---
updated-dependencies:
- dependency-name: github.com/charmbracelet/keygen
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* fix: dep update

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Carlos A Becker <caarlos0@gmail.com>
2022-04-08 13:30:11 -03:00
Carlos Alexandro Becker
37f0f37bc0
feat: tmpl snap fields (#3003)
* feat: tmpl snap fields

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

* added tests

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

* fix: broken test

Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
2022-04-02 22:58:33 -03:00
Carlos Alexandro Becker
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
fredbi
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
fredbi
8d6ef40020
feat(yaml): upgraded from yaml.v2 to yaml.v3 (#3004)
* chore(yaml): upgraded from yaml.v2 to yaml.v3

* provided internal package to take care of backward
  compatible settings:
    * UnmarshalStrict method
    * mute io.EOF unmarshaling errors
    * marshal indenting with 2 chars
* adapted unit tests to new yaml v3

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

* fixed failing tests

Signed-off-by: Frederic BIDON <fredbi@yahoo.com>
2022-03-29 14:00:53 -03:00
Carlos Alexandro Becker
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
Carlos Alexandro Becker
0a66b3dc85
feat: deprecate buildpacks (#2982) 2022-03-17 07:55:17 -03:00
Carlos Alexandro Becker
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
Carlos Alexandro Becker
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
Carlos Alexandro Becker
3c4e797150
feat: upgrade to go 1.18 (#2978)
* feat: upgrade to go 1.18

* chore: go mod tidy

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

* test: fix

* fix: more updates

* test: fix test
2022-03-16 21:51:48 -03:00
Carlos Alexandro Becker
4c477b5cd1
fix: brew.post_install indent (#2981)
properly indent brews.post_install block, and also fix indent on newly
added brews.service block.

closes #2980

Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
2022-03-16 21:40:25 -03:00
Carlos Alexandro Becker
7730a4de94
feat: brew service block (#2973)
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
2022-03-16 21:12:57 -03:00
Carlos A Becker
42258cf473
fix: double quotes
Co-authored-by: Christian Muehlhaeuser <muesli@gmail.com>
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
2022-03-11 22:23:19 -03:00
Carlos Alexandro Becker
c17ff3b966
fix(aur): improve yay caching (#2965)
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
2022-03-09 09:50:57 -03:00
Carlos A Becker
788a4394e1
fix: ensure aur key has eof newline 2022-03-06 17:27:23 -03:00
David Stotijn
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
Carlos Alexandro Becker
5828dd8d9b
fix: nfpm globbing multiple times (#2947)
The nfpm pipe was globbing the input list, and then globbing its result
as well. If you add a folder that had a file with, say `[]`, in it, it
would later fail the release upon trying to evaluate that as a glob.

This is probably some faulty nFPM update in which I should have removed
that but didn't.

Either way, this should fix it.

closes #2946
2022-03-01 20:57:12 -03:00
Ryan Currah
f734b503d4
feat(pipe/brew): install amd64 binaries when no arm64 binaries present (#2939)
Currently on a M1 macbook when adding a tap with formulas that only support amd64 it fails to add the tap. This prevents new arm64 users from using the tap. By allowing arm64 users to install an amd64 binary if no arm64 binary is avialable will atleast allow the user to use the tap.
2022-02-25 21:57:46 -03:00
Alex Goodman
c8450633e5
fix: dedupliate cataloging binary artifacts (#2839) 2022-02-25 11:28:09 -03:00
Carlos Alexandro Becker
1bc01df5b9
fiX: improve aur key handling (#2935)
* fiX: improve aur key handling

make sure it has the right permissions and improve error messages

refs https://github.com/goreleaser/goreleaser-action/issues/326

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

* fix: improve error msgs, make sure file is closed

Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
2022-02-25 08:43:08 -03:00
Carlos Alexandro Becker
f640deb104
fix: trim spaces from aur private key (#2930)
I had this issue on a repo, and it seems at least one more person had it too: ssh/git complaining that the key is invalid.

My guess is that gh secret set from a file is now appending a new line - as it worked with the exact same key before, for me at least.

anyway, if thats it, this pr should fix it.

closes https://github.com/goreleaser/goreleaser-action/issues/326

Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
2022-02-24 22:58:25 -03:00
Carlos Alexandro Becker
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
Carlos Alexandro Becker
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
Carlos Alexandro Becker
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
Carlos Alexandro Becker
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
Carlos Alexandro Becker
5f30f3606a
fix: make --release-notes flags more deterministic (#2888)
* fix: make --release-notes flags more deterministic

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

* chore: fmt

Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
2022-02-06 22:09:46 -03:00
Carlos Alexandro Becker
456f8aa2b1
feat: warn if loaded changelog is whitespace-only (#2885)
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
2022-02-06 14:24:47 -03:00
Carlos A Becker
9df62d87ec
fix: build log print relative path instead of abs
all other logs print relative paths, only the build logs are printing the abs path.

this makes things more even.

Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
2022-02-05 17:44:07 -03:00
Carlos A Becker
efdc4d0f48
test: fixed hooks tests
refs #2875
refs f585f3be69

Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
2022-02-05 16:28:17 -03:00