Как я могу обмениваться метаданными между несколькими модулями App Engine?

Я переношу приложение с одним модулем в приложение с несколькими модулями. В рамках моего процесса развертывания я устанавливаю переменную среды для хранения текущей среды QA: «dev», «stage» или «test».

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

Есть ли простой способ обмена информацией между модулями в приложении, или я застрял в написании файлов app.yaml для каждого модуля, умноженных на количество сред контроля качества?


person alphanumeric0    schedule 27.01.2016    source источник


Ответы (1)


Вы должны написать .yaml файлы для каждого модуля, несмотря ни на что - вот что делает его модулем :)

Однако, как правило, вы можете повторно использовать файл в нескольких модулях, создав символическую ссылку на соответствующие модули (лично я предпочитаю помещать фактический файл с контролируемой версией в каталог приложения, вне каталога конкретного модуля).

В зависимости от того, как именно вы реализуете передачу метаданных/среды, вы можете использовать меньший межмодульный общий файл в дополнение к специфичному для модуля файлу .yaml (только некоторые директивы app.yaml могут быть общими, например это, чо).

См., например, эти вопросы и ответы, посвященные повторному использованию директивы skip_files: yaml-files/33308640#33308640">Нужно ли копировать `skip_files` в несколько файлов YAML?

person Dan Cornilescu    schedule 27.01.2016