{"id":15083734,"url":"https://github.com/eugeniobarrosjr/devops-challange-01","last_synced_at":"2026-01-03T02:55:50.080Z","repository":{"id":253325540,"uuid":"843165225","full_name":"eugeniobarrosjr/devops-challange-01","owner":"eugeniobarrosjr","description":"Desafio: Implementação de Práticas DevOps em um Ambiente Empresarial Fictício","archived":false,"fork":false,"pushed_at":"2024-08-15T23:25:53.000Z","size":3,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-23T08:35:39.743Z","etag":null,"topics":["devops","rocketseat"],"latest_commit_sha":null,"homepage":"","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/eugeniobarrosjr.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-08-15T23:25:28.000Z","updated_at":"2024-08-15T23:26:48.000Z","dependencies_parsed_at":"2024-08-16T00:57:41.002Z","dependency_job_id":null,"html_url":"https://github.com/eugeniobarrosjr/devops-challange-01","commit_stats":null,"previous_names":["eugeniobarrosjr/devops-challange-01"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eugeniobarrosjr%2Fdevops-challange-01","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eugeniobarrosjr%2Fdevops-challange-01/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eugeniobarrosjr%2Fdevops-challange-01/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eugeniobarrosjr%2Fdevops-challange-01/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/eugeniobarrosjr","download_url":"https://codeload.github.com/eugeniobarrosjr/devops-challange-01/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243941347,"owners_count":20372224,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["devops","rocketseat"],"created_at":"2024-09-25T06:32:33.141Z","updated_at":"2026-01-03T02:55:50.037Z","avatar_url":"https://github.com/eugeniobarrosjr.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# Desafio: Implementação de Práticas DevOps em um Ambiente Empresarial Fictício\n\n## 1. Diagnóstico Cultural (C de CALMS)\n\n### Identificação do Processo\n**Processo Identificado:** Entrega de Código e Deploy.\n\n### Descrição do Processo Atual\n- **Entrega de Código:** Os desenvolvedores preparam um pacote de implantação e o enviam à equipe de operações.\n- **Deploy:** Deploy manual em ambientes de produção, sem procedimentos padronizados ou automação.\n- **Testes:** Testes manuais realizados pela equipe de operações depois do deploy.\n- **Monitoramento:** Controle manual dos logs do servidor após o deploy.\n\n### Pontos de Atrito e Oportunidades de Melhoria\n- **Falta de Padronização:** A falta de padronização de processos resulta em inconsistências.\n- **Demora para Deploy:** Leva cerca de 2 dias para entregar o valor.\n- **Testes Ineficientes:** Testes manuais são demorados e podem conter erros humanos.\n- **Monitoramento Reativo:** O monitoramento manual detecta problemas somente após a ocorrência.\n\n## 2. Automação (A de CALMS)\n\n### Solução Proposta de Automação\n**Ferramentas Sugeridas:**\n- **CI/CD:** Jenkins ou GitLab CI para automação de builds.\n- **Infraestrutura de Código (IaC):** Terraform ou Ansible, para padronizar e automatizar a configuração da infraestrutura.\n- **Testes Automatizados:** Selenium ou JUnit para realizar testes de regressão e integração.\n- **Monitoramento Automatizado:** Prometheus e Grafana para monitoração contínua e alertas em tempo real.\n\n### Plano de Implementação da Automação\n1. **Configuração do CI/CD:**\n   - Configurar Jenkins ou GitLab CI para a configuração de build e deploy automáticos.\n   - Criar pipelines para testes automatizados.\n2. **Padronização com IaC:**\n   - Aplicar a tecnologia Terraform ou Ansible para planejar e gerenciar a infraestrutura.\n3. **Automatização de Testes:**\n   - Usar Selenium e JUnit nos pipelines de CI/CD para testes automatizados.\n4. **Monitoramento Contínuo:**\n   - Configurar o Prometheus para a coleta de dados.\n   - Utilizar Grafana para design de dashboards e alertas em tempo real.\n\n## 3. Mensuração e Compartilhamento de Conhecimento (M e S de CALMS)\n\n### Métricas Relevantes\n- **Tempo de Deploy:** Verificar a diminuição do tempo de deploy.\n- **Taxa de Sucesso do Deploy:** Aumentar a taxa de sucesso do Deploy em 95% ou superior.\n- **Número de Incidentes Pós-Deploy:** Reduzir o número de incidentes após o deploy.\n- **MTTR:** Diminuir o tempo médio de recuperação de incidentes.\n\n### Plano para Disseminação de Conhecimento\n1. **Documentação:** Criar uma documentação detalhada para os novos processos automatizados.\n2. **Workshops:** Realizar workshops para capacitar as equipes de desenvolvimento e operação nas novas ferramentas e procedimentos.\n3. **Comunicação Contínua:** Realizar reuniões regulares para compartilhar feedback e melhorias constantes.\n\n## 4. Três Maneiras\n\n### Primeira Maneira (Acelerar o Fluxo)\n- **Automação do Processo:** Eliminar etapas manuais e diminuir o tempo de entrega.\n- **Pipelines CI/CD:** Pipelines preparados para build, teste e deploy contínuos.\n\n### Segunda Maneira (Ampliar o Feedback)\n- **Feedback Constante:** Coleta de métricas e logs em tempo real, com Prometheus e Grafana.\n- **Feedback Automático:** Avisos automáticos em caso de falhas ou degradação de desempenho.\n\n### Terceira Maneira (Experimentar e Aprender)\n- **Ambiente de Testes:** Criação de ambientes de testes automatizados para assegurar uma experiência segura.\n- **Cultura de Aprendizado:** Incentivar retrospectivas regulares para analisar erros e identificar oportunidades de melhoria.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feugeniobarrosjr%2Fdevops-challange-01","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Feugeniobarrosjr%2Fdevops-challange-01","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feugeniobarrosjr%2Fdevops-challange-01/lists"}