Допустим, вы в какой-то момент времени развернули решение Azure, состоящее из нескольких служб платформы (в данном случае определенных в bicep). Чтобы поддерживать решение в актуальном состоянии, вы хотите определить, когда ресурсы будут выпущены в новой версии API. Например. первоначальное развертывание использовало этот ресурс/API:
Microsoft.Storage/storageAccounts@2021-04-01
Я хотел бы указать, что текущая версия API — 2021-08-01.
Плагин Bicep в VS Code немного помогает, но мне приходится просматривать все ресурсы (поместите курсор на версию API — нажмите CTRL + пробел, чтобы получить всплывающее окно с версиями API), что является ручным процессом. -Есть ли лучший способ использовать VS Code для этого?
Предпочтительно, чтобы у меня был сценарий (Azure CLI или другой), который идентифицирует более новые версии API в пределах области действия (например, подписки или группы ресурсов). Запуская этот скрипт на регулярной основе, вам будет проще отслеживать, какие версии развиваются по сравнению с исходным развертыванием.
Пара мыслей...
Не обязательно иметь последнюю версию apiVersion — устаревание происходит редко и является длительным процессом. Для всего, что «необходимо» (безопасность, производительность), это обычно делается в существующих версиях API. Так что, может быть, это поможет с срочностью. Если у вас есть функции, которые доступны только в более новой версии API, пришло время двигаться.
Arm-ttk проверит apiVersions в шаблоне (не ресурсы в Azure, а код, который развертывает ресурсы в Azure. Вот конкретный тест: https://github.com/Azure/arm-ttk/blob/2022.03.16/arm-ttk/testcases/deploymentTemplate/apiVersions-Should-Be-Recent.test.ps1. Он будет помечать все, что старше 2 лет (и несколько других сценариев вокруг предварительных версий) так что это может быть возможно изменить в соответствии с вашими потребностями.
Возможно, это не совсем то, что вы ищете, но поможет ли это?