Параметризовать runOnStartup в function.json - PullRequest
0 голосов
/ 06 июля 2018

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

Я не могу держать его в рабочем состоянии, потому что он вызывает срабатывание триггера дважды при каждом планировании, поэтому я пытаюсь использовать соответствующую настройку.

Фрагмент function.json:

{
  "schedule": "%TimerSchedule%",
  "runOnStartup": %TimerRunOnStartup%,
  "name": "timer",
  "type": "timerTrigger",
  "direction": "in"
}

Фрагмент local.settings.json:

"TimerSchedule": "0 */5 * * * *",
"TimerRunOnStartup": true,

Выражение CRON читается из файла настроек, как и ожидалось, но синтаксический анализ function.json завершается неудачно со следующей ошибкой в ​​случае логического значения:

Неожиданный символ, обнаруженный при разборе значения:%. Привязки пути [0] .runOnStartup ', строка 6, позиция 22.

Есть ли способ параметризации логического значения в function.json?

1 Ответ

0 голосов
/ 10 июля 2018

AFAIK, это невозможно. "%TimerSchedule%" представляет строку, так что знак процента можно разрешить и получить значения из настроек приложения (т. Е. Local.settings локально).

Хотя runOnStartUp должно быть постоянным логическим значением, только время выполнения может быть распознано во время выполнения функции, поэтому % недопустимо. Мы также не можем использовать "%runOnStartUp%", так как String не был распознан как действительный логический тип.

...