2017-06-16 27 views
1

我有一個Spring雲數據流的實例,它支持我需要的應用程序和流。我甚至編寫了在命令外殼中工作的腳本,以便一次部署所有這些東西。問題是我現在有一個手動步驟,我需要做,而不是僅僅讓它開箱即用。如何自動部署Spring Data Flow?

對於Windows和Linux,我知道如何通過shell運行腳本,並在腳本運行時結束腳本。

問題是,我似乎可以用Spring Data Flow Shell做同樣的事情。我想要做這樣的事情:

java -jar spring-cloud-dataflow-shell.jar --runScript my-awesome-script.shell 

不過,我看不到,說這樣的事情存在任何文件。我能找到的每個選項都沒有運行腳本並保持殼體打開。或者還有另一種選擇,我不知道。在過去的6年裏,我的Java經歷被15年的Java打斷,Spring看起來與以前完全不同。

回答

1

有時候我就是這樣一個數字。在昨天整天搜索它之後,我發現使用--help選項可以獲得shell的命令行選項。

C:\Dev>java -jar spring-cloud-dataflow-shell-1.2.1.RELEASE.jar --help 
Data Flow Options: 
    --dataflow.uri=<uri>        Address of the Data Flow Server [default: http://localhost:9393]. 
    --dataflow.username=<USER>      Username of the Data Flow Server [no default]. 
    --dataflow.password=<PASSWORD>     Password of the Data Flow Server [no default]. 
    --dataflow.credentials-provider-command=<COMMAND> Executes an external command which must return an OAuth Access Token [no default]. 
    --dataflow.skip-ssl-validation=<true|false>  Accept any SSL certificate (even self-signed) [default: no]. 
    --spring.shell.historySize=<SIZE>     Default size of the shell log file [default: 3000]. 
    --spring.shell.commandFile=<FILE>     Data Flow Shell executes commands read from the file(s) and then exits. 
    --help           This message. 

當我嘗試了--spring.shell.commandFile選項,這也正是我所需要的殼裏做:運行腳本和結束。

java -jar spring-cloud-data-flow-shell.jar --spring.shell.commandFile=my-awesome-script.shell 

注意:Spring網站上的文檔沒有提到這一點。如果這是可以通過Spring Config Server完成的事情,那麼我也想知道它。

1

除了--spring.shell.commandFile選項,您還可以使用dataflow:>script --file <YOUR_AWESOME_SCRIPT>,其中包含各種流/任務創建和部署命令。我已經看到用戶也在不同的環境中版本化提交的文件工件。可悲的是,這兩個選項都沒有記錄,我們會修復它(spring-cloud/spring-cloud-dataflow#1534)。這就是說,對於SCDF 2.0,我們將增加由Kubernetes Helm啓發的原生CI/CD支持。這將包括SCDF的shell/gui中的原語,用於應用程序級別的canaries,應用程序的版本控制以及由config-server支持的定義。

+0

shell中的'script --file my-awesome-script.shell'命令是我在問問題之前的位置。我只是希望能夠自動化部署和配置,而無需添加額外的步驟。謝謝你爲我打開那張票。 Spring配置服務器是否有令人滿意的故事來實質部署應用程序和流? –

+0

在一個不相干的筆記上:當我搜索到SCDF時,第一個反應是新加坡民防部隊,第二個是南加州發展論壇......我們用完了縮略語:) –

+1

如果您要自動化部署流/任務,當前可用的選項是REST-API或DataflowTemplate,您必須直接與CI系統集成。一些客戶通過Jenkins/Concourse實例化部署。對於每個應用程序,應用程序和綁定屬性均在配置服務器支持的版本化YAML文件中進行配置。 –