From 77be3379b23cf99644ebf0a3bdf94b635730fbda Mon Sep 17 00:00:00 2001 From: smruthi2187 <34555664+smruthi2187@users.noreply.github.com> Date: Mon, 26 Mar 2018 12:31:02 -0700 Subject: [PATCH] Prepending a slash to user input url if missing. (#547) * Prepending a slash to user input url if missing. * Adding the url slash check for spec. --- fission/function.go | 4 ++++ fission/httptrigger.go | 4 ++++ fission/spec.go | 3 +++ 3 files changed, 11 insertions(+) diff --git a/fission/function.go b/fission/function.go index beb4afca..d1fa7e75 100644 --- a/fission/function.go +++ b/fission/function.go @@ -274,6 +274,10 @@ func fnCreate(c *cli.Context) error { if len(triggerUrl) == 0 { return nil } + if !strings.HasPrefix(triggerUrl, "/") { + triggerUrl = fmt.Sprintf("/%s", triggerUrl) + } + method := c.String("method") if len(method) == 0 { method = "GET" diff --git a/fission/httptrigger.go b/fission/httptrigger.go index 21771aa0..5201d919 100644 --- a/fission/httptrigger.go +++ b/fission/httptrigger.go @@ -80,6 +80,10 @@ func htCreate(c *cli.Context) error { if len(triggerUrl) == 0 { fatal("Need a trigger URL, use --url") } + if !strings.HasPrefix(triggerUrl, "/") { + triggerUrl = fmt.Sprintf("/%s", triggerUrl) + } + method := c.String("method") if len(method) == 0 { method = "GET" diff --git a/fission/spec.go b/fission/spec.go index 8ea7dbff..05933ddc 100644 --- a/fission/spec.go +++ b/fission/spec.go @@ -246,6 +246,9 @@ func parseYaml(path string, b []byte, fr *FissionResources) error { warn(fmt.Sprintf("Failed to parse %v in %v: %v", tm.Kind, path, err)) return err } + if !strings.HasPrefix(v.Spec.RelativeURL, "/") { + v.Spec.RelativeURL = fmt.Sprintf("/%s", v.Spec.RelativeURL) + } fr.httpTriggers = append(fr.httpTriggers, v) case "KubernetesWatchTrigger": var v crd.KubernetesWatchTrigger