Buscar

AP1- Infraestrutura de entregas continuas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 5 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Unigranrio - Polo Ilha do Governador
Priscila Muniz de Mattos
Infraestrutura de entregas continuas
Trabalho, apresentado ao professor Edgar Gurgel. 
 Referente a disciplina Infraestrutura de entregas continuas.
.
Rio de Janeiro – Rio de Janeiro
2020
DevOps: 
O que é DevOps? 
Resposta: É mais conhecido na área de serviços de software e infraestrutura, mas seus princípios são aplicáveis em todos os contextos em que é relevante o rápido fornecimento de produtos e serviços confiáveis. É um processo que torna possível o desenvolvimento ágil de aplicações em um modelo de gestão de infraestrutura definido sob regras rígidas e burocráticas.
Abordagem Tradicional x Abordagem DevOps no que tange entrega de software? 
Resposta: A metodologia tradicional tem etapas bem definidas sendo o planejamento do projeto, uma estimativa em termos de prazo e orçamento, a execução e entrega no final. A metodologia tradicional segue um modelo sequencial, ou seja, uma etapa deve ser executada após a outra, sendo assim, uma tarefa não pode ser iniciada enquanto a anterior não for concluída. O principal receio dentro da metodologia tradicional é que ela não tem muita flexibilidade em relação a mudanças. Ao contrário da metodologia tradicional que você faz apenas uma entrega já com o projeto final, aqui você faz entregas constantemente até entregar todo o projeto. A preocupação com custo, qualidade e prazos são as mesmas da metodologia tradicional, porém você consegue controlar e gerenciar as mudanças que provavelmente irão aparecer no decorrer do projeto. Na metodologia ágil o foco principal é a entrega de valor ao cliente, por isso é priorizado a entrega à documentação, por exemplo. Mas isso não quer dizer que não é documentado, não planejado, assim como na tradicional.
Principais Práticas DevOps? 
Resposta: 
· Controle de versão e estratégias de ramificação.
· Pipelines de integração contínua e entrega contínua ( CI/CD ).
· Containers que padronizam e isolam os ambientes de tempo de execução do aplicativo.
· Infraestrutura como código (IAC), que permite criar scripts na camada de infraestrutura.
· Monitorando os pipelines Devops e a integridade dos aplicativos em execução.
Git e Github: 
O que são Git e Github? 
Resposta: O GitHub é um site que abriga um software de controle de versão de desenvolvimento através do sistema Git. Trata-se de um sistema que possibilita trabalhos em colaboração com outros desenvolvedores estejam eles do seu lado ou em outro continente. Git é um sistema distribuído de controle de versões, que permite que os usuários acompanhem mudanças no código-fonte durante o desenvolvimento de software.
Como usar? 
Resposta: 
O GIT é consideravelmente simples de usar. Para começar, você pode criar um repositório ou conferir um já existente. Após a instalação, um simples git-init irá deixar tudo pronto. Da mesma maneira, o comando git clone pode criar uma cópia de um repositório local para um usuário. Na instalação do GIT vem o GIT BASH. Ele é parecido com o prompt do Windows, você precisará criar a chave SSH por ele, assim você insere a mesma na sua conta do github. Isso autoriza seu computador a enviar arquivos para seu repositório GITHUB online.
Exemplo.
Resposta: 
	git clone git@github.com:wedsonlima/git-presentation.git
	git remote -v # pra onde o respositório está apontando
	git branch # listar os branchs existentes
	git branch teste1
	git checkout teste1
	echo 'arquivo 1' > file1.txt
	git status
	git add .
	git commit -m "Commitando arquivo file1.txt"
	
	# necessário fazer uma outra tarefa urgente
	
	git checkout master
	git checkout -b teste2 # fazer a cópia do master
	git log --oneline --decorate # olhada rápida no log
	echo 'arquivo 2' > file2.txt
	git add .
	git commit -m "Commitando aqruivo file2.txt"
	gitg # ferramenta gráfica
	git checkout master
	git merge teste2
	git log
	git remote -v
	git push # git push origin master
	git branch -d teste2
	git checkout teste1
	git log --oneline
	echo 'nova frase no arquivo 1' >> file1.txt
	echo 'arquivo 3' > file3.txt
	git status
	git add file1.txt file3.txt
	git commit -m "Add file3.txt e modifcando file1.txt"
	
	# merge
	
	git checkout master
	git merge teste1
	
	# gráfico de commits
	
	git log --graph --oneline --decorate
	
	# enviando modificacões para o repositorio
	
	git push origin master
	
	# atualizando o branch teste1 com o merge do master
	
	git rebase master teste1
	
	# resolvendo conflitos
	
	git checkout -b teste2
	echo ' teste2: escrevi primeiro' >> file1.txt
	git status
	git add .
	git commit -a -m " teste2 escrevendo primeiro"
	
	# simulando outro usuário criando um conflito
	
	git checkout teste1
	echo ' teste1: escrevendo depois' >> file1.txt
	git status
	git diff
	git commit -a -m " teste1 escrevendo depois"
	git log --oneline --decorate
	
	# shipar teste1
	
	git checkout master
	git merge teste1
	git push origin master
	git checkout teste1
	
	# merge da teste2
	
	git checkout master
	git merge teste2
	git status
	git diff
	vim file1.txt
	git add .
	git commit -m "Resolvendo confilto"
	git push
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
Referências:
https://www.ipsense.com.br/blog/o-que-e-devops-e-qual-a-sua-importancia-descubra/
https://pt.wikipedia.org/wiki/DevOps

Outros materiais