Обработка заданий cron в промежуточной среде на движке приложений Google

Я хочу настроить промежуточную среду в Google App Engine и нашел для этого хорошее руководство в следующем вопросе: Как настроить промежуточную среду в Google App Engine

Единственный вопрос, на который у меня нет ответа, - это как обрабатывать задания Cron в этом случае. В идеале мне просто нужно изменить версию для развертывания в производственной среде, однако я боюсь, что это будет означать, что все задания cron также будут выполняться в промежуточной версии, или это не так?


person Vincent    schedule 17.11.2015    source источник


Ответы (1)


Если вы используете подход другой версии, вам необходимо обратить внимание на это < / а>:

Если для задания установлен параметр target, запрос отправляется в указанную версию. В противном случае запросы Cron отправляются в версию приложения по умолчанию.

Я использовал параметр target для направления заданий cron в разные модули, исходя из приведенной выше цитаты, я предполагаю, что его также можно использовать для направления заданий в разные версии, используя маршрутизация модуля через URL, возможно, примерно так:

  target: version

or

  target: version-dot-module

Лично я предпочитаю другой подход к приложению, чтобы гарантировать отсутствие помех между промежуточной и производственной средами, даже при выполнении масштабных переделок, нарушающих обратную совместимость :)

Что касается метода, я использую 2 разных рабочих пространства из 2 разных веток кода, которые имеют минимальные различия между ними (поля application в файлах .yaml и, возможно, другие дельты, связанные с постановкой):

  • staging рабочее пространство и филиал
  • production рабочее пространство и филиал

Когда меня устраивает код в ветке staging, я:

  • объединить ветку staging с веткой production
  • обновить production рабочее пространство и развернуть из него -> обновление приложения production
  • отключите все, что мне нужно в рабочей области staging (при желании зафиксируйте изменения и в ветке staging)
  • развертывание из staging рабочей области -> обновление приложения staging

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

person Dan Cornilescu    schedule 17.11.2015