Azure Logic Apps-это несколько уникальный облачный сервис, который позволяет подключать ваши критически важные приложения и услуги, автоматизируя ваши рабочие процессы, не написав ни одной строки кода. Существует множество статей о том, как развернуть приложение Azure Logic с шаблонами Microsoft Documentation Microsoft: Автоматизировать развертывание для приложений Azure Logic с использованием шаблонов Azure Resource Manager Но в корпоративной среде этот вид ресурсов, особенно в производственной среде, являются предопределенными и обеспеченными. Разработчики часто не имеют разрешения на перезаписать существующие ресурсы, а развертывание с шаблонами ARM делает именно это. Шаблон определяет инфраструктуру, ресурсы, параметры и другую информацию для обеспечения и развертывания вашего логического приложения. Но нам нужно оставить инфраструктуру в одиночку и развернуть только наше логическое приложение и его параметры. Так что же делать, когда вы имеете дело с такой ограниченной средой, но все же хотите использовать силу трубопроводов CI/CD? К счастью, когда вы создаете логическое приложение с использованием Visual Studio, примерный сценарий развертывания PowerShell под названием «Deploy-azurersourcegroup.ps1» также создается для нас. Фактически, он использует расширение Azure PowerShell, которое упрощает управление облачными сервисами Azure.
Вот начало этого сценария, обратите внимание на параметры, которые мы можем предоставить для его настройки:
Param( [string] [Parameter(Mandatory=$true)] $ResourceGroupLocation, [string] $ResourceGroupName = '', [switch] $UploadArtifacts, [string] $StorageAccountName, [string] $StorageContainerName = $ResourceGroupName.ToLowerInvariant() + '-stageartifacts', [string] $TemplateFile = 'LogicApp.json', [string] $TemplateParametersFile = 'LogicApp.parameters.json', [string] $ArtifactStagingDirectory = '.', [string] $DSCSourceFolder = 'DSC', [switch] $ValidateOnly ) ...
Полный код для сценария развертывания предоставляется в конце статьи для тех, кто хочет использовать код против кода или другого редактора для разработки логического приложения. Давайте используем этот скрипт и создадим трубопроводы CI/CD в Azure DevOps.
Создание артефакта сборки в трубопроводе Azure DevOps
Единственное, что нам нужно для создания развертываемого артефакта, — это файлы, которые расположены в папке проекта: файл JSON, содержащий рабочий процесс, файл параметров и скрипт. Таким образом, строительный трубопровод может быть чрезвычайно простым, состоящий всего в одном шаге, как и приведенный ниже.
- task: PublishBuildArtifacts@1 displayName: 'Publish Artifact: LogicApp' inputs: PathtoPublish: 'src/LOGIC_APP_FOLDER' ArtifactName: 'LogicApp' publishLocation: 'Container'
Выполните конвейер сборки, чтобы создать артефакт.
Выпустить трубопровод
Мы можем начать с пустого выпуска трубопровода и добавить артефакт, произведенный конвейером сборки. Затем мы добавляем сцену и одну задачу Azure PowerShell. Очень важно выбрать Версия задачи как «2.*» и, соответственно, Azure PowerShell версия как «Укажите другую версию» и Предпочтительный лазурь PowerShell версия как «2.1.0», как это версия, которую использует скрипт развертывания. Другие важные параметры — Путь сценария — Вы можете перейти к своему артефакту и выбрать скрипт развертывания. Также Скрипт аргументы это поле, где мы можем предоставить параметры самому скрипту. Эти аргументы соответствуют параметрам, которые мы видим в начале сценария. Хорошая вещь в задаче Azure PowerShell заключается в том, что она автоматически будет аутентифицировать его в Azure с помощью сервисного соединения, поэтому вам не нужно беспокоиться об этом.
PowerShell Script
Вот суть с кодом полного сценария:
Вывод
Альтернативный метод для развертывания приложения Azure Logic заключается в использовании сценария Azure PowerShell, который является относительно простым, не требует повышенных разрешений и применимо на предприятии и ограниченных средах.
Ну, это все для этого простого рецепта. Удачи, и при разработке вашего логического приложения нельзя использовать Кошачья логика ! Фото предоставлено: Ryozuo
Оригинал: «https://dev.to/ib1/azure-devops-recipe-deploying-azure-logic-app-using-powershell-script-3pma»