1
0
mirror of https://github.com/goreleaser/goreleaser.git synced 2025-03-17 20:47:50 +02:00

fix: non-templateable field as default build.id (#1060)

* fix: non-templateable field as default build.id

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

* test: added test for build.id

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

* test: fixed test

Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
This commit is contained in:
Carlos Alexandro Becker 2019-06-28 08:52:10 -03:00 committed by GitHub
parent ce5ade64c1
commit f656e68ef9
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 26 additions and 2 deletions

View File

@ -63,7 +63,7 @@ func buildWithDefaults(ctx *context.Context, build config.Build) config.Build {
build.Binary = ctx.Config.ProjectName
}
if build.ID == "" {
build.ID = build.Binary
build.ID = ctx.Config.ProjectName
}
for k, v := range build.Env {
build.Env[k] = os.ExpandEnv(v)

View File

@ -229,6 +229,7 @@ func TestDefaultEmptyBuild(t *testing.T) {
}
assert.NoError(t, Pipe{}.Default(ctx))
var build = ctx.Config.Builds[0]
assert.Equal(t, ctx.Config.ProjectName, build.ID)
assert.Equal(t, ctx.Config.ProjectName, build.Binary)
assert.Equal(t, ".", build.Main)
assert.Equal(t, []string{"linux", "darwin"}, build.Goos)
@ -238,6 +239,25 @@ func TestDefaultEmptyBuild(t *testing.T) {
assert.Equal(t, "-s -w -X main.version={{.Version}} -X main.commit={{.Commit}} -X main.date={{.Date}} -X main.builtBy=goreleaser", build.Ldflags[0])
}
func TestDefaultBuildID(t *testing.T) {
var ctx = &context.Context{
Config: config.Project{
ProjectName: "foo",
Builds: []config.Build{
{
Binary: "{{.Env.FOO}}",
},
{
Binary: "bar",
},
},
},
}
assert.EqualError(t, Pipe{}.Default(ctx), "found 2 items with the ID 'foo', please fix your config")
var build = ctx.Config.Builds[0]
assert.Equal(t, ctx.Config.ProjectName, build.ID)
}
func TestSeveralBuildsWithTheSameID(t *testing.T) {
var ctx = &context.Context{
Config: config.Project{

View File

@ -68,9 +68,13 @@ func TestFillPartial(t *testing.T) {
},
},
Builds: []config.Build{
{Binary: "testreleaser"},
{
ID: "build1",
Binary: "testreleaser",
},
{Goos: []string{"linux"}},
{
ID: "build3",
Binary: "another",
Ignore: []config.IgnoredBuild{
{Goos: "darwin", Goarch: "amd64"},