in commands/action.go [1260:1288]
func isWebAction(client *whisk.Client, qname QualifiedName) (*whisk.Action, error) {
var err error = nil
savedNs := client.Namespace
client.Namespace = qname.GetNamespace()
fullActionName := "/" + qname.GetNamespace() + "/" + qname.GetEntityName()
action, _, err := client.Actions.Get(qname.GetEntityName(), DO_NOT_FETCH_CODE)
if err != nil {
whisk.Debug(whisk.DbgError, "client.Actions.Get(%s, %t) error: %s\n", fullActionName, DO_NOT_FETCH_CODE, err)
whisk.Debug(whisk.DbgError, "Unable to obtain action '%s' for web action validation\n", fullActionName)
errMsg := wski18n.T("Unable to get action '{{.name}}': {{.err}}",
map[string]interface{}{"name": fullActionName, "err": err})
err = whisk.MakeWskErrorFromWskError(errors.New(errMsg), err, whisk.EXIT_CODE_ERR_NETWORK, whisk.DISPLAY_MSG,
whisk.NO_DISPLAY_USAGE)
} else {
err = errors.New(wski18n.T("Action '{{.name}}' is not a web action. Issue 'wsk action update \"{{.name}}\" --web true' to convert the action to a web action.",
map[string]interface{}{"name": fullActionName}))
if action.WebAction() {
err = nil
}
}
client.Namespace = savedNs
return action, err
}