Развертывание функции Azure динамически включается / отключается с использованием шаблона ARM - PullRequest
0 голосов
/ 30 ноября 2018

У меня есть библиотека классов, функция Azure на основе таймера, которая развернута с использованием шаблона ARM.Все работает отлично, за исключением того, что я хотел бы немного другое поведение в зависимости от целевой среды.При развертывании в тестовой среде я хотел бы, чтобы функция была изначально отключена, но в рабочей среде она всегда должна быть включена.Это возможно?

Мой текущий обходной путь - использовать настройку приложения, которая сообщает функции, чтобы она немедленно выходила при установке определенного значения.Однако это кажется плохим решением, тем более что функция, запускаемая по таймеру, выполняется довольно часто.Чтобы решить эту проблему, я вручную отключаю функцию с помощью следующего переключателя на портале Azure:

enter image description here

Возможно ли указать желаемое состояние этого переключателяиз шаблона ARM?

Ответы [ 2 ]

0 голосов
/ 28 мая 2019

Расширяя ответ Джой, который сработал как шарм!

Для пользы других, свойство "name" выше составлено так:

AzureWebJobs.<YouFunctionName>.Disabled

где <YouFunctionName>указан в вашем template.json здесь:

{
    "resources": [
        "name": "<YourFunctionName>",
        "type": "functions",
         "properties": {
              "config": {
                   "bindings": [
                       {
                      ...
                        }
                    ]
                }
           }
       ]
}
0 голосов
/ 30 ноября 2018

Похоже, вам не нужно задавать определенное значение в настройках приложения, у функции azure есть встроенное свойство.

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

"siteConfig": {
                    "appSettings": [
                        {
                            "name": "AzureWebJobs.MessageQueueMonitorFunction.Disabled",
                            "value": "true"
                        }
                    ]
                }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...