Skip to content

Commit 046d6a0

Browse files
command.go file change to get user input feed params
debug ert remove unce
1 parent 7bac1c3 commit 046d6a0

File tree

5 files changed

+219
-61
lines changed

5 files changed

+219
-61
lines changed

commands/action.go

+2-15
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,6 @@ import (
2727
"os"
2828
"path/filepath"
2929
"reflect"
30-
"strconv"
3130
"strings"
3231
"time"
3332

@@ -866,32 +865,20 @@ func updateWebSecureAnnotation(websecure string, annotations whisk.KeyValueArr)
866865
_, existingSecretIsInt = existingSecret.(json.Number)
867866
}
868867

869-
if (newSecretIsInt && existingSecretIsInt) || (newSecretIsInt && existingSecretCanConvertToInt(existingSecret)) {
868+
if existingSecretIsInt && newSecretIsInt {
870869
whisk.Debug(whisk.DbgInfo, "Retaining existing secret number\n")
871870
} else if existingSecret != nil && disableSecurity {
872871
whisk.Debug(whisk.DbgInfo, "disabling web-secure; deleting annotation: %v\n", WEB_SECURE_ANNOT)
873872
annotations = deleteKey(WEB_SECURE_ANNOT, annotations)
874873
} else {
875874
whisk.Debug(whisk.DbgInfo, "Setting %v annotation; prior secret %v new secret %v\n",
876875
WEB_SECURE_ANNOT, reflect.TypeOf(existingSecret), reflect.TypeOf(secureSecret))
877-
if newSecretIsInt {
878-
annotations = annotations.AddOrReplace(&whisk.KeyValue{Key: WEB_SECURE_ANNOT, Value: strconv.FormatInt(secureSecret.(int64), 10)})
879-
} else {
880-
annotations = annotations.AddOrReplace(&whisk.KeyValue{Key: WEB_SECURE_ANNOT, Value: secureSecret})
881-
}
876+
annotations = annotations.AddOrReplace(&whisk.KeyValue{Key: WEB_SECURE_ANNOT, Value: secureSecret})
882877
}
883878

884879
return annotations
885880
}
886881

887-
func existingSecretCanConvertToInt(secret interface{}) bool {
888-
if underlyingString, ok := secret.(string); ok {
889-
_, convertErr := strconv.ParseInt(underlyingString, 10, 64)
890-
return convertErr == nil
891-
}
892-
return false
893-
}
894-
895882
//
896883
// Generate a secret according to the --web-secure setting
897884
// true: return a random int64

commands/commands.go

+31-9
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ package commands
1919

2020
import (
2121
"errors"
22+
"fmt"
2223
"net/http"
2324
"os"
2425
"runtime"
@@ -131,9 +132,11 @@ func getValueFromArgs(args []string, argIndex int, parsedArgs []string) ([]strin
131132
return parsedArgs, args, whiskErr
132133
}
133134

134-
func parseArgs(args []string) ([]string, []string, []string, error) {
135+
func parseArgs(args []string) ([]string, []string, []string, []string, []string, error) {
135136
var paramArgs []string
136137
var annotArgs []string
138+
var feedParamArgs []string
139+
var triggerParamArgs []string
137140
var whiskErr error
138141

139142
i := 0
@@ -147,14 +150,14 @@ func parseArgs(args []string) ([]string, []string, []string, error) {
147150
map[string]interface{}{"err": whiskErr})
148151
whiskErr = whisk.MakeWskError(errors.New(errMsg), whisk.EXIT_CODE_ERR_GENERAL, whisk.DISPLAY_MSG,
149152
whisk.DISPLAY_USAGE)
150-
return nil, nil, nil, whiskErr
153+
return nil, nil, nil, nil, nil, whiskErr
151154
}
152155

153156
filename := paramArgs[len(paramArgs)-1]
154157
paramArgs[len(paramArgs)-1], whiskErr = ReadFile(filename)
155158
if whiskErr != nil {
156159
whisk.Debug(whisk.DbgError, "readFile(%s) error: %s\n", filename, whiskErr)
157-
return nil, nil, nil, whiskErr
160+
return nil, nil, nil, nil, nil, whiskErr
158161
}
159162
} else if args[i] == "-A" || args[i] == "--annotation-file" {
160163
annotArgs, args, whiskErr = getValueFromArgs(args, i, annotArgs)
@@ -164,14 +167,14 @@ func parseArgs(args []string) ([]string, []string, []string, error) {
164167
map[string]interface{}{"err": whiskErr})
165168
whiskErr = whisk.MakeWskError(errors.New(errMsg), whisk.EXIT_CODE_ERR_GENERAL, whisk.DISPLAY_MSG,
166169
whisk.DISPLAY_USAGE)
167-
return nil, nil, nil, whiskErr
170+
return nil, nil, nil, nil, nil, whiskErr
168171
}
169172

170173
filename := annotArgs[len(annotArgs)-1]
171174
annotArgs[len(annotArgs)-1], whiskErr = ReadFile(filename)
172175
if whiskErr != nil {
173176
whisk.Debug(whisk.DbgError, "readFile(%s) error: %s\n", filename, whiskErr)
174-
return nil, nil, nil, whiskErr
177+
return nil, nil, nil, nil, nil, whiskErr
175178
}
176179
} else if args[i] == "-p" || args[i] == "--param" {
177180
paramArgs, args, whiskErr = getKeyValueArgs(args, i, paramArgs)
@@ -181,17 +184,34 @@ func parseArgs(args []string) ([]string, []string, []string, error) {
181184
map[string]interface{}{"err": whiskErr})
182185
whiskErr = whisk.MakeWskError(errors.New(errMsg), whisk.EXIT_CODE_ERR_GENERAL, whisk.DISPLAY_MSG,
183186
whisk.DISPLAY_USAGE)
184-
return nil, nil, nil, whiskErr
187+
return nil, nil, nil, nil, nil, whiskErr
185188
}
186189
} else if args[i] == "-a" || args[i] == "--annotation" {
190+
fmt.Println("4")
187191
annotArgs, args, whiskErr = getKeyValueArgs(args, i, annotArgs)
188192
if whiskErr != nil {
189193
whisk.Debug(whisk.DbgError, "getKeyValueArgs(%#v, %d) failed: %s\n", args, i, whiskErr)
190194
errMsg := wski18n.T("The annotation arguments are invalid: {{.err}}",
191195
map[string]interface{}{"err": whiskErr})
192196
whiskErr = whisk.MakeWskError(errors.New(errMsg), whisk.EXIT_CODE_ERR_GENERAL, whisk.DISPLAY_MSG,
193197
whisk.DISPLAY_USAGE)
194-
return nil, nil, nil, whiskErr
198+
return nil, nil, nil, nil, nil, whiskErr
199+
}
200+
} else if args[i] == "-F" || args[i] == "--feed-param" {
201+
feedParamArgs, args, whiskErr = getKeyValueArgs(args, i, feedParamArgs)
202+
if whiskErr != nil {
203+
whisk.Debug(whisk.DbgError, "getKeyValueArgs(%#v, %d) failed: %s\n", args, i, whiskErr)
204+
whiskErr = whisk.MakeWskError(whiskErr, whisk.EXIT_CODE_ERR_GENERAL, whisk.DISPLAY_MSG,
205+
whisk.DISPLAY_USAGE)
206+
return nil, nil, nil, nil, nil, whiskErr
207+
}
208+
} else if args[i] == "-T" || args[i] == "--trigger-param" {
209+
triggerParamArgs, args, whiskErr = getKeyValueArgs(args, i, triggerParamArgs)
210+
if whiskErr != nil {
211+
whisk.Debug(whisk.DbgError, "getKeyValueArgs(%#v, %d) failed: %s\n", args, i, whiskErr)
212+
whiskErr = whisk.MakeWskError(whiskErr, whisk.EXIT_CODE_ERR_GENERAL, whisk.DISPLAY_MSG,
213+
whisk.DISPLAY_USAGE)
214+
return nil, nil, nil, nil, nil, whiskErr
195215
}
196216
} else {
197217
i++
@@ -200,16 +220,18 @@ func parseArgs(args []string) ([]string, []string, []string, error) {
200220

201221
whisk.Debug(whisk.DbgInfo, "Found param args '%s'.\n", paramArgs)
202222
whisk.Debug(whisk.DbgInfo, "Found annotations args '%s'.\n", annotArgs)
223+
whisk.Debug(whisk.DbgInfo, "Found feed param args '%s'.\n", feedParamArgs)
224+
whisk.Debug(whisk.DbgInfo, "Found trigger param args '%s'.\n", triggerParamArgs)
203225
whisk.Debug(whisk.DbgInfo, "Arguments with param args removed '%s'.\n", args)
204226

205-
return args, paramArgs, annotArgs, nil
227+
return args, paramArgs, annotArgs, feedParamArgs, triggerParamArgs, nil
206228
}
207229

208230
func Execute() error {
209231
var err error
210232

211233
whisk.Debug(whisk.DbgInfo, "wsk args: %#v\n", os.Args)
212-
os.Args, Flags.common.param, Flags.common.annotation, err = parseArgs(os.Args)
234+
os.Args, Flags.common.param, Flags.common.annotation, Flags.trigger.feedParam, Flags.trigger.triggerParam, err = parseArgs(os.Args)
213235

214236
if err != nil {
215237
whisk.Debug(whisk.DbgError, "parseParams(%s) failed: %s\n", os.Args, err)

commands/flags.go

+3-1
Original file line numberDiff line numberDiff line change
@@ -112,7 +112,9 @@ type FlagsStruct struct {
112112

113113
// trigger
114114
trigger struct {
115-
summary bool
115+
summary bool
116+
feedParam []string
117+
triggerParam []string
116118
}
117119

118120
//sdk

0 commit comments

Comments
 (0)