Repositório de instrução para o desafio técnico para a vaga de Pessoa Engenheira DevOps no Escritório de Dados do Rio de Janeiro
Neste repositório, você encontrará uma aplicação web desenvolvida em Flask. Sua tarefa consiste nos seguintes passos (realizá-los na ordem que julgar adequada e ir marcando os itens completos):
- Modificar a aplicação para consumir uma variável de ambiente chamada
NAME
e, no lugar de "World", exibir o valor dessa variável. - Modificar o arquivo
.gitignore
para que seja adequado a uma aplicação Python. - Elaborar, implementar e reforçar o fluxo de desenvolvimento do repositório.
- Consolidar boas práticas no repositório através de ferramentas de análise estática, hooks de pré-commit, etc. a seu critério.
- Preparar a aplicação para que seja production-ready.
- Criar arquivos e scripts para que a aplicação possa ser executada em um container.
- Elaborar um modelo de desenvolvimento que permita a execução da aplicação em um ambiente de desenvolvimento local.
- Construir pipelines de CI/CD para a aplicação utilizando GitHub Actions. Esse item possui forte relação com o fluxo de desenvolvimento, pois deve compreender o deployment em dois ambientes diferentes: homologação e produção. O deployment da aplicação deve ser realizado em um serviço serverless da Google Cloud Platform.
- Documentar todo o processo, as pipelines e o fluxo de desenvolvimento do repositório, além de hospedar essa documentação em uma página do GitHub Pages.
- Completude: A solução proposta atende a todos os requisitos do desafio?
- Simplicidade: A solução proposta é simples e direta? É fácil de entender e trabalhar?
- Organização: A solução proposta é organizada e bem documentada? É fácil de navegar e encontrar o que se procura?
- Criatividade: A solução proposta é criativa? Apresenta uma abordagem inovadora para o problema proposto?
- Boas práticas: A solução proposta segue boas práticas de Python, Git, Docker, etc.?
- A solução desse desafio deve ser publicada em um fork deste repositório no GitHub.
- O link do repositório deve ser enviado até às 23:59, horário de Brasília, do dia 26/julho/2023 (quarta-feira) para o e-mail utilizado para contato com o assunto "Desafio DevOps Engineer - EMD".
- Você deve ser capaz de apresentar sua solução, explicando como a idealizou, caso seja aprovado(a) para a próxima etapa.
- Documentação do Flask
- Documentação do GitHub Actions
- Documentação do GitHub Pages
- Documentação do Docker
- Ferramentas serverless da GCP
Fale conosco pelo e-mail que foi utilizado para o envio desse desafio.