2016-02-19 71 views
2

Web應用程序通常由代碼,配置和數據組成。代碼通常可以在GitHub上開源。但是每個實例配置和數據可能包含分泌物,因此不適宜保存在GH中。數據可以導入到永久存儲器,因此現在無視它。OpenShift S2I從多個數據源構建策略

假設配置是基於文件的,並保存在另一個私有的安全SVN回購站中,爲了將Web應用部署到OpenShift並實施CI,我需要在運行構建腳本之前將配置文件與代碼合併。另外,構建策略應該支持GH webhooks的自動構建。

我的問題是,要更加具體:

  1. 不OS BuildConfig支持多種數據來源,特別是從SVN?
  2. 如果沒有,如何將這樣的web應用程序部署到操作系統?
+0

你看着OpenShift的「祕密」功能? https://docs.openshift.com/enterprise/3.0/dev_guide/secrets.html –

+0

已經請求了多個輸入源,但未實現,因此您可以組合源代碼和祕密以及圖像內容,但不能包含多個源代碼位置。你可以使用Git子模塊,但在這種情況下使用Jenkins是有道理的。請務必簽出OpenShift Jenkins插件https://wiki.jenkins-ci.org/display/JENKINS/OpenShift+Pipeline+Plugin – Clayton

回答

1

我想出了迄今爲止的解決方案:

  1. 而不是依賴於OS的CI的,用詹代替。
  2. 使用Jenkins合併配置文件和代碼。
  3. 而是在BuildConfig使用Git源類型,使用binary source代替
  4. 讓詹金斯運行 oc start-build --from-dir=<directory> 其中<directory>包含合併代碼/配置