mirror of
https://github.com/goreleaser/nfpm
synced 2024-05-09 20:06:08 +02:00
feat: expand environment variables in maintainer (#463)
This commit is contained in:
parent
38d54695f1
commit
97486f15f8
3
nfpm.go
3
nfpm.go
|
@ -159,7 +159,8 @@ func (c *Config) expandEnvVars() {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Vendor field
|
// Maintainer and vendor fields
|
||||||
|
c.Info.Maintainer = os.Expand(c.Info.Maintainer, c.envMappingFunc)
|
||||||
c.Info.Vendor = os.Expand(c.Info.Vendor, c.envMappingFunc)
|
c.Info.Vendor = os.Expand(c.Info.Vendor, c.envMappingFunc)
|
||||||
|
|
||||||
// Package signing related fields
|
// Package signing related fields
|
||||||
|
|
10
nfpm_test.go
10
nfpm_test.go
|
@ -245,6 +245,7 @@ func TestOptionsFromEnvironment(t *testing.T) {
|
||||||
version = "1.0.0"
|
version = "1.0.0"
|
||||||
vendor = "GoReleaser"
|
vendor = "GoReleaser"
|
||||||
packager = "nope"
|
packager = "nope"
|
||||||
|
maintainerEmail = "nope@example.com"
|
||||||
)
|
)
|
||||||
|
|
||||||
t.Run("version", func(t *testing.T) {
|
t.Run("version", func(t *testing.T) {
|
||||||
|
@ -263,6 +264,15 @@ func TestOptionsFromEnvironment(t *testing.T) {
|
||||||
require.Equal(t, release, info.Release)
|
require.Equal(t, release, info.Release)
|
||||||
})
|
})
|
||||||
|
|
||||||
|
t.Run("maintainer", func(t *testing.T) {
|
||||||
|
os.Clearenv()
|
||||||
|
os.Setenv("GIT_COMMITTER_NAME", packager)
|
||||||
|
os.Setenv("GIT_COMMITTER_EMAIL", maintainerEmail)
|
||||||
|
info, err := nfpm.Parse(strings.NewReader("name: foo\nmaintainer: $GIT_COMMITTER_NAME <$GIT_COMMITTER_EMAIL>"))
|
||||||
|
require.NoError(t, err)
|
||||||
|
require.Equal(t, fmt.Sprintf("%s <%s>", packager, maintainerEmail), info.Maintainer)
|
||||||
|
})
|
||||||
|
|
||||||
t.Run("vendor", func(t *testing.T) {
|
t.Run("vendor", func(t *testing.T) {
|
||||||
os.Clearenv()
|
os.Clearenv()
|
||||||
os.Setenv("VENDOR", vendor)
|
os.Setenv("VENDOR", vendor)
|
||||||
|
|
|
@ -55,6 +55,7 @@ section: default
|
||||||
priority: extra
|
priority: extra
|
||||||
|
|
||||||
# Maintainer.
|
# Maintainer.
|
||||||
|
# This will expand any env var you set in the field, eg maintainer: ${GIT_COMMITTER_NAME} <${GIT_COMMITTER_EMAIL}>
|
||||||
# Defaults to empty on rpm and apk
|
# Defaults to empty on rpm and apk
|
||||||
# Leaving the 'maintainer' field unset will not be allowed in a future version
|
# Leaving the 'maintainer' field unset will not be allowed in a future version
|
||||||
maintainer: Carlos Alexandro Becker <root@carlosbecker.com>
|
maintainer: Carlos Alexandro Becker <root@carlosbecker.com>
|
||||||
|
|
Loading…
Reference in New Issue