2013-12-15 47 views
0

我們正在努力想出如何集成我們的構建環境,現在我們開始使用swagger - .. codegen從我們的後端api爲android應用程序,iOS應用程序和webclient生成API類。在哪裏存儲構建文物:Grunt,node.js後端,github,android,iOS客戶端

現狀:

  • 我們用幾個(私人)的GitHub庫
    • Node.js的後端:咕嚕建立與使用運行CODEGEN的基於web和Android基於雲的服務 - CI測試和CI客戶端api訪問成功構建的類,連續部署到heroku測試環境,
    • web前端,grunt構建測試和CI使用基於雲的CI服務和連續部署到herku測試環境。
    • android應用程序,使用gradle構建和相同的CI,到目前爲止沒有連續部署。
    • ,很快就會有一個iOS應用程序,以及...

這是私人的,非OSS代碼。

需求: 不同的客戶端應該能夠指定一個依賴到生成的後端訪問庫,並在構建期間得到它們。客戶端應該能夠獲得「最新」版本或指定的固定版本,就像使用npm語義依賴關係一樣。我當然可以加強我們的構建,以將構建工件上傳到成功的CI構建的某個位置,但問題是在哪裏......設置這個最簡單的方法是什麼。

  • 我們需要一個(甚至幾個)私人人工製品倉庫(關係,NPM,涼亭,...)
  • ,我們應該(AB)使用的github倉庫到內置文物存放在?
  • 我們也可以發佈生成僞像S3或類似的東西...

什麼好的建議?

回答

0

唯一的東西你真的應該商店是你的獨立的「任務」文件夾,如果你正在做一些自定義的任務,你grunt.js(.coffee),資源(您可能稀少使用預構建的任務,咖啡/視圖,咖啡/模型所有你自定義的東西)和你的package.json。這樣,任何新的開發人員只需抓住這些表單源,然後運行npm install從您的package.json中提取所有依賴關係。 /資源 grunt.coffee 的package.json

然後我有一個拉一些任務和運行任務的鮑爾(拉最新JQM,設置了起來,各種拉庫)。

至於node_modules我不會不要在任何地方儲存它們。這是一個簡單的腳本/應用程序,我編寫的程序幾乎結束於編譯JQM應用程序,調用phonegap腳本,構建應用程序並最終以xcode應用程序包結束。

也許這會給你一些想法。到目前爲止,我已經發現最好做到以上。

https://github.com/imaginethepoet/autojqm

+0

感謝您的回答。這顯然會起作用,但在我們目前的情況下,這是不可能的。客戶端由外部合作伙伴開發,他們無法訪問後端資源/存儲庫,因此我想將這些庫作爲後端構建的一部分生成並存儲,以便客戶端構建可以將它們作爲依賴項引入。 – Reto

+0

我認爲你最好將所有東西都加入到工件或者svn倉庫系統中。儘管在節點包上會有很多變化。 – imaginethepoet

相關問題