Cloud Foundry - 如何跨组织检索每个应用 运行 的工件版本?
Cloud foundry - How to retrieve version of artifact of every app running across Orgs?
在PCF平台中,我们有多个组织,每个组织中都有多个空间。
每个 space 都部署了多个应用程序,其中包含提到工件版本的清单文件。例如:如果您 push 一个应用程序 (some-api
) 将使用以下具有工件版本 (0.0.1
).
的清单文件进行部署
---
applications:
- name: some-api
instances: 1
memory: 1G
buildpack: java_buildpack_offline
path: target/artifact.jar
routes:
- route: some.router.com
services:
- abc
- def
env:
ARTIFACT_VERSION: 0.0.1
目标是在 Org 中拥有一个包含 app 到 artifact version 的仪表板。处于 Running
状态
的应用
1) 由于工件版本存储为应用程序的环境变量,在应用程序的推送 中,跨 Orgs/spaces,是否可以检索工件版本每个应用?
2) 如果不是,那么在 PCF 中存储每个应用 运行 的工件版本的更好方法是什么?为了在 Orgs/spaces
期间检索处于 Running
状态的任何应用程序的工件版本
3) 在浏览器仪表板中显示应用程序的工件版本列表。 PCF 平台是否提供任何工具(如 firehouse)来提供 PCF 中可用指标的仪表板?
您可以构建具有请求功能的自定义应用程序(包含所有 运行 应用程序和 ARTIFACT_VERSION 值的仪表板),这将使用 Cloud Foundry API.
还有 CLI 版本 cf env
(doc) 用于在 CLI 中快速检查。
更新:
显然,您想使用事件流而不是定期拉取应用环境状态。在这种情况下,使用 Firehouse 并监视 Staging Complete
事件,这将触发具有该 Staging Complete
事件的应用程序的 getEnvValue(ARTIFACT_VERSION)
操作。
在PCF平台中,我们有多个组织,每个组织中都有多个空间。
每个 space 都部署了多个应用程序,其中包含提到工件版本的清单文件。例如:如果您 push 一个应用程序 (some-api
) 将使用以下具有工件版本 (0.0.1
).
---
applications:
- name: some-api
instances: 1
memory: 1G
buildpack: java_buildpack_offline
path: target/artifact.jar
routes:
- route: some.router.com
services:
- abc
- def
env:
ARTIFACT_VERSION: 0.0.1
目标是在 Org 中拥有一个包含 app 到 artifact version 的仪表板。处于 Running
状态
1) 由于工件版本存储为应用程序的环境变量,在应用程序的推送 中,跨 Orgs/spaces,是否可以检索工件版本每个应用?
2) 如果不是,那么在 PCF 中存储每个应用 运行 的工件版本的更好方法是什么?为了在 Orgs/spaces
期间检索处于Running
状态的任何应用程序的工件版本
3) 在浏览器仪表板中显示应用程序的工件版本列表。 PCF 平台是否提供任何工具(如 firehouse)来提供 PCF 中可用指标的仪表板?
您可以构建具有请求功能的自定义应用程序(包含所有 运行 应用程序和 ARTIFACT_VERSION 值的仪表板),这将使用 Cloud Foundry API.
还有 CLI 版本 cf env
(doc) 用于在 CLI 中快速检查。
更新:
显然,您想使用事件流而不是定期拉取应用环境状态。在这种情况下,使用 Firehouse 并监视 Staging Complete
事件,这将触发具有该 Staging Complete
事件的应用程序的 getEnvValue(ARTIFACT_VERSION)
操作。