天天看點

如何将SAP Multi Target應用部署到SAP雲平台的Cloud Foundry環境去

SHINA是SAP HANA Interactive Education的縮寫,是一個demo應用,用于示範如何開發SAP HANA原生應用。

這個應用包含了sample資料以及HANA資料庫表,view,OData服務和UI,符合SAP HANA Extended Service Advanced Programming Model,由如下幾個包組成:

core-db:核心資料模型

core-js: Data Generator, Purchase Order Worklist和Sales Dashboard的後端實作,基于nodejs

user-js: User的CRUD實作,也是基于nodejs和XSOData庫。同時也示範了如何使用Cloud Foundry的job scheduling服務來建立和排程任務。

web: SHINE Launchpad 和其他應用的UI實作,基于SAP UI5。

site-content: SAP Fiori Launchpad必需的配置檔案。

1. 我們需要将SAP提供的SHINA源檔案clone到本地并且打包成mtar格式,是以需要下載下傳MTAR builder。

從SAP Service Market上下載下傳,其實就是一個.jar檔案。

MTA是什麼意思呢?Multi-Target Application, 由一系列software modules組成,每個module可以由不同的程式設計語言開發,以及使用不同的部署技術,但是這些module在開發和部署時共享相同的生命周期。

上文介紹的SHINE就是一個很好的MTA例子,資料庫用HANA原生模型進行開發,前端頁面用SAP UI5,而業務邏輯使用nodejs開發。這些module将會通過下文介紹的MTA builder打包成一個檔案,然後統一部署到Cloud Foundry上。

在每個MTA應用檔案夾的根目錄下面都有個mta.yaml檔案,維護了組成該MTA應用的各個module的類型,打包方式和其他資訊。

2. 從github上将SHINA應用clone到本地:

執行指令 java -jar mta.jar -build-target=CF -mtar=shine-cf.mtar build

最後生成該150MB大小的mtar檔案。現在可以把這個檔案部署到cloud foundry上。

使用指令行cf deploy shine-cf.mtar将前一步打包生成的mtar檔案部署到SAP雲平台上。

成功部署之後,即可通路自動設定為Started狀态的兩個應用shine-web和site-web。

如果需要将部署的應用從Cloud Foundry上移除,執行指令行:cf undeploy com.sap.refapps.shine -f –delete-services

要擷取更多Jerry的原創技術文章,請關注公衆号"汪子熙"或者掃描下面二維碼:

繼續閱讀