I have finished the big cleanup of the user interface of the Go Runtime and I prepared some examples. One example was obviously how to use the OpenWhisk Client Go library (included as a dependency using dep).
The library works without problems when I run an external test (because it picks its parameters from ~/.wskprops) but fails when I run it in OpenWhisk. I investigated and fond the library does NOT take its parameters from the __OW_API_KEY, __OW_API_HOST and __OW_NAMESPACE as I would expect. Furthermore there is not an obvious way to map those values in the configuration. There is this config := &whisk.Config{ Host: "openwhisk.ng.bluemix.net", Version: "v1" Namespace: "_", AuthKey: "aaaaa-bbbbb-ccccc-ddddd-eeeee" } But for example, I miss the API version in the environment variables, I have to split the "https://xxx:443" format of the API host to extract the Host. I can submit a patch to fix that but we need agree how. I think at that - least the default constructor should check if those variables are available before looking for a ~/wskprops. - we should agree on a (future?) __OW_API_VERSION environment variables and if it is missing assume a v1 - in the current _OW_API_HOST there is the port but I do not see it the port. - There are some fields I do not understand: type Config struct { Namespace string Cert string // what is this? Key string AuthToken string // what is the difference with key? Host string BaseURL *url.URL // Should I use Host or BaseURL? what is the format? Version string Verbose bool Debug bool Insecure bool UserAgent string ApigwAccessToken string AdditionalHeaders http.Header } -- Michele Sciabarra mich...@sciabarra.com