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

610 Commits

Author SHA1 Message Date
Carlos Alexandro Becker
8535ed3811 test: archive tests
Added tests for archive defaulter
2017-12-03 13:00:01 -02:00
Carlos Alexandro Becker
278026992b fix: checksums pipe
I messed up the name template, tests save me
2017-12-03 13:00:01 -02:00
Carlos Alexandro Becker
8c86228e42 fix: fixed name template
I changed it, dunno why. Lets keep changes minumum
2017-12-03 13:00:01 -02:00
Carlos Alexandro Becker
a3a10fab37 test: release tests
Added tests for release defaulter
2017-12-03 13:00:01 -02:00
Carlos Alexandro Becker
f9cdb2df04 test: added test for snapshot
Added tests for snapshot defaulter
2017-12-03 13:00:01 -02:00
Carlos Alexandro Becker
0d9da86624 fix: missing Binary field
Readded it for now. Should remove it someday as it is deprecated
2017-12-03 13:00:01 -02:00
Carlos Alexandro Becker
66e8f98735 fix: removed unused import
Dunno why vscode did not removed it
2017-12-03 13:00:01 -02:00
Carlos Alexandro Becker
2b42a7346f fix: improved defaulter documentation
As suggested by @jorin
2017-12-03 13:00:01 -02:00
Carlos Alexandro Becker
eb19e2b5d9 refactor: rm internal/name pkg
Each pipe now does its own templating
2017-12-03 13:00:01 -02:00
Carlos Alexandro Becker
3fd9e0f306 fix: checksums pipe
An if statement was wrong, fixed it and added tests
2017-12-03 13:00:01 -02:00
Carlos Alexandro Becker
65a8e96779 fix: broken test
Was using a constant that no longer exists
2017-12-03 13:00:01 -02:00
Carlos Alexandro Becker
1ed299a6d7 refactor: defaulter interface
Right now the code looks weird because the defaults
of a pipe are far away of the implementation of the pipe.

the intend of this PR is to bring them closer by having a
Defaulter interface.

I also renamed the Pipe interface to Piper, and removed
the Description method in favor for fmt.Stringer.
2017-12-03 13:00:01 -02:00
Andy Grunwald
0b0c12aaad fix: Adjusted codebase according comments from @caarlos0
- Renamed function to upload()
- Fixed an inline comment
- Excluded a defer file.Close() from errcheck analysis
2017-12-02 23:39:39 +01:00
Andy Grunwald
78f83ec466 test: Add three new unit tests for Artifactory pipeline
Three new unit tests added:
- TestRunPipe_NoFile: Checks the error if the file for the
upload is not there
- TestRunPipe_UnparsableTarget: Checks that an error will
be thrown if the target is not parsable
- TestRunPipe_DirUpload: Checks that an error will be
thrown when we try to upload a directory
2017-12-02 22:03:01 +01:00
Andy Grunwald
2842b86365 fix: Don't continue Artifactory pipeline when there is an error
We are able to define multiple Artifactory instances.
In the former implementation, we continue once one instance upload
was failing. Now we stop and throw the error.
2017-12-02 21:40:14 +01:00
Andy Grunwald
37bc09f2bc fix: Use HTTP error if upload to Artifactory failes
In a former commit we respected the error of the Close()
call for a HTTP response. The fix was to introduce named
return values (e.g. err for error).
The problem: We defered the resp.Close() via
err = resp.Close()
This had the effect of always overwrite the real error
that happen when the HTTP call failes (due to checkResponse func).
2017-12-02 21:29:59 +01:00
Andy Grunwald
024ca0a1af fix: panic while access a http response in Artifactory pipeline
When the upload target is not resolvable by tcp (e.g. unknown host)
no response object will be generated.
In an error case the response object is used (it was assumed that
this will be there at every point in time).

This commit fixes this behaviour
2017-12-02 21:10:32 +01:00
Andy Grunwald
c1d2c28b0a fix: gometalinter warnings for Artifactory pipeline
gometalinter had several warnings about not respected
err return values from Close() calls
2017-12-02 20:47:02 +01:00
Andy Grunwald
492a018b7f feat: Added basic support to push binaries into Artifactory
Artifactory is an universal Artifact Repository Manager by
JFrog. See https://www.jfrog.com/artifactory/

It is available in an OSS and Enterprise version.
Many companies using this internally to store, manage and
distribute binaries within their internal infrastructure.

It adds basic support to push all generated binaries into an
Artifactory. Basic means only the built artifacts. Without
checksums or archives.
As an authentication only Basic auth is supported by this Pipe.

See #344
2017-12-02 20:26:55 +01:00
Carlos Alexandro Becker
8e6133c70c feat: allow override dist folder
Allow configuring the dist folder via
config file.

Closes #421
2017-11-26 22:20:40 -02:00
Carlos Alexandro Becker
2cc10c3cc8 chore: fixed/ignore lint issues
GAS started to break on file/folder permissions
and executing things with variables.

closes #422
2017-11-26 20:40:07 -02:00
Carlos Alexandro Becker
dba83bff60 refactor: using os.Stat to decide wether it is a file or a dir
This should avoid some failures.
2017-11-21 08:27:32 -02:00
Carlos Alexandro Becker
03aec11c60 refactor: small improvement on if stmt
Inverted if statements are harder to read. No need for that.
2017-11-21 08:27:32 -02:00
Carlos Alexandro Becker
9a9b9373a2 fix: accepting non-main.go files as well
Previous code was handling only main.go as the main build file, but
the main function can actually be in any file.

Now, if a specific file (*.go) is passed, that file will be checked
for the main function.

If a folder is passed, the package will be scanned for the main
function.
2017-11-21 08:27:32 -02:00
Carlos Alexandro Becker
13d2bca06f refactor: improved error message
The error message was kind of bad. Improved it
2017-11-21 08:27:32 -02:00
Carlos Alexandro Becker
a9f33bd659 test: added a test case for an invalid main.go
The user could set the main to anything, so, added a test
for an invalid file as main.
2017-11-21 08:27:32 -02:00
Carlos Alexandro Becker
5a2f6d0318 refactor: remove unnecessary code
Since e0897fc2d2 this is not needed
anymore.
2017-11-21 08:27:32 -02:00
Carlos Alexandro Becker
8ae5d1563b refactor: using errors package properly
The errors.Wrap already returns nil if the wrapped error is nil,
	therefore the if statement is unecessary.
2017-11-21 08:27:32 -02:00
Carlos Alexandro Becker
48ddd4c0eb refactor: using ast parser instead
Using the ast parser, so we don't need to glob and goreleaser will work
reliably even if the files aren't gofmt'd.
2017-11-21 08:27:32 -02:00
Carlos Alexandro Becker
eb48a028bd refactor: improved test code
Improved test to better check errors.
2017-11-21 08:27:32 -02:00
Carlos Alexandro Becker
ce9e1c575c refactor: improved error messages
They were not very clear.
2017-11-21 08:27:32 -02:00
Carlos Alexandro Becker
83093ac477 feat: break if main package doesnt have a main func
Breaks the release if the package being built doesnt
have a main function.

Also improved error handling in the build pipe.

Closes #415
2017-11-21 08:27:32 -02:00
Carlos Alexandro Becker
adc2d7d4c5 fix: dependencies and conflicts on brew tap
They were being inlined, generating an invalid receipt.

closes #416
2017-11-13 18:02:25 -02:00
Carlos Alexandro Becker
752c0711e1 chore: enable debug in fpm TestRunPipe
So we can know why it failed if it fails for whatever reason
2017-11-08 21:00:09 -02:00
Carlos Alexandro Becker
3064e11b31 feat: improved fpm output
Only enable fpm's debug mode when goreleaser is in debug as well.
2017-11-08 21:00:09 -02:00
Joseph Wright
d9f13a3b12 refactor: set default value of bindir in defaults pipe
Rather than using a conditional to check if `bindir` has been set,
use the defaults pipe to set it to `/usr/local/bin` if it has not
been set in the config file.
2017-11-08 19:11:10 -02:00
Joseph Wright
5193680e76 feat: Allow overriding fpm destination for binaries
Some packagers may want to put binaries in a location other than
/usr/local/bin. This allows one to override the destination for
binaries when using fpm, using the `fpm.bindir` config key.
2017-11-08 19:11:10 -02:00
Carlos Alexandro Becker
11fee22a2e fix: a new workdir for each fpm instance
This may avoid running into
https://github.com/jordansissel/fpm/issues/1423
2017-10-23 09:51:30 -02:00
Carlos Alexandro Becker
3234cb98da feat: make fpm respect --parallelism
It was firing unlimited fpm processes until now.
2017-10-23 09:51:30 -02:00
Carlos Alexandro Becker
df0cf14912 feat: re-added parallelism on fpm pipe
It was removed on commit ff42024 due to a possible bug on fpm
2017-10-23 09:51:30 -02:00
Carlos Alexandro Becker
ff42024602 fix: fpm fails randomly
FPM would randomly fail to build deb and rpm packages. It apparently
happens because fpm (or some tool it uses) shares state between runs
(possibly by overriding files that are going inside the archive).

The error `file changed as we read it` was happening, which is a `tar`
error.

I don't know how to fix this, but, in order to make goreleaser more
stable, I'll disable the concurrency here for now.

closes #333
2017-10-19 21:45:34 -02:00
Carlos Alexandro Becker
6277ab9ae3 feat: added sorting support to the changelog pipe
We can now add:

```yaml
changelog:
	sort: asc
```

to group together our commits by prefix or just to sort them...

Closes #284
2017-10-19 20:58:23 -02:00
Carlos Alexandro Becker
7506f0ff37 chore: passing down --debug to fpm
This shall helps in the cases fpm is failing for an unknown reason.

refs #333
2017-10-19 11:06:29 -02:00
Carlos Alexandro Becker
9dcd8e39bd chore: added more tests
Added a test covering the cases of wrong regexps.

refs #284
2017-10-18 09:19:36 -02:00
Carlos Alexandro Becker
28c16f206c feat: also support regexp
Support for filtering commits with regexp.

Refs #284
2017-10-18 09:19:36 -02:00
Carlos Alexandro Becker
4afd58e49c feat: added the filter ability to changelog pipe
We can now ignore some commits from the changelog by providing the
`changelog.filters.excludes` array of strings in the config
file.

Refs #284
2017-10-18 09:19:36 -02:00
Carlos Alexandro Becker
29a8ae36be refactor: simplifying code from previous pipe
Removed some things that dont make sense anymore,
like log between commits.

Refs #284
2017-10-18 09:19:36 -02:00
Carlos Alexandro Becker
87d269dc45 refactor: turned changelog generation into a pipe
I turned myself into a pipe morty!

PipeRick!!!

refs #284
2017-10-18 09:19:36 -02:00
Matt Stratton
8f71cf33a0 Merge branch 'master' into mattstratton/add-custom-release-title 2017-10-16 13:57:04 -05:00
Matt Stratton
31511b9b77
feat: Add ability to specify release name
TODO:  factor all the name stuff
 into a function like the others, so maybe
setNameDefaults(ctx), etc.
Signed-off-by: Matt Stratton <matt.stratton@gmail.com>
2017-10-16 13:55:11 -05:00
Carlos Alexandro Becker
850c2e14f2 fix: detect if current folder is a subfolder of a parent git repo
We were checking for a .git folder, which would break in cases
where goreleaser is running from a subfolder of a monorepo, for example.

Check 529af6f#commitcomment-25011738

Closes #402 #403
2017-10-16 15:59:39 -02:00
Matt Stratton
973356694a Merge branch 'master' into mattstratton/add-custom-release-title 2017-10-16 08:36:46 -05:00
Carlos Alexandro Becker
529af6fe72 refactor: improved git error handling
Improved the error handling in git code,
mostly in the defaults pipe. The idea is to
output better error messages, hopefully avoiding
confusion on "whats wrong".

refs #356
2017-10-15 19:18:04 -02:00
Carlos Alexandro Becker
07c8d05425 Merge branch 'master' into mattstratton/add-custom-release-title 2017-10-07 23:27:18 -03:00
Carlos Alexandro Becker
7d6ef4d338 chore: improved docker test code
using defer and added a log
2017-10-07 23:26:54 -03:00
Carlos Alexandro Becker
650e14d297 fix: docker tests should not depend on the main docker registry
Makes it not necessary to be logged in the in the docker registry for
the tests to work by using a local registry.

Fixes #379
2017-10-07 23:26:54 -03:00
Matt Stratton
ee67918187
feat: Change default release name to match tag
I updated the default release name to match
the git tag, per the request in the PR.

Signed-off-by: Matt Stratton <matt.stratton@gmail.com>
2017-10-07 15:35:52 -05:00
Matt Stratton
e2ee7c4b2f
feat: Add ability to specify release name
Signed-off-by: Matt Stratton <matt.stratton@gmail.com>
2017-10-07 05:49:58 -05:00
Jorin Vogel
db7af5388d
feat: Add prerelease option
Add an config option to `release` section to set a release at not ready
for production.

Closes #384
2017-10-05 15:47:29 +02:00
Jorin Vogel
0e2e8c8eb3
feat: Add archive config 'wrap_in_directory'
The field is optional. When set to true, files in archive are wrapped
in a directory, which has the same name as the archive itself.
Tests have also been extended to cover this.

Closes #251
2017-10-02 18:53:18 +02:00
Carlos Alexandro Becker
e798a8dc3a Merge branch 'master' into lint 2017-10-01 09:46:14 -03:00
Jorin Vogel
a5bf473f70
Add config field to overwrite brew commit author
Default author name and email can be set in config file.
Close #292.
2017-09-30 21:18:09 +02:00
Carlos Alexandro Becker
fe36819fe7 Merge branch 'master' into lint 2017-09-27 08:43:52 -03:00
Carlos Alexandro Becker
d85a9001ec
removing all assert.New because vet shadow complains about this now
aaaaaaaaaaarhhhhhhhhgttt
2017-09-26 19:24:49 -03:00
Carlos Alexandro Becker
e0db1b4677
unit tests fixed 2017-09-26 19:00:24 -03:00
Carlos Alexandro Becker
fd414e54b8
fixed 2017-09-26 18:52:37 -03:00
Carlos Alexandro Becker
b72e2bc27e
fixed lint errors 2017-09-26 18:50:00 -03:00
Carlos Alexandro Becker
fd0e57ee4e
github enterprise config update 2017-09-26 18:33:22 -03:00
Carlos Alexandro Becker
9ddf723c4e
Merge branch 'master' into github-enterprise 2017-09-26 18:25:11 -03:00
Carlos Alexandro Becker
bd7e503961
allows extra copies in the docker image 2017-09-25 19:10:04 -03:00
Carlos Alexandro Becker
9b247f93d2
fixing tests 2017-09-25 19:01:10 -03:00
Carlos Alexandro Becker
4fefd7608e
merge fixes 2017-09-24 14:25:21 -03:00
Carlos Alexandro Becker
632d206848
Merge branch 'pull-369' into github-enterprise 2017-09-24 14:17:31 -03:00
Stephan Klevenz
1cd2e5e625 Merge branch 'master' into support-github-enterprise 2017-09-24 17:25:17 +02:00
Stephan Klevenz
ca48aa430f support github enterprise 2017-09-24 17:02:34 +02:00
Carlos Alexandro Becker
ff0750285c
typo 2017-09-22 09:44:15 -03:00
Carlos Alexandro Becker
618711cd43
fixed uploads url 2017-09-22 09:42:36 -03:00
Carlos Alexandro Becker
cff77260cc
Merge remote-tracking branch 'origin/master' into github-enterprise 2017-09-22 09:29:08 -03:00
Carlos Alexandro Becker
230d794c75
fix 2017-09-22 09:26:35 -03:00
Carlos Alexandro Becker
2e31f04bf9
fix 2017-09-22 09:26:19 -03:00
Benjamin Jorand
26d1bc9d01 push image with tag latest 2017-09-22 12:10:05 +02:00
Carlos Alexandro Becker
c320f338ea
adding docker images into the release notes 2017-09-16 15:31:48 -03:00
Carlos Alexandro Becker
5ac2918380 Merge pull request #360 from goreleaser/linter
enabled more linters and fixed them
2017-09-16 14:09:01 -03:00
Carlos Alexandro Becker
567b7a9b1b
support github enterprise 2017-09-15 11:04:03 -03:00
Carlos Alexandro Becker
ab1acbb897
fixed log msg 2017-09-14 21:35:11 -03:00
Carlos Alexandro Becker
64ffdd4a5c
enabled more linters and fixed them 2017-09-14 21:19:56 -03:00
Carlos Alexandro Becker
2175bf1e80
also supporting latest docker tag 2017-09-14 20:16:49 -03:00
Carlos Alexandro Becker
f4c79826da
tests updated 2017-09-14 19:41:55 -03:00
Carlos Alexandro Becker
bf6b6fe9f8
fixed docker version name when snapshots 2017-09-14 19:38:48 -03:00
Carlos Alexandro Becker
bbc594864e
added some docker pipe tests 2017-09-12 20:58:02 -03:00
Carlos Alexandro Becker
9f95e2a3c8
custom dockerfile name 2017-09-12 10:04:56 -03:00
Carlos Alexandro Becker
ea55b4f5a1
linking 2017-09-12 07:54:43 -03:00
Carlos Alexandro Becker
ccd55bfc7d
defaults tests 2017-09-12 00:49:02 -03:00
Carlos Alexandro Becker
7e1a4b4f94
initial test 2017-09-12 00:29:12 -03:00
Carlos Alexandro Becker
4c4b9ef42c
cleanups 2017-09-12 00:22:02 -03:00
Carlos Alexandro Becker
2ce8589587
improvements 2017-09-11 23:59:43 -03:00
Carlos Alexandro Becker
5de81fbaac
imports 2017-09-11 23:50:57 -03:00
Carlos Alexandro Becker
60901d31f3
improvements 2017-09-11 23:42:36 -03:00
Carlos Alexandro Becker
b9e8ed64d1
draft: docker support 2017-09-11 23:31:00 -03:00
Horst Gutmann
b1b382caf8 Print a more verbose error message if archiving fails 2017-09-09 11:10:08 +02:00
Carlos Alexandro Becker
be4f43af65
added templates
closes #274
2017-09-02 22:51:03 -03:00
Carlos Alexandro Becker
6cff2728c3
more unit tests 2017-08-27 22:08:53 -03:00
Carlos Alexandro Becker
c541d99c58
checksums name template support 2017-08-27 20:45:33 -03:00
Carlos Alexandro Becker
9bc1beed62
padronizing snapcraft packages name 2017-08-27 13:47:41 -03:00
Carlos Alexandro Becker
71eab55b42
fixed arm .deb 2017-08-27 13:18:23 -03:00
Carlos Alexandro Becker
bbaabd7c37
improved logging 2017-08-20 17:46:30 -03:00
Carlos Alexandro Becker
ce7a2227a0
fixed tests 2017-08-20 16:50:34 -03:00
Carlos Alexandro Becker
8f67faf2d0
fmt 2017-08-20 16:37:52 -03:00
Carlos Alexandro Becker
e8da61278f
skipped as an error type 2017-08-20 16:35:52 -03:00
Carlos Alexandro Becker
c95dee9f94
Merge remote-tracking branch 'origin/master' into rpm 2017-08-20 15:56:54 -03:00
Carlos Alexandro Becker
dbd24b3e7c
fixed tests 2017-08-20 15:56:26 -03:00
Carlos Alexandro Becker
15a29d4ee7
removed duplicated code in snapcraft tests 2017-08-19 20:20:59 -03:00
Carlos Alexandro Becker
d7efa64075
removed duplicated code 2017-08-19 12:47:04 -03:00
Carlos Alexandro Becker
afb23f9ae8
gofmt -s 2017-08-18 20:10:55 -03:00
Carlos Alexandro Becker
70e042e973
building rpm packages as well 2017-08-18 19:46:40 -03:00
Carlos Alexandro Becker
fa5168c505
fixed ineffassign 2017-08-18 19:14:50 -03:00
Carlos Alexandro Becker
35eb7144a5
fixed typo 2017-08-18 18:53:54 -03:00
Carlos Alexandro Becker
f154eab9c3
code review for #335 2017-08-18 18:44:34 -03:00
Carlos Alexandro Becker
683c019bc1 Merge pull request #335 from matthewmueller/fix/rpm
fix RPM cross-compiling (OSX => amazonlinux/CentOS)
2017-08-18 18:42:44 -03:00
Carlos Alexandro Becker
34ad854a33
improved logs 2017-08-17 18:41:08 -03:00
Matthew
164af46838 fix RPM cross-compiling (OSX => amazonlinux/CentOS) 2017-08-17 14:29:32 +07:00
Lachlan Donald
c15d4b6821
Add a Files stanza to the FPM config
This allows for extra files to be passed into FPM packages.
2017-08-09 12:00:44 +10:00
Leo Arias
58ab671b57 allow to overwrite the snap name 2017-08-07 16:28:04 +00:00
Leo Arias
0591ab4538 Allow plugs and daemon to the snaps 2017-08-04 05:42:55 +00:00
Carlos Alexandro Becker
a705c7bc7d
snapcraft pipe test coverage increased 2017-08-03 22:29:02 -03:00
Carlos Alexandro Becker
fa9f746ff3
CR 2017-08-03 21:42:11 -03:00
Carlos Alexandro Becker
2cb3808b82
maybe fixing test 2017-08-02 09:22:51 -03:00
Carlos Alexandro Becker
a3a7542f41
gofmt 2017-08-02 09:17:19 -03:00
Carlos Alexandro Becker
55fdb249f8
fixes 2017-08-02 09:16:59 -03:00
Carlos Alexandro Becker
377b800c9b
small improvements 2017-08-02 09:06:28 -03:00
Leo Arias
4c99a8e1bd Change the log to Error 2017-08-02 07:44:22 +00:00
Leo Arias
11e32885e1 create the prime dir without snapcraft 2017-07-28 01:05:43 +00:00
Leo Arias
dd958ff3a6 clean, just in case 2017-07-27 03:43:53 +00:00
Leo Arias
e8bf270ba2 add the snapcraft pipeline 2017-07-27 02:52:00 +00:00
Carlos Alexandro Becker
f643b33bda
git on testlib 2017-07-23 16:42:17 -03:00
Carlos Alexandro Becker
57753af876
testlib 2017-07-23 16:27:46 -03:00
Carlos Alexandro Becker
952d36cbfe
moved errors to another file 2017-07-18 00:21:12 -03:00
Carlos Alexandro Becker
fc440eca39
amend 2017-07-16 16:02:26 -03:00
Carlos Alexandro Becker
6da24955f5
cleanup 2017-07-16 16:02:18 -03:00
Carlos Alexandro Becker
caa4aa0553
improved formula and tests 2017-07-16 16:01:20 -03:00
Carlos Alexandro Becker
46501ba697
revert unintended change 2017-07-16 15:23:29 -03:00
Carlos Alexandro Becker
871a615c06
template ok 2017-07-16 15:21:49 -03:00
Carlos Alexandro Becker
a3db024e98
wip improving formulaes 2017-07-16 15:21:49 -03:00
Carlos Alexandro Becker
89ec38d28d
template 2017-07-16 12:35:34 -03:00
Carlos Alexandro Becker
463711f980
homebrew test support 2017-07-16 12:33:41 -03:00
Carlos Alexandro Becker
5151f176cb
allow configuring parallelism via flag 2017-07-15 16:49:52 -03:00
Carlos Alexandro Becker
35278e85f5
cleanup 2017-07-13 22:54:28 -03:00
Carlos Alexandro Becker
fbeeb4533f
Merge remote-tracking branch 'origin/master' into 298 2017-07-13 22:48:31 -03:00
Carlos Alexandro Becker
d4fc32e895
fixed brew tests 2017-07-13 22:46:21 -03:00
Carlos Alexandro Becker
af7e7142f2
fpm fixes 2017-07-13 22:40:44 -03:00