Выпуск приложения Cumulocity через Visual Studio Team Services

Я построил конвейер сборки и выпуска через Visual Studio Team Services. Процесс сборки выполняется с использованием фреймворка Cumulocity c8y. Для выпуска я хотел бы, чтобы мое упакованное (zip-файл) веб-приложение автоматически переносилось на платформу Cumulocity.

Фреймворк c8y не поддерживает загрузку веб-приложения в виде zip-файла? Может быть, загрузка в мой клиент Cumulocity возможна через REST? Буду благодарен за ваш опыт в этой теме.

Cumulocity / Собственные приложения / Загрузить ZIP-файл


person Brenner's Daniel    schedule 25.04.2018    source источник


Ответы (3)


Я думаю, что это то, что вам нужно (я никогда не пробовал это раньше):

API двоичных файлов C8Y

Если ваше приложение является базовым приложением кабины, вы можете добавить созданные вами плагины:

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--

Здесь документация предполагает, что вы уже создали приложение. В этом случае вам следует использовать эту документацию, чтобы получить приложение, которое вы хотите обновить.

Надеюсь это поможет! удачи в тестах!

person Jorge    schedule 25.04.2018

В крайнем случае вы можете открыть инструменты разработчика своего браузера и проверить, какой запрос отправляется при загрузке zip-файла.

person Georgi    schedule 25.04.2018

Я развернул свое приложение с помощью Cumulocity Board Tools (C8Y). В моем процессе выпуска Visual Studio Team Services переменные среды Windows задаются задачей командной строки (C8Y_USER, C8Y_PASS, C8Y_BASE_URL, C8Y_TENANT).

Эти переменные являются стандартными переменными Cumulocity для процесса развертывания. В другой задаче я запускаю развертывание через командную строку (c8y deploy:app myapplication).

Дата для указанных переменных среды Windows хранится как защищенная переменная в VSTS (только для чтения). После каждого развертывания они снова перезаписываются на Build-Server.

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

Каждым арендатором Cumulocity можно управлять с помощью переменных выпуска с помощью пользователя и пароля.

person Brenner's Daniel    schedule 13.07.2018