2013-08-13 3 views
1

Я пытаюсь автоматизировать все, что касается нашего развертывания, и имел некоторый разумный инкрементный успех до сегодняшнего дня, когда все прошло.Elastic Beanstalk .ebextensions .config файл запускается иногда, а не другие

.ebextensions/01settings.config

container_commands: 
    01seed: 
    command: rake db:seed 
    leader_only: true 

Это иногда работать, но в основном не делает. Когда это происходит на развертывании, я вижу что-то вроде:

2013-08-13 21:46:55,606 [INFO] Running configSets: Infra-EmbeddedPostBuild 
2013-08-13 21:46:55,607 [INFO] Running configSet Infra-EmbeddedPostBuild 
2013-08-13 21:46:55,609 [INFO] Running config postbuild_0_acme_development_02e6a3b5e2d179b50d766a8dc16f8243__ebextensions_01settings_config 
2013-08-13 21:46:55,609 [DEBUG] No packages specified 
2013-08-13 21:46:55,609 [DEBUG] No groups specified 
2013-08-13 21:46:55,609 [DEBUG] No users specified 
2013-08-13 21:46:55,609 [DEBUG] No sources specified 
2013-08-13 21:46:55,609 [DEBUG] No files specified 
2013-08-13 21:46:55,610 [DEBUG] Running command 01seed 
2013-08-13 21:46:55,610 [DEBUG] Generating defaults for command 01seed 
2013-08-13 21:46:55,810 [DEBUG] Running test for command 01seed 
2013-08-13 21:46:55,839 [DEBUG] Test command output: 
2013-08-13 21:46:55,840 [DEBUG] Test for command 01seed passed 
2013-08-13 21:47:08,019 [INFO] Command 01seed succeeded 
2013-08-13 21:47:08,020 [DEBUG] No services specified 
2013-08-13 21:47:08,034 [INFO] ConfigSets completed 

Другие времена, я разворачивать то же самое к тому же, например, и в том же разделе будут читать:

2013-08-13 22:15:15,360 [INFO] Running configSets: Infra-EmbeddedPostBuild 
2013-08-13 22:15:15,362 [INFO] Running configSet Infra-EmbeddedPostBuild 
2013-08-13 22:15:15,362 [INFO] ConfigSets completed 

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

Каковы причины того, что .ebextensions/*. Config даже не будет предпринята попытка?

EDIT: Похоже, что мой deep_symbolized_hash.to_yaml тушит в .ebextensions/01settings.config, который выглядит как:

:container_commands: 
    :01seed: 
    :command: rake db:seed 
    :leader_only: true 

Таким образом, в то время как это справедливо YAML, упругая Beanstalk configset процесс Инфра работает -EmbeddedPostBuild просто идет по моей конфигурации без жалобы.

Звучит ли это правильно? Неужели мы действительно надеемся, что eb просто проглотит это?

ответ

4

Это подтверждено. Если вы используете рубиновый хеш с символами, которые были символизированы, вам нужно несимволизировать ключи до to_yaml или выполнить post-процесс и удалить начальную «:» точку с запятой.

Также подтверждено, если eb не нравится ваш файл .config при развертывании, он просто проглатывает его и даже ничего не записывает!

Смежные вопросы