kompose/vendor/github.com/docker/libcompose/lookup/envfile.go
Charlie Drage 57039425b6 Update vendoring as well as libcompose
This commit updates libcompose in order to merge in
https://github.com/docker/libcompose/pull/423 which affected
https://github.com/kubernetes-incubator/kompose/issues/92 by not
erroring out when an image name wasn't provided.

Closes https://github.com/kubernetes-incubator/kompose/issues/92

As well as knocks out the last required milestone for a 0.2.1 release
https://github.com/kubernetes-incubator/kompose/milestone/2
2017-01-04 13:18:07 -05:00

32 lines
815 B
Go

package lookup
import (
"strings"
"github.com/docker/docker/runconfig/opts"
"github.com/docker/libcompose/config"
)
// EnvfileLookup is a structure that implements the project.EnvironmentLookup interface.
// It holds the path of the file where to lookup environment values.
type EnvfileLookup struct {
Path string
}
// Lookup creates a string slice of string containing a "docker-friendly" environment string
// in the form of 'key=value'. It gets environment values using a '.env' file in the specified
// path.
func (l *EnvfileLookup) Lookup(key string, config *config.ServiceConfig) []string {
envs, err := opts.ParseEnvFile(l.Path)
if err != nil {
return []string{}
}
for _, env := range envs {
e := strings.Split(env, "=")
if e[0] == key {
return []string{env}
}
}
return []string{}
}