mirror of
https://github.com/kubernetes-sigs/kustomize.git
synced 2026-06-10 08:20:59 +00:00
Merge pull request #2900 from Shell32-Natsu/add-fn-env
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")
|
||||
r.Command.Flags().StringVar(
|
||||
&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
|
||||
}
|
||||
|
||||
@@ -94,6 +97,7 @@ type RunFnRunner struct {
|
||||
NetworkName string
|
||||
Mounts []string
|
||||
User string
|
||||
Env []string
|
||||
}
|
||||
|
||||
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,
|
||||
ResultsDir: r.ResultsDir,
|
||||
User: runtimeutil.ContainerUser(r.User),
|
||||
Env: r.Env,
|
||||
}
|
||||
|
||||
// don't consider args for the function
|
||||
|
||||
@@ -204,6 +204,7 @@ apiVersion: v1
|
||||
NetworkName: "bridge",
|
||||
EnableStarlark: true,
|
||||
User: "nobody",
|
||||
Env: []string{},
|
||||
},
|
||||
},
|
||||
{
|
||||
@@ -258,6 +259,7 @@ apiVersion: v1
|
||||
NetworkName: "bridge",
|
||||
ResultsDir: "foo/",
|
||||
User: "nobody",
|
||||
Env: []string{},
|
||||
},
|
||||
expected: `
|
||||
metadata:
|
||||
@@ -293,6 +295,28 @@ apiVersion: v1
|
||||
Path: "dir",
|
||||
NetworkName: "bridge",
|
||||
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: `
|
||||
metadata:
|
||||
|
||||
Reference in New Issue
Block a user