source control version control devops
Controle de origem em DevOps:
Em nosso último tutorial, vimos sobre Prática DevOps baseada no Manifesto Ágil . Aqui, veremos mais sobre controle de origem ou controle de versão no DevOps.
Um dos principais fatores dos quais o sucesso do DevOps depende é o ‘controle da fonte’.
Leitura Adicional => Guia completo sobre DevOps
É o controle de código-fonte ou controle de versão que trouxe a colaboração e a transparência entre as equipes de desenvolvimento e operações e as colocou sob uma única ferramenta e guarda-chuva único.
Então, vamos estudar,
- O que é controle de origem ou controle de versão?
- O que controlar a fonte?
- Como fazemos o controle de versão?
- Benefícios do controle de versão?
Na Prática de DevOps, além dos artefatos de desenvolvimento, até a equipe de Operações usa o controle de versão para controlar as alterações em seus artefatos.
O controle de versão de ‘configuração de infraestrutura e detalhes de configuração como um código’ é o principal diferencial na prática de DevOps. Padronizar as práticas de codificação, realizar a atividade de desenvolvimento em paralelo, remover a dependência, são os principais benefícios do controle de origem.
DevOps Video Part 2 Block 2: Source Control - 11 minutos 22 segundos
Aqui, neste tutorial, estudaremos a importância de algumas práticas de DevOps.
O primeiro é o controle da fonte, o segundo é a automação e o terceiro é 'entrega de pequenos incrementos de valor'.
como abrir arquivo jar com ambiente de execução java
Um dos principais fatores dos quais o sucesso do DevOps depende é o ‘controle da fonte’.
Os termos controle de fonte e controle de versão podem ser usados alternadamente.
O que é controle de origem / versão?
Todos nós sabemos que a mudança é inevitável e acreditamos que a mudança é para uma melhoria. Assim, as mudanças acontecem diariamente em tudo e em qualquer coisa. Portanto, é extremamente importante para um programa manter o histórico dessas mudanças nos artefatos do programa, o que é chamado de ‘Controle de versão’.
Conseqüentemente, o controle de versão ou controle de origem é para gerenciar as alterações no projeto, seja ele código, documentos, configuração do ambiente ou qualquer outra coisa.
O que fazer para o controle de origem?
O princípio do DevOps é controlar a versão de tudo o que passa por mudanças durante o ciclo de vida, para que as mudanças não sejam perdidas de forma alguma ou por ninguém no projeto.
A principal diferença do ágil para o DevOps é que, na prática ágil, vimos apenas a equipe de desenvolvimento seguindo o controle de versão para seu código, lançamentos, documentos e sites. Mas o DevOps também introduz o controle de versão para operações.
Foi identificado que um grande número de falhas, defeitos não são realmente devido a um código ruim, mas devido a configurações incorretas. Portanto, esta declaração enfatiza o requisito de controle de versão no ambiente de produção em configurações e infraestrutura que são entregues como um script.
Assim, a prática do DevOps começou a controlar a versão dos scripts de implantação, configurações do ambiente, detalhes da infraestrutura, etc. Mesmo antes, o dev costumava seguir o controle de versão apenas de código e documentos, agora também inclui o controle de scripts de automação, scripts de instalação, scripts de migração etc.
Sabemos, em nossa metodologia tradicional de ciclo de vida de desenvolvimento de software, o que éramos controladores de versão.
Portanto, na prática do DevOps, além do código-fonte, scripts de automação, documentos, praticamos o controle de versão de tudo que passa por mudanças, como scripts de implantação ou scripts de instalação, scripts de rollback, scripts de migração etc., que fazem parte da instalação do software.
As definições ou scripts de infraestrutura, que contêm os detalhes de configuração do servidor, detalhes de software de pré-requisito e suas versões, detalhes do banco de dados, conectividade de vários componentes, detalhes de rede, etc., precisam ser controlados por versão.
As configurações relacionadas ao ambiente que incluem as variáveis de ambiente que devem ser definidas como padrão, os recursos que precisam ser desativados ou ativados por padrão, etc., precisam ter controle de versão.
Portanto, em palavras gerais, controle de versão tudo em um projeto que passa por alterações.
Como fazemos o controle de versão deles?
Anteriormente, o controle de versão acontecia manualmente na ausência de ferramentas, onde a equipe costumava salvar uma cópia física do backup e, em seguida, fazer as alterações.
Hoje em dia, muitas ferramentas sofisticadas de controle de versão chegaram ao mercado e automaticamente cuida do controle de versão, gerenciando os check-in e check-outs por várias pessoas simultaneamente, evitando assim o incômodo do gerenciamento manual.
Essas ferramentas também permitem que a equipe visualize a diferença entre as versões com muita facilidade. Talvez um teste ou script de implantação que passou na versão anterior tenha falhado na implantação atual.
Pode-se passar rapidamente por essa ferramenta para ver as mudanças na versão atual w.r.t a versão antiga e ajuda-os a entender a diferença no script e depurar a causa da falha muito rápido.
Possivelmente, a sugestão seria usar uma única ferramenta para controlar a versão de todos os ativos do projeto, e que ajuda no gerenciamento fácil e se torna uma única fonte de verdade.
Quais são os benefícios do controle de versão?
Abaixo estão os vários benefícios do controle de versão:
# 1) Em primeiro lugar, o controle de versão garante que dev está no controle de origem e ops está no controle de origem, e a beleza do DevOps é que ambos estão no controle de origem e também na mesma ferramenta de controle de origem e, portanto, todos podem ver o que há em a fonte e cada versão dela, de forma clara e transparente.
Isso permite que a equipe trabalhe em conjunto, tenha transparência e colabore entre si. Isso também traz a equipe e seu trabalho sob o mesmo guarda-chuva, uma ferramenta.
#dois) Impede que os membros da equipe sigam seus próprios conhecimentos, informações e código para uso.
# 3) O controle de origem ajuda a entender a diferença entre as versões e também o propósito de fazer essas alterações.
# 4) O controle de versão ajuda a realizar o desenvolvimento em paralelo e gerenciar as fusões. Mais de uma pessoa pode trabalhar no mesmo código, script ou documento, escolhendo o código base do controle de origem e levando uma cópia deles para suas máquinas locais e, em seguida, mesclando de volta ao mestre, uma vez que as alterações sejam feitas.
Em caso de conflito nas trocas entre duas pessoas, a ferramenta irá lançar um erro e destacar a área de conflito.
# 5) Além disso, a infraestrutura de controle de versão como um código permite que qualquer pessoa crie ambientes sem depender do conhecimento individual e também ajuda na criação de ambiente puramente a partir das informações disponíveis no controle de origem e não com base na inteligência individual.
# 6) O controle de versão agiliza a depuração de falhas de implantação de software e problemas de produção, pois a equipe pode voltar para a versão anterior e verificar qual é a diferença em caso de falhas e consertar rapidamente.
Portanto, a identificação de problemas de produção torna-se fácil e rápida.
PREV Tutorial | PRÓXIMO Tutorial
Leitura recomendada
- Automação DevOps: como a automação é aplicada na prática DevOps
- Tutoriais detalhados do Eclipse para iniciantes
- 15 BEST Software de Controle de Versão (Ferramentas de Gerenciamento de Código Fonte)
- Tutorial SVN: Gerenciamento de código-fonte usando Subversion
- Tutorial de DevOps: o guia definitivo para DevOps (mais de 25 tutoriais)
- Tutorial de teste de DevOps: como o DevOps afetará os testes de controle de qualidade?
- Tutorial do AWS CodeCommit para implementação de DevOps na nuvem
- Entrega contínua em DevOps