Cloud Foundry-如何订阅/观看流水事件?

时间:2019-03-16 01:40:50

标签: events firebase-cloud-messaging cloud cloudfoundry pivotal-cloud-foundry

任务:编写一个简单的独立应用程序(app1),该应用程序可以订阅(观看)来自关键云铸造厂的火警事件。尚未了解将用于app1的技术。

Python是我的主要技能,但如果需要,可以使用Java或GO

app1需要订阅(监视)在Pivotal Cloud Foundry中跨组织运行的任何应用程序的Staging complete事件,并接收该应用程序详细信息,然后触发cf env <app_name>以获取该应用程序的环境详细信息刚刚进入分阶段的应用程序。


任何应用程序都带有清单文件,带有环境变量(如下所示)

    --- applications: 

     - name: some-app

        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

1)哪种技术更适合(支持)该任务?基本观看Firehose事件并运行cf env <on_that_app>

2)我的代码(app1)是否应该在PCFoundry中运行以观看Firehose事件?我可以在PCF外部运行app1来观看Firehose事件吗?

作为新手,请分享一些有关在PCFoundry(PAAS)中学习消防水带事件的资源

1 个答案:

答案 0 :(得分:2)

Golang概念(请不要使用任何复制/粘贴代码):

  1. 从多普勒获取日志消息- 使用cloudfoundry/noaa并仅查看日志Staging complete
  2. 调用CF客户程序并获取env变量值-使用cloudfoundry-community/go-cfclient

您可以从任何地方观看Firehose事件。您仅需要与Doppler URL的网络连接,因此可以在localhost开发机上完成开发,并且可以在Cloud Foundry中运行生产版本。您可以使用websocket,因此可以将更改直接推送到浏览器。恕我直言,最终的Golang实施将需要disk_quota: 64Mmemory: 16M