in commands/action.go [492:520]
func augmentAction(cmd *cobra.Command, args []string, action *whisk.Action, update bool) (*whisk.Action, error) {
var err error
var existingAction *whisk.Action = nil
var augmentedAction *whisk.Action = new(whisk.Action)
*augmentedAction = *action
if update {
if existingAction, _, err = Client.Actions.Get(action.Name, DO_NOT_FETCH_CODE); err != nil {
whiskErr, isWhiskError := err.(*whisk.WskError)
if (isWhiskError && whiskErr.ExitCode != whisk.EXIT_CODE_NOT_FOUND) || !isWhiskError {
return nil, actionGetError(action.Name, DO_NOT_FETCH_CODE, err)
}
}
}
// Augment the action's annotations with the --web related annotations
if augmentedAction, err = augmentWebArg(cmd, args, action, augmentedAction, existingAction); err != nil {
return nil, err
}
// Augment the action's annotations with the --web-secure related annotations
if augmentedAction, err = augmentWebSecureArg(cmd, args, action, augmentedAction, existingAction); err != nil {
return nil, err
}
whisk.Debug(whisk.DbgInfo, "Augmented action struct: %#v\n", augmentedAction)
return augmentedAction, err
}