2

我正在开发一个基于弹簧的应用程序,我炸了我的系统,因此丢失了应用程序源代码。无论如何下载cloudfoundry v2中的应用程序文件夹(WAR)?

我知道有一种方法可以在 v1 中下载 WAR 文件夹 - https://gist.github.com/danhigham/4705713但我无法在 v2 中找到方法。

我可以使用(无法下载)查看文件内容-

cf 文件应用程序名称路径

4

1 回答 1

3

是的,您可以在 Cloud Foundry (CF) v2 中下载您的应用程序代码。允许通过 REST API 连接到 CF(请参阅cloud controller 中的这一行)。很好的解释如何使用它(可能已经过时)在这里。这是个好消息。

坏消息是目前 cf 工具(v2 的 ruby​​ 客户端)尚不支持此操作。但是您仍然有几个选择:

  • 使用任何 REST 客户端(例如浏览器的插件,其中有很多)手动执行此请求。

  • 改进 cf 客户端(或任何其他库,例如.NET 客户端库到 CF v2,它对我有用)以支持下载操作。这是一种更难的方法,但是您可以将您的工作贡献给社区(作为您提供的 v1 示例的作者)。

我使用了第一种方法:

  • 首先,我针对 CF 服务器(在我的例子中是https://api.run.pivotal.io)并使用ruby​​ cf client登录到它。
  • 然后我.cf\tokens.yml在我的用户目录中打开了文件并复制:token:了对应于我的目标的文件(此外,我将此令牌的值作为Authosization标头添加到我使用 REST 客户端完成的每个请求中)。
  • 然后,使用 REST 客户端,我通过向https://api.run.pivotal.io/v2/apps URl发出GET请求来获得应用程序列表。从它的回复中,我发现了我感兴趣的应用程序的 GUID(例如,3F2504E0-4F89-11D3-9A0C-0305E82C3301)。
  • 最后,我向https://api.run.pivotal.io//v2/apps/3F2504E0-4F89-11D3-9A0C-0305E82C3301/downloadGET发出了请求。它给了我一个 HTTP/1.1 302 Found 重定向,并通过在浏览器中打开响应标头中提供的 URL,我下载了我的应用程序存档。Location
于 2013-08-28T10:12:07.000 回答