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

478 Commits

Author SHA1 Message Date
Carlos Alexandro Becker
29016cb0e3
fix: brew/scoop panic (#2515) 2021-09-27 08:13:56 -03:00
Carlos Alexandro Becker
833db79bda
feat: removes deprecated non-semver allowance (#2503)
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
2021-09-23 00:39:28 -03:00
Carlos Alexandro Becker
f7c865c4d9
refactor: split go mod into 2 pipes (#2502)
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
2021-09-22 22:25:26 -03:00
Carlos Alexandro Becker
28ef87b4b0
test: another try fixing minio tests
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
2021-09-22 16:23:28 -03:00
Carlos Alexandro Becker
722343125a
test: remove bucket after test
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
2021-09-22 01:19:37 -03:00
Carlos Alexandro Becker
ad7df518b6
test: fix minio tests
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
2021-09-22 01:01:32 -03:00
Carlos Alexandro Becker
61bead8989
feat: improve output and pipe skipping (#2480)
* 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>
2021-09-18 10:21:29 -03:00
Erkan Zileli
35cb87e66a
fix(buildpacks): add if check when copying Dockerfile (#2493)
Signed-off-by: Erkan Zileli <erkan.zileli@trendyol.com>
Co-authored-by: Batuhan Apaydın <batuhan.apaydin@trendyol.com>
Co-authored-by: Furkan Türkal <furkan.turkal@trendyol.com>

Co-authored-by: Batuhan Apaydın <batuhan.apaydin@trendyol.com>
Co-authored-by: Furkan Türkal <furkan.turkal@trendyol.com>
2021-09-16 22:18:44 +00:00
Carlos Alexandro Becker
820194cc92
docs: typo
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
2021-09-16 14:32:36 -03:00
Batuhan Apaydın
4fb4ee67af
feat: Allow to specify the git remote name (#2486)
Signed-off-by: Batuhan Apaydın <batuhan.apaydin@trendyol.com>
Co-authored-with: Erkan Zileli <erkan.zileli@trendyol.com>
Co-authored-with: Furkan Türkal <furkan.turkal@trendyol.com>
2021-09-15 19:12:45 +00:00
Batuhan Apaydın
afad409c76
feat: add SMTP support to the announces (#2485)
Signed-off-by: Batuhan Apaydın <batuhan.apaydin@trendyol.com>
Co-authored-with: Erkan Zileli <erkan.zileli@trendyol.com>
Co-authored-with: Furkan Turkal <furkan.turkal@trendyol.com>
2021-09-15 18:38:58 +00:00
Carlos Alexandro Becker
e8c1a8af52
chore: gofumpt
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
2021-09-12 19:59:26 -03:00
Engin Diri
1c44c2149d
feat: announce: teams (#2482)
Signed-off-by: Engin Diri <engin.diri@mail.schwarz>
2021-09-12 19:57:58 -03:00
Carlos Alexandro Becker
7b0b88f282
refactor: docker sign is actually a publisher
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
2021-09-11 14:46:30 -03:00
Carlos Alexandro Becker
435593ae41
chore: gofumpt
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
2021-09-11 14:36:40 -03:00
Engin Diri
311479504e
feat: announce: discord (#2478)
Signed-off-by: Engin Diri <engin.diri@mail.schwarz>
2021-09-11 17:23:54 +00:00
Carlos Alexandro Becker
0017dc9351
fix: nfpm subdir in binary name
closes #2476

Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
2021-09-11 13:04:13 -03:00
Carlos Alexandro Becker
d77f862fa4
refactor: improve build (#2475)
* refactor: improve build

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

* test: coverage

Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
2021-09-11 13:01:57 -03:00
Erkan Zileli
5ea003c6f6
feat(docker): add buildpacks support (#2461)
* feat(docker): add buildpacks support

Signed-off-by: Erkan Zileli <erkanzileli@gmail.com>

* fix: move buildpacker imager code into own go file

Signed-off-by: Batuhan Apaydın <batuhan.apaydin@trendyol.com>

* fix: use docker imager push method for buildpack imager push

Signed-off-by: Batuhan Apaydın <batuhan.apaydin@trendyol.com>

* fix: return statement

Signed-off-by: Batuhan Apaydın <batuhan.apaydin@trendyol.com>

* move test into api_buildback_test

Signed-off-by: Furkan <furkan.turkal@trendyol.com>

* fix: use buildpacks instead of buildpack

Signed-off-by: Batuhan Apaydın <batuhan.apaydin@trendyol.com>

* fix(lint): fix lint issue

* fix(buildpacks): use cwd instead of root directory

* doc: add how to use a custom buildpack document

Signed-off-by: Erkan Zileli <erkan.zileli@trendyol.com>

* fix(doc): update docs as suggested

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

Co-authored-by: Batuhan Apaydın <batuhan.apaydin@trendyol.com>
Co-authored-by: Furkan <furkan.turkal@trendyol.com>
Co-authored-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
2021-09-11 02:21:33 +00:00
Steve Azzopardi
68ff8e996f
feat: support templates for scm urls (#2465)
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>
2021-09-09 01:42:13 +00:00
Carlos Alexandro Becker
8afb5eafe5
feat: Add support for templating NFPM bindir (#2466)
* 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>
2021-09-07 15:43:06 -03:00
Batuhan Apaydın
5a01a10f9b
fix: clean user information from remote url if it contains username and token (#2457) 2021-09-03 20:06:53 -03:00
Carlos Alexandro Becker
19cd0e2289
refactor: remove unneeded if
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
2021-09-01 23:17:01 -03:00
Carlos Alexandro Becker
0e54c8d882
test: checksum extra file that does not exist
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
2021-09-01 23:16:26 -03:00
angie pinilla
9667216403
feat: add support for checksum generation for extra files (#2406)
Co-authored-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
2021-09-01 23:07:43 -03:00
Carlos Alexandro Becker
a9239e875d
chore : fmt
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
2021-09-01 16:47:53 -03:00
Furkan Türkal
aa28f31ab5
feat: announce: slack (#2429)
Fixes #2425

Signed-off-by: Furkan <furkan.turkal@trendyol.com>
2021-09-01 16:46:25 -03:00
Carlos Alexandro Becker
b661a57105
feat: allow to template brew message (#2447)
closes #2441

Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
2021-09-01 10:27:31 -03:00
Carlos Alexandro Becker
b63e544725
feat: templateable nfpm key files (#2448)
closes #2419

Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
2021-09-01 10:27:08 -03:00
Carlos Alexandro Becker
1052ce17de
fix: log docker args on debug
refs #2438

Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
2021-08-31 23:34:21 -03:00
Carlos Alexandro Becker
788add91d7
chore: fmt
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
2021-08-31 10:49:22 -03:00
Batuhan Apaydın
d3db692a0b
feat: announce: reddit (#2431)
* feat: announce: reddit

Signed-off-by: Batuhan Apaydın <batuhan.apaydin@trendyol.com>

* Update .goreleaser.yml

* Update internal/pipe/announce/announce.go

* Update pkg/defaults/defaults.go

Co-authored-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
2021-08-31 10:48:45 -03:00
Carlos Alexandro Becker
dd5ccf7170
feat: use go 1.17 (#2408)
* feat: use go 1.17

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

* fix: go mod tidy

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

* test: fix failing test

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

* ci: increase lint timeout

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

* ci: increase lint timeout

Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
2021-08-24 20:49:11 -03:00
Carlos Alexandro Becker
ad57a133fb
feat: sign docker images with cosign (#2423)
* feat: sign docker images with cosign

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

* fix: improve sign logging

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

* fix: do not sign if skip publish is set

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

* fix: install cosign

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

* docs: fix wrong docs

Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
2021-08-24 11:22:09 -03:00
Carlos Alexandro Becker
5bdbffc96f
feat: allow to template signs.stdin
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
2021-08-23 22:00:44 -03:00
Carlos Alexandro Becker
67e2dc6020
refactor: lint issues
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
2021-08-21 11:11:01 -03:00
Christian Mäder
757701f65c
feat: snapshot.name_template should use tag instead of version (#2417)
* fix: Change the init-template for snapshot.name_template

* fix: Change the default-template for snapshot.name_template

BREAKIND CHANGE: The default value of `snapshot.name_template` is changed.
2021-08-21 10:59:15 -03:00
Rob Prentiss
013bd69126
fix: run 'go version' command in build.Dir (#2411)
Currently, the 'goVersion' function is run without any directory set.
This is problematic when a build uses the 'dir' config in combination
with the 'gobinary' config. When 'gobinary' is a relative path (like a
script in the current repository), goVersion silently fails, returning
an empty string.

This commit refactors 'goVersion' to execute the command with '.Dir' set
to the 'build.Dir', in addition to now returning an error, so that
issues may be bubbled up in the build log, rather than silently failing.

It also adds a new helper function to facilitate running 'goVersion' by
creating a temporary executable that outputs a given 'version' string.
This function is only currently used by 'TestWithDefaults'.

Co-authored-by: Rob Prentiss <prentiss@apple.com>
2021-08-21 10:56:54 -03:00
Carlos Alexandro Becker
3966921c86
fix: upload gcs blobs to bucket root (#2409)
* fix: upload gcs blobs to bucket root

* test: blob upload to bucket root

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

Co-authored-by: Adam Bouqdib <adam@abemedia.co.uk>
2021-08-17 00:31:20 -03:00
Carlos Alexandro Becker
d329a9c0d3
feat: add id to dockers and docker_manifests (#2399)
* feat: add id to dockers and docker_manifests

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

* feat: actually allow to use the images

Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
2021-08-16 22:11:54 -03:00
Carlos Alexandro Becker
72b7f3b302
feat: remove deprecated docker options (#2400)
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
2021-08-16 15:21:16 -03:00
Carlos Alexandro Becker
a4a96eab54
fix: main check when using gomod.proxy (#2390)
* fix: main check when using gomod.proxy

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

* fix: main check when using gomod.proxy

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

* test: fix

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

* test: fix

Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
2021-08-13 20:33:48 -03:00
Jonas Lundberg
7f0edf6fe0
fix: make scoop write .json when --skip-publish (#2380)
* fix: make scoop write .json when --skip-publish

Don't skip the pipeline altogether but write
out the manifest.json file as the homebrew
pipeline does, only skip committing to the repo.

closes #2374

* Update internal/pipe/scoop/scoop_test.go

Co-authored-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
2021-08-03 02:37:02 +00:00
Edward Maxwell-Lyte
18695c2687
fix: sort tags by version not day of the week (#2377)
* fix: tag sorting

When the HEAD commit has multiple tags, they are sorted in order to select the latest so that it can be released.

However, the existing sort would not work if there were multiple commits across a Wednesday and a Thursday.

For example:

```
git tag --points-at HEAD --format='%(creatordate)%09%(refname)'
Wed Jul 28 07:13:19 2021 +0000  refs/tags/v0.0.183
Thu Jul 29 13:31:07 2021 +0000  refs/tags/v0.0.184
Thu Jul 29 13:38:42 2021 +0000  refs/tags/v0.0.185
Thu Jul 29 13:57:44 2021 +0000  refs/tags/v0.0.186
```

When using the existing sort the `creatordate` field was targeted and reversed. Alphabetically Thursday comes before Wednesday, so that is reversed and the Wednesday release always comes first:
```
git tag --points-at HEAD --sort=-version:creatordate --format='%(creatordate)%09%(refname)'
Wed Jul 28 07:13:19 2021 +0000  refs/tags/v0.0.183
Thu Jul 29 13:57:44 2021 +0000  refs/tags/v0.0.186
Thu Jul 29 13:38:42 2021 +0000  refs/tags/v0.0.185
Thu Jul 29 13:31:07 2021 +0000  refs/tags/v0.0.184
```

This would make goreleaser attempt to release that existing tag again, and fail.

If we instead sort by reversed `refname` we get the tags ordered by their numeric value, which ignore the day of the week of release:
```
git tag --points-at HEAD --sort=-version:refname --format='%(creatordate)%09%(refname)'
Thu Jul 29 13:57:44 2021 +0000  refs/tags/v0.0.186
Thu Jul 29 13:38:42 2021 +0000  refs/tags/v0.0.185
Thu Jul 29 13:31:07 2021 +0000  refs/tags/v0.0.184
Wed Jul 28 07:13:19 2021 +0000  refs/tags/v0.0.183
```

Allowing the latest version, 0.0.186 in this case, to be targeted for release.

* corrected test case

* add space

* remove space
2021-08-02 16:20:09 +00:00
Carlos Alexandro Becker
1dd2ad1ae6
fix: return an err with stdout/err when a command failed (#2363)
* fix: return an err with stdout/err when a command failed

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

* chore: fmt

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

* test: fixes

Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
2021-07-24 21:32:04 -03:00
Carlos Alexandro Becker
2a304f5932
chore: improve pre-commit
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
2021-07-24 21:21:22 -03:00
Carlos Alexandro Becker
c63d704ce6
test: fix
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
2021-07-24 21:20:08 -03:00
Carlos Alexandro Becker
f37c045052
fix: copying file on docker pkg instead of hard linking (#2362)
* refactor: move copyfile to gio package

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

* refactor: copying file on docker pkg instead of hard linking

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

* chore: fmt

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

* test: fixex

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

* fix: one todo

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

* test: copy with mode

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

* chore: fmt

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

* fix: errors

Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
2021-07-24 19:59:43 -03:00
Carlos Alexandro Becker
b176b1ff80
feat: inc parts of semver, change snapshot default name (#2358) 2021-07-24 10:13:05 -03:00
Guilhem Lettron
6ecddbd7e9
feat(snapcraft): manage channel upload (#2361)
By default, snap store manage "edge", "beta", "candidate" and "stable".
Default to all this channels when package is in grade stable. But only on
"edge" and "beta" for grade "devel".

Signed-off-by: Guilhem Lettron <guilhem@barpilot.io>

Co-authored-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
2021-07-24 00:23:59 -03:00