Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/MatheuslFavaretto/jenkins-udemylabs

Automatize CI/CD com Jenkins e Slack para acelerar desenvolvimento de software e incluir DevSecOps.
https://github.com/MatheuslFavaretto/jenkins-udemylabs

cicd devops devsecops jenkins slack

Last synced: about 5 hours ago
JSON representation

Automatize CI/CD com Jenkins e Slack para acelerar desenvolvimento de software e incluir DevSecOps.

Awesome Lists containing this project

README

        

# Jenkins Ci CD

![jenkins_logo_icon_170552](https://user-images.githubusercontent.com/116848225/233863967-7dd296ca-1e34-46cf-b44a-91294922e048.png)
![github_original_wordmark_logo_icon_146506](https://user-images.githubusercontent.com/116848225/233863970-6f213bd3-423e-4760-acb7-89357ed5dafe.png)
![slack_tile_logo_icon_168820](https://user-images.githubusercontent.com/116848225/233863979-e2190d50-a0c2-46af-b434-42dcc601f3ab.png)
![docker_original_wordmark_logo_icon_146557](https://user-images.githubusercontent.com/116848225/233864140-7df7f435-152a-4681-9c30-43ebb8b20f64.png)
![file_type_vscode_icon_130084](https://user-images.githubusercontent.com/116848225/233864144-eaf4f950-1475-41cc-afc8-a0e2471788f1.png)

##

Neste laboratório, você será um novo Engenheiro de DevOps em uma startup que deseja acelerar o ciclo de vida do desenvolvimento de software. Atualmente, a empresa não tem uma forma automatizada de entregar software, o que causa lançamentos extremamente lentos e propensos a erros. O CTO da empresa acredita na automação e quer implementar pipelines CI/CD como código para acelerar os processos de integração, teste e lançamento com o Jenkins. Além disso, ele quer habilitar mecanismos para que a equipe tenha visibilidade sobre o estado atual do processo de integração/entrega, garantindo que as práticas de DevSecOps façam parte do ciclo.

## Tecnologias

> Github

> Jenkins

> Slack

> Docker(Utilizando o exclusivamente para executar o Jenkins.)

## Desafio

As últimas semanas têm sido um desastre ao implantar mudanças em nossos ambientes de produção. Infelizmente, nossa equipe de desenvolvimento não tem muita experiência em automação, o que significa que eles fazem tudo manualmente. Não só isso leva muito tempo e esforço, mas também causa muitos erros humanos! Para melhorar o processo, eu pesquisei sobre os padrões da indústria e estou claro sobre o resultado que eu quero ver (descrito abaixo). Para começar, eu fornecerei a você o código-fonte da aplicação e os scripts que usamos para construir, testar e implantar.

Você precisará criar um pipeline do Jenkins Multibranch (como código) que irá construir, testar e implantar a aplicação no ambiente de desenvolvimento quando o ramo for develop e no ambiente de produção quando o ramo for master. Depois que a aplicação for implantada, você poderá testá-la com curl localhost:4040 para dev e curl localhost:5050 para prod. Por último, você precisará garantir que recebamos notificações no Slack para as construções, bem como verificações periódicas para identificar se segredos foram commitados para o código-fonte. Estou contando com você!

## Tarefas Feitas

- Integração Contínua,
- Entrega/Implantação Contínua
- Pipelines como Código
- Testes Contínuos
- DevSecOps
- Integrações do Jenkins com ferramentas populares de DevOps

## Demonstrações

![image](https://user-images.githubusercontent.com/116848225/233863677-57afde60-03b3-46b7-8772-d8e056773d12.png)
![image](https://user-images.githubusercontent.com/116848225/233863704-a635f4f7-0ffe-487f-b8a0-25ae82d1cf6b.png)