O uso de pipelines de entrega contínua para orquestrar o processo de release para software se tornou um conceito comum. Ferramentas de CI/CD podem ser usadas para testar a configuração do servidor (ex.: cookbooks do Chef, módulos Puppet, playbooks do Ansible), construção de imagem do servidor (ex.: Packer), provisionamento de ambiente (ex.: Terraform, CloudFormation) e a integração de ambientes. O uso de pipelines para infraestrutura como código permite que você encontre erros antes das mudanças serem aplicadas em ambientes operacionais – incluindo ambientes usados para desenvolvimento e teste. Elas também oferecem uma maneira de assegurar que o ferramental de infraestrutura seja executado consistentemente, usando agentes de CI/CD em vez de estações de trabalho individuais. Nossos times têm tido bons resultado adotando essa técnica em seus projetos.
The use of continuous delivery pipelines to orchestrate the release process for software has become a mainstream concept. However, automatically testing changes to infrastructure code isn’t as widely understood. Continuous integration (CI) and continuous delivery (CD) tools can be used to test server configuration (e.g., Chef cookbooks, Puppet modules, Ansible playbooks), server image building (e.g., Packer), environment provisioning (e.g., Terraform, CloudFormation) and integration of environments. The use of pipelines for infrastructure as code enables errors to be found before changes are applied to operational environments — including environments used for development and testing. They also offer a way to ensure that infrastructure tooling is run consistently, from CI/CD agents, as opposed to being run from individual workstations. Some challenges remain, however, such as the longer feedback loops associated with standing up containers and virtual machines. Still, we've found this to be a valuable technique.
The use of continuous delivery pipelines to orchestrate the release process for software has become a mainstream concept. However, automatically testing changes to infrastructure code isn’t as widely understood. Continuous integration (CI) and continuous delivery (CD) tools can be used to test server configuration (e.g., Chef cookbooks, Puppet modules, Ansible playbooks), server image building (e.g., Packer), environment provisioning (e.g., Terraform, CloudFormation) and integration of environments. The use of pipelines for infrastructure as code enables errors to be found before changes are applied to operational environments — including environments used for development and testing. They also offer a way to ensure that infrastructure tooling is run consistently, from CI/CD agents, as opposed to being run from individual workstations. Some challenges remain, however, such as the longer feedback loops associated with standing up containers and virtual machines. Still, we've found this to be a valuable technique.