1

我需要通过这个REST API在我的 Cloudify 2.7 实例上启动一个应用程序

如您所见,我需要一些请求参数,例如applicationFileUploadKey, applicationOverridesUploadKeycloudOverridesUploadKey甚至applicationName.

在 REST 文档中,我找不到任何显示这些参数的 REST API。我以为我可以找到一些 API,它可以返回可安装应用程序列表以及部署所需的相应参数,但我什么也没找到。

您知道如何通过 REST 获取上传的应用程序的部署参数吗?

谢谢朱利奥

4

1 回答 1

2

安装应用程序需要:

  1. 打包应用程序
  2. 上传相关文件(并获取他们的上传密钥)
  3. 调用 Rest API 来安装应用程序。

作为参考,您可以在此处的“doExecuteNewRestClient”中查看这些步骤是如何作为 CLI install-application 命令的一部分实现的

注意:每个上传操作都会返回一个唯一的密钥(我提到的上传密钥),这是您稍后在实际调用 Rest API 安装应用程序时应该使用的。

上传的文件仅在服务器上驻留大约。5 分钟,因此上传 repo 不能用作存储库,并且即使是同一个应用程序,下次安装应用程序时也会再次上传文件。

上传食谱是强制性的!

以下上传是可选的,它们只是自定义您的部署:

• 云配置 – 包含云驱动程序用于此应用程序的配置信息的文件或目录(文件大小限制为 10K)

• overrides – 包含用于覆盖应用程序及其服务的当前属性的属性的文件(限制为 20K)

• 云覆盖 – 包含用于覆盖此应用程序及其服务的当前云配置的属性的文件 (10K)


要上传文件并获取密钥,请执行以下步骤:

  1. 确认文件不大于最大上传大小限制。食谱的限制是 100MB

  2. 将打包的应用程序发布到 请求中your_management_server:8100/2.7.0/upload/your_packed_application.zip ,并将文件作为多部分实体添加到请求中。您可以在“ postFile ”方法中看到 Rest 客户端是如何完成的。

  3. 查看上述类中的方法“executeRequest”,了解如何处理错误并读取响应对象

  4. 从响应中提取上传密钥

然后继续使用您拥有的密钥调用 Rest 安装应用程序 API。

于 2014-05-19T09:58:00.123 回答