Могу ли я запускать команды PowerShell из Azure DevOps в виртуальные машины в Azure?

Как я могу запускать команды PowerShell для виртуальной машины Windows 2016 в Azure без использования winrm или pssession, где мне нужно установить \ настроить самозаверяющий сертификат?

Кто-нибудь знает

4 ответа

Решение

Если я правильно понимаю ваш запрос, вы хотите запускать команды PowerShell на виртуальной машине Azure.

  • В таком случае служба Azure DevOps не будет знать, куда направить запрос, поэтому из коробки это невозможно.
  • Однако вы можете настроить на этом компьютере агента с собственным хостом (пока он подключен к Интернету).
  • Затем вы можете запустить задачу на собственном агенте и выбрать запуск задачи PowerShell. (Возможно, вам потребуется внести в белый список некоторые диапазоны DevOps на вашем брандмауэре).

Помимо этого, есть несколько способов запуска команд и сценариев на виртуальных машинах Azure в зависимости от проекта, который вам нужно реализовать.

Вы можете использовать портал Azure для выполнения предварительно определенных настраиваемых команд PowerShell на виртуальной машине с помощью колонки "Виртуальная машина" на портале Azure.

Также просмотрите эти документы для получения дополнительной информации:

Запускаем Powershell Cmds

Запустить Cmd

Могу ли я запускать команды PowerShell из Azure DevOps в виртуальные машины в Azure?

Запуск сценариев PowerShell на виртуальной машине Windows с помощью команды "Выполнить" предоставляет два возможных направления:

1. Путь Azure CLI:

Вы можете использовать задачу Azure CLI в конвейере azure DevOps для запуска команд az vm start и az vm run-command. В az vm start запустит виртуальную машину, вторая команда запустит команды PS.

2. способ PowerShell:

Вы можете использовать задачу Azure Powershell в конвейере azure DevOps для выполнения команд Start-AzVM и Invoke-AzVMRunCommand.

Примечание. Требуется несколько секунд даже при запуске виртуальной машины на веб-портале, поэтому рекомендуется иметь 10-15 секунд в качестве интервала между этими двумя командами (Start VM и Run PS). например: Попробуйте Start-Sleep -s 15.

Если вам не требуется часто запускать только одну команду, вы можете просто запустить любую команду PowerShell прямо с портала с помощью команды "Выполнить". Посмотрите на снимок экрана.

Лучше использовать аккаунт Azure Automation, чем Azure DevOps, если вы хотите сделать PowerShell.

Прочтите это о том, как создать учетную запись для автоматизации.

Смотрите здесь, как создать Runbook в Azure автоматизации с использованием PowerShell.

Другие вопросы по тегам