Мы пытаемся автоматизировать развертывание нашего пользовательского решения с помощью Azure Cli, и это в основном успешно, за исключением одной досадной проблемы: мы не можем найти способ принять юридические условия для SendGrid через Azure Cli.
У нас нет проблем с этим через PowerShell:
Get-AzMarketplaceTerms -Publisher "Sendgrid" -Product "sendgrid_azure" -Name "free" | Set-AzMarketplaceTerms -Accept
Но как сделать то же самое с помощью Azure Cli? Может кто-нибудь, пожалуйста, помогите с этим? Это вообще возможно? Причина, по которой мы хотим использовать Azure CLI, заключается в том, что он используется в 99 % сценария развертывания. Мы не хотим использовать PowerShell для последнего 1%, потому что пользователю необходимо еще раз пройти аутентификацию в модуле Azure PowerShell без необходимости.
Вот как выглядит продукт SendGrid, когда мы запускаем эту команду:
Get-AzMarketplaceTerms -Publisher "Sendgrid" -Product "sendgrid_azure" -Name "free"
Результат (и это здорово, мы хотим это увидеть):
Publisher : Sendgrid Product : sendgrid_azure Plan
: free LicenseTextLink : https://storelegalterms.blob.core.windows.net/legalterms/3E5ED_legalterms_SENDGRID%253a24SENDGRID%253a5FAZURE%253a24FREE%253a24YETL367I3WKHD54DOKWY3WW3VV6IKDF32UCLUQA6JEV 4GAZY2JLEYCDJI64NPQ2OLUJMS5R2JHZOXC663I73AX45FCBR5CFAYEKUO2Y.txt PrivacyPolicyLink : http://sendgrid.com/privacy Signature : BZU4R7BG2MVWROB7QPWQ6OXCPG7ZYPLNRJXXQC2TU4MLWHMXXQCRQ2Y7BKWL4CIVYULXIGPNUSIISNDP6SVWZ7DFZ3EEX7NYJKOBVKY Accepted : True Signdate : 2019-04-08 1:00:06 AM
Я пробовал эти команды Лазурный Кли:
az vm image list --all --publisher sendgrid --offer sendgrid_azure --sku free --query '[].urn'
az vm image list --all --publisher Sendgrid --offer sendgrid_azure --sku free --query '[].urn'
az vm image list --all --publisher SendGrid --offer sendgrid_azure --sku free --query '[].urn'
Но вот что они возвращают:
[]
Когда я пробую другие издатели,
az vm image list --all --publisher cisco --offer cisco-csr-1000v --sku 16_6 --query '[].urn'
затем я вижу, что некоторые элементы возвращены:
[ { "offer": "cisco-csr-1000v", "publisher": "cisco", "sku": "16_6", "urn": "cisco:cisco-csr-1000v:16_6:16.6.120170804", "version": "16.6.120170804" }, { "offer": "cisco-csr-1000v", "publisher": "cisco", "sku": "16_6", "urn": "cisco:cisco-csr-1000v:16_6:16.6.220171219", "version": "16.6.220171219" } ]
Любая помощь будет оценена! Как мы принимаем юридические условия использования Azure CLI?


Вероятные эквивалентные команды Azure CLI: Издатели списков образов az vm и условия принятия образа az vm.
Надеюсь это поможет!!
Привет КришнаГ. Спасибо за ваш ответ, но если вы посмотрите на мой вопрос, вы увидите, что я уже использовал их. Проблема в том, что az vm image list --all --publisher sendgrid ничего не возвращает.
Я смог принять TnC для SendGrid с помощью приведенных ниже команд.
Connect-AzAccount
Get-AzMarketplaceTerms -Publisher "Sendgrid" -Product "sendgrid_azure" -Name "free" | Set-AzMarketplaceTerms -Accept
отличный подход! спасибо Ади! С моей стороны, я так и не понял, и мне пришлось вручную принять лицензию. Но я буду использовать ваш подход с этого момента.
Не волнуйтесь, Денис, большое спасибо за признание.
az vm image accept-terms --publisher sendgrid --offer sendgrid_azure --plan бесплатно
Две команды вызывают разные API, не зная причины. Если вы используете неинтерактивный вход в систему для использования powershell, согласитесь ли вы это сделать?