Estou procurando idéias sobre gerenciamento de versões de livros de receitas do chef. Eu sei que você fixa versões específicas no ambiente, mas não sei ao certo como fazê-lo.
Usamos o bibliotecário-chef, que instala livros comunitários de terceiros na pasta de livros de receitas. Nunca tocamos nesses livros e apenas atualizamos para versões mais recentes de tempos em tempos.
Também temos nossos livros de receitas personalizados específicos do site, de onde incluímos os da comunidade ( include_recipe
).
Teoricamente, poderíamos especificar versões específicas dos livros da comunidade dos quais dependem os livros personalizados e, em seguida, definir as versões do livro de receitas na configuração do ambiente, mas o problema é que esses livros da comunidade podem confiar em outros livros sem versões especificadas. E essa profunda dependência aninhada poderia continuar.
Portanto, não há garantia de que, quando você fizer o upload de um livro de receitas no servidor do chef, ele não funcionará, pois os livros de receitas dependentes também podem mudar.
A única solução que posso ver no momento é especificar todas as versões de livros de receitas que usamos na configuração do ambiente, incluindo as comunitárias e as personalizadas. Mas então eu tenho que percorrer cada livro de receitas e descobrir essas versões.
Também fazemos atualizações bibliotecárias-chefes de vez em quando e imagino que pode ser difícil rastrear versões que mudaram e não esquecer de atualizar a versão no ambiente quando chegar a hora.
Compartilhe sua experiência e melhores práticas. Tenho certeza que será super útil para outras pessoas.