#azure #go #azure-functions #azure-functions-runtime
#azure #Вперед #azure-функции #azure-функции-среда выполнения
Вопрос:
Я не могу найти какой-либо эквивалент REST API для этой команды azure cli:
az webapp list-runtimes
Я ищу его поддержку в Golang SDK здесь: https://github.com/Azure/azure-sdk-for-go
Есть предложения о том, как получить список сред выполнения, поддерживаемых Azure, с помощью Go SDK?
Ответ №1:
Похоже, что в Go SDK нет метода для составления списка сред выполнения для веб-приложения, эквивалентом REST API для этого azure cli является this — Provider - Get Available Stacks
, вы можете вызвать API напрямую через Go.
Пример:
GET https://management.azure.com/providers/Microsoft.Web/availableStacks?osTypeSelected=Linuxamp;api-version=2019-08-01
GET https://management.azure.com/providers/Microsoft.Web/availableStacks?osTypeSelected=Windowsamp;api-version=2019-08-01
Чтобы получить токен, используемый для вызова REST API, зарегистрируйте приложение AD, получите значения для входа в систему и создайте новый секрет приложения.
Затем перейдите на портал -> ваша подписка -> Access control (IAM)
-> Add
-> добавьте свое приложение AD в качестве роли RBAC, например, Contributor
, Owner
подробности следуют за этим.
В коде используйте ClientCredentialsConfig
значения, полученные ранее, чтобы получить токен, затем вы можете использовать токен для вызова REST API, подробности об аутентификации см. в разделе — Использовать клиент аутентификации. Вы также можете использовать другие методы аутентификации, это зависит от ваших требований.
Обновить:
Похоже, в azure-go-sdk есть клиент providers, который можно использовать для получения доступных стеков.
Комментарии:
1. Я вижу, что у azure-go-sdk есть клиент providers, который также можно использовать для получения доступных стеков. Вот ссылка: github.com/Azure/azure-sdk-for-go/blob/master/services/web/mgmt /…
2. @Puru Извините за мою оплошность, обновил ее в ответе.
3. @joyWang Не могли бы вы предложить использовать Azure?. Net SDK или перейти непосредственно к вызовам rest API. Мне нужно выполнить автоматическое развертывание кода в app service. Я в замешательстве, должен ли я придерживаться API управления Rest, Azure.net SDK или Fluent.