通过Visual Studio Team Services发布的QuarkIoE应用程序

时间:2018-04-25 06:33:42

标签: rest azure-devops azure-pipelines-release-pipeline cumulocity

我已经构建了Build&通过Visual Studio Team Services释放管道。构建过程使用Cumulocity框架c8y执行。对于该版本,我想将我的打包(zip-file)Web应用程序自动带到QuarkIoE平台。

框架c8y不支持将网络应用程序上传为zip文件?也许可以通过REST上传到我的Cumulocity租户?我很感激你在这个主题上的经历。

Cumulocity / Own applications / Upload ZIP file

3 个答案:

答案 0 :(得分:1)

我认为这就是你所需要的(我之前从未尝试过):

C8Y Binaries API

如果您的应用程序是驾驶舱基础应用程序,您可以添加您创建的插件:

POST /application/applications/<<application_id>>/binaries/plugins/<<plugin_name>> HTTP/1.1
Accept: application/vnd.com.nsn.cumulocity.managedObject+json
Content-Type: multipart/form-data; boundary=myBoundary
Content-Disposition: form-data; name="file"
Content-Length: 742
Authorization: Basic ...

--myBoundary
Content-Disposition: form-data; name="file"; filename="hello-world- 
application.zip"
Content-Type: application/zip

... zip content ...
--myBoundary--

如果您已创建自定义应用,则应使用:

POST /application/applications/<<application_id>>/binaries/files 
HTTP/1.1
Accept: application/vnd.com.nsn.cumulocity.managedObject+json
Content-Type: multipart/form-data; boundary=myBoundary
Content-Disposition: form-data; name="filepath"
Content-Length: 742
Authorization: Basic ...

--myBoundary
Content-Disposition: form-data; name="filepath";filename="index.html"

... zip content ...
--myBoundary--

此处文档假定您已经创建了应用程序。在这种情况下,您应该使用this documentation来获取要更新的应用。

希望这有帮助!祝你的考试好运!

答案 1 :(得分:0)

作为最后的手段,您可以打开浏览器的开发工具,并检查上传zip文件时发送的请求。

答案 2 :(得分:0)

我使用Cumulocity Board工具(C8Y)部署了我的应用程序。在我的Visual Studio Team Services发布过程中, Windows环境变量是通过命令行任务(C8Y_USER,C8Y_PASS,C8Y_BASE_URL,C8Y_TENANT)设置的。

这些变量是用于部署过程的累积标准变量。在另一个任务中,我通过命令行启动部署(c8y deploy:app myapplication)。

指定的Windows环境变量的日期作为安全变量存储在VSTS中(只读)。每次部署后,这些都将在构建服务器上再次被覆盖。

SETX C8Y_USER $(C8Y_USER)
SETX C8Y_PASS $(C8Y_PASS)
SETX C8Y_TENANT $(C8Y_TENANT)
SETX C8Y_BASE_URL $(C8Y_BASE_URL)

c8y deploy:app myapplication

每个累积租户都可以使用用户和密码通过Release Variables进行控制。