如何从Bluemix中的OpenWhisk Java操作访问VCAP_SERVICES?

时间:2016-08-10 06:24:53

标签: ibm-cloud openwhisk

我想从OpenWhisk操作访问另一个Bluemix服务,而不想从外部传递凭据。似乎VCAP_SERVICES不存在于JVM的环境中。有没有办法检索它?

1 个答案:

答案 0 :(得分:2)

确实OpenWhisk中没有VCAP_SERVICES环境变量。

如果您在Bluemix中使用Cloudant服务,您会注意到Bluemix中的OpenWhisk会自动为您的Cloudant服务实例创建包绑定,如OpenWhisk Catalog documentation中所述。

在我的OpenWhisk开发中,我采用的策略是创建一个我定义参数的包。然后我在这个包中创建我的动作。所有操作都继承了包中定义的参数,因此这为我提供了一种共享服务凭据的简单方法。如果我只有一个动作或没有包,我会在创建时将凭证作为参数传递给动作。

此处https://github.com/IBM-Bluemix/openwhisk-visionapp的示例我在其中初始化我的操作:

wsk action create -p cloudantUrl [URL] -p cloudantDbName openwhisk-vision -p watsonApiKey [123] vision-analysis analysis.js