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

fix: read only the first line

This commit is contained in:
Carlos Alexandro Becker 2018-02-03 16:51:19 -02:00 committed by Carlos Alexandro Becker
parent d902dc8213
commit 32ab07a180
2 changed files with 14 additions and 3 deletions

7
pipeline/env/env.go vendored
View File

@ -3,7 +3,7 @@
package env
import (
"io/ioutil"
"bufio"
"os"
"github.com/goreleaser/goreleaser/context"
@ -59,12 +59,13 @@ func loadEnv(env, path string) (string, error) {
if err != nil {
return "", err
}
bts, err := ioutil.ReadFile(path)
f, err := os.Open(path)
if os.IsNotExist(err) {
return "", nil
}
if err != nil {
return "", err
}
return string(bts), nil
bts, _, err := bufio.NewReader(f).ReadLine()
return string(bts), err
}

View File

@ -126,6 +126,16 @@ func TestLoadEnv(t *testing.T) {
assert.NoError(tt, err)
assert.Equal(tt, "123", v)
})
t.Run("env file with an empty line at the end", func(tt *testing.T) {
var env = "SUPER_SECRET_ENV_NOPE"
assert.NoError(tt, os.Unsetenv(env))
f, err := ioutil.TempFile("", "token")
assert.NoError(t, err)
fmt.Fprintf(f, "123\n")
v, err := loadEnv(env, f.Name())
assert.NoError(tt, err)
assert.Equal(tt, "123", v)
})
t.Run("env file is not readable", func(tt *testing.T) {
var env = "SUPER_SECRET_ENV_NOPE"
assert.NoError(tt, os.Unsetenv(env))