Estoy interesado en cambiar de Capistrano a Chef, pero estoy teniendo algunos problemas para juntar todas las piezas.despliegue de chef?
He seguido http://wiki.opscode.com/display/chef/Quick+Start y puedo iniciar instancias EC2 con knife
. En cuanto a la implementación del código, parece que deseo hacer lo que está en http://wiki.opscode.com/display/chef/Deploy+Resource, el único problema es que en ninguna parte de esa página menciona en qué directorio/archivo debe ir el bloque de código /to/path
de implementación.
Otro problema que estoy teniendo es la comprensión de cómo implementar cambios de código después de que el servidor ha sido configurado. Tal vez estoy acostumbrado a mi flujo de trabajo actual (git push && cap deploy
), pero lo mejor que puedo decir es que después de confirmar mis cambios se supone que debo ingresar al servidor y ejecutar sudo chef-client
? algo sobre eso se siente mal. ¿No hay un equivalente de límite, es decir, chef deploy
?
Finalmente (y tal vez esto sea un poco más difícil), estoy buscando implementar múltiples aplicaciones de rieles en un único servidor. Parece prudente mantener algún tipo de archivo de configuración del chef en el repositorio de cada aplicación que describa los detalles de su implementación, pero no estoy seguro de cómo interactuaría con el servidor chef-repo/alojado. ¿Sería cada aplicación un papel? Y desde mi entendimiento de cómo funcionan las cosas, también me inquieta un poco la idea de que 'chef-cliente' intente desplegar todas las aplicaciones cuando se ejecuten. Con git push && cap deploy
estoy seguro de lo que estoy implementando. Mientras que algunos de los otros repos de aplicaciones pueden no estar en un estado desplegable. ¿Habría alguna forma de implementar solo una aplicación en esta configuración?
Sólo por curiosidad, ¿por qué estás tratando de cambiar a desplegar con el chef? Eso siempre me pareció mal por alguna razón ... – noli
quizás debería volver a formular la pregunta de mi pregunta "estoy interesado en saber si debo cambiar al chef" ... actualmente estoy usando [caucho] (https: //github.com/wr0ngway/rubber/wiki) para mi implementación de rieles. funciona bastante bien, pero no es compatible con varias aplicaciones en la misma instancia (que es algo que se está convirtiendo rápidamente en un requisito para mí). También tengo proyectos sin rieles que despliego ... por lo que estoy muy interesado en la idea de una herramienta/flujo de trabajo único que pueda provisionar un servidor, iniciarlo y desplegar una variedad de proyectos. – james