mirror of
https://github.com/fnproject/fn.git
synced 2022-10-28 21:29:17 +03:00
make fn run pass through --link flags (#496)
This commit is contained in:
committed by
Travis Reeder
parent
8519b6d266
commit
0ce3e1d04b
12
fn/run.go
12
fn/run.go
@@ -31,6 +31,10 @@ func runflags() []cli.Flag {
|
||||
Name: "e",
|
||||
Usage: "select environment variables to be sent to function",
|
||||
},
|
||||
cli.StringSliceFlag{
|
||||
Name: "link",
|
||||
Usage: "select container links for the function",
|
||||
},
|
||||
}
|
||||
}
|
||||
|
||||
@@ -47,10 +51,10 @@ func (r *runCmd) run(c *cli.Context) error {
|
||||
image = ff.FullName()
|
||||
}
|
||||
|
||||
return runff(image, stdin(), os.Stdout, os.Stderr, c.StringSlice("e"))
|
||||
return runff(image, stdin(), os.Stdout, os.Stderr, c.StringSlice("e"), c.StringSlice("link"))
|
||||
}
|
||||
|
||||
func runff(image string, stdin io.Reader, stdout, stderr io.Writer, restrictedEnv []string) error {
|
||||
func runff(image string, stdin io.Reader, stdout, stderr io.Writer, restrictedEnv []string, links []string) error {
|
||||
sh := []string{"docker", "run", "--rm", "-i"}
|
||||
|
||||
var env []string
|
||||
@@ -65,6 +69,10 @@ func runff(image string, stdin io.Reader, stdout, stderr io.Writer, restrictedEn
|
||||
env = append(env, envvar)
|
||||
}
|
||||
|
||||
for _, l := range links {
|
||||
sh = append(sh, "--link", l)
|
||||
}
|
||||
|
||||
dockerenv := []string{"DOCKER_TLS_VERIFY", "DOCKER_HOST", "DOCKER_CERT_PATH", "DOCKER_MACHINE_NAME"}
|
||||
for _, e := range dockerenv {
|
||||
env = append(env, fmt.Sprint(e, "=", os.Getenv(e)))
|
||||
|
||||
@@ -134,7 +134,7 @@ func runlocaltest(target string, in, expectedOut, expectedErr *string, env map[s
|
||||
restrictedEnv = append(restrictedEnv, k)
|
||||
}
|
||||
|
||||
if err := runff(target, stdin, &stdout, &stderr, restrictedEnv); err != nil {
|
||||
if err := runff(target, stdin, &stdout, &stderr, restrictedEnv, nil); err != nil {
|
||||
return fmt.Errorf("%v\nstdout:%s\nstderr:%s\n", err, stdout.String(), stderr.String())
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user