add namespace param for fn and env (#2556)

This PR moves fission CLI as closer as possible to kubectl command behaviour.  We have improved namespace handling behaviour across CLI.

* add namespace param for fn and env
* use common fn for ns check
* update validation
* default namespace for httpTrigger, env and package, config and triggers
* use default ns
* add namespace filter to spec
* add forceNamespace flag
* set current namespace
* add default namespace in config
* add namespace specific destroy
* add all namespace in the list of resources
* add namespace as global tag
* use %s instead of %v
* add test cases for namespace
* use ns in get all functions
This commit is contained in:
neha_gupta
2022-10-11 13:23:47 +05:30
committed by GitHub
parent 0739aca920
commit b9513868ed
74 changed files with 1289 additions and 304 deletions
+6 -3
View File
@@ -47,20 +47,23 @@ func (opts *CreateSubCommand) do(input cli.Input) error {
return opts.run(input)
}
func (opts *CreateSubCommand) complete(input cli.Input) error {
func (opts *CreateSubCommand) complete(input cli.Input) (err error) {
// canary configs can be created for functions in the same namespace
name := input.String(flagkey.CanaryName)
ht := input.String(flagkey.CanaryHTTPTriggerName)
newFunc := input.String(flagkey.CanaryNewFunc)
oldFunc := input.String(flagkey.CanaryOldFunc)
fnNs := input.String(flagkey.NamespaceFunction)
_, fnNs, err := util.GetResourceNamespace(input, flagkey.NamespaceFunction)
if err != nil {
return errors.Wrap(err, "error in creating canaryconfig")
}
incrementStep := input.Int(flagkey.CanaryWeightIncrement)
failureThreshold := input.Int(flagkey.CanaryFailureThreshold)
incrementInterval := input.String(flagkey.CanaryIncrementInterval)
// check for time parsing
_, err := time.ParseDuration(incrementInterval)
_, err = time.ParseDuration(incrementInterval)
if err != nil {
return errors.Wrap(err, "error parsing time duration")
}