mirror of
https://github.com/kubernetes-sigs/kustomize.git
synced 2026-06-12 01:14:22 +00:00
add --fn-env flag to fn run
This commit is contained in:
@@ -67,6 +67,9 @@ func GetRunFnRunner(name string) *RunFnRunner {
|
|||||||
"a list of storage options read from the filesystem")
|
"a list of storage options read from the filesystem")
|
||||||
r.Command.Flags().StringVar(
|
r.Command.Flags().StringVar(
|
||||||
&r.User, "fn-user", "nobody", "the username/uid used to run function in container")
|
&r.User, "fn-user", "nobody", "the username/uid used to run function in container")
|
||||||
|
r.Command.Flags().StringArrayVar(
|
||||||
|
&r.Env, "fn-env", []string{},
|
||||||
|
"a list of environment variables that will be exposed to container. Each item can be key=value pair or a key name of exported env.")
|
||||||
return r
|
return r
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -94,6 +97,7 @@ type RunFnRunner struct {
|
|||||||
NetworkName string
|
NetworkName string
|
||||||
Mounts []string
|
Mounts []string
|
||||||
User string
|
User string
|
||||||
|
Env []string
|
||||||
}
|
}
|
||||||
|
|
||||||
func (r *RunFnRunner) runE(c *cobra.Command, args []string) error {
|
func (r *RunFnRunner) runE(c *cobra.Command, args []string) error {
|
||||||
@@ -309,6 +313,7 @@ func (r *RunFnRunner) preRunE(c *cobra.Command, args []string) error {
|
|||||||
StorageMounts: storageMounts,
|
StorageMounts: storageMounts,
|
||||||
ResultsDir: r.ResultsDir,
|
ResultsDir: r.ResultsDir,
|
||||||
User: runtimeutil.ContainerUser(r.User),
|
User: runtimeutil.ContainerUser(r.User),
|
||||||
|
Env: r.Env,
|
||||||
}
|
}
|
||||||
|
|
||||||
// don't consider args for the function
|
// don't consider args for the function
|
||||||
|
|||||||
@@ -204,6 +204,7 @@ apiVersion: v1
|
|||||||
NetworkName: "bridge",
|
NetworkName: "bridge",
|
||||||
EnableStarlark: true,
|
EnableStarlark: true,
|
||||||
User: "nobody",
|
User: "nobody",
|
||||||
|
Env: []string{},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -258,6 +259,7 @@ apiVersion: v1
|
|||||||
NetworkName: "bridge",
|
NetworkName: "bridge",
|
||||||
ResultsDir: "foo/",
|
ResultsDir: "foo/",
|
||||||
User: "nobody",
|
User: "nobody",
|
||||||
|
Env: []string{},
|
||||||
},
|
},
|
||||||
expected: `
|
expected: `
|
||||||
metadata:
|
metadata:
|
||||||
@@ -293,6 +295,28 @@ apiVersion: v1
|
|||||||
Path: "dir",
|
Path: "dir",
|
||||||
NetworkName: "bridge",
|
NetworkName: "bridge",
|
||||||
User: "root",
|
User: "root",
|
||||||
|
Env: []string{},
|
||||||
|
},
|
||||||
|
expected: `
|
||||||
|
metadata:
|
||||||
|
name: function-input
|
||||||
|
annotations:
|
||||||
|
config.kubernetes.io/function: |
|
||||||
|
container: {image: 'foo:bar'}
|
||||||
|
data: {}
|
||||||
|
kind: ConfigMap
|
||||||
|
apiVersion: v1
|
||||||
|
`,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "specify env",
|
||||||
|
args: []string{"run", "dir", "--fn-env", "foo=bar", "--fn-env", "baz", "--image", "foo:bar"},
|
||||||
|
path: "dir",
|
||||||
|
expectedStruct: &runfn.RunFns{
|
||||||
|
Path: "dir",
|
||||||
|
NetworkName: "bridge",
|
||||||
|
User: "nobody",
|
||||||
|
Env: []string{"foo=bar", "baz"},
|
||||||
},
|
},
|
||||||
expected: `
|
expected: `
|
||||||
metadata:
|
metadata:
|
||||||
|
|||||||
Reference in New Issue
Block a user