# Apresentação final
## Fazemos parte do Grupo external Screts
<p>
The External Secrets Operator reads information from a third party service like AWS Secrets Manager and automatically injects the values as Kubernetes Secrets.
</p>
| Nome | Matrícula | Github |
| ------------------------ | ---------- | ------------- |
| André Freitas | 17/0056155 | @Andreabenf |
| Arthur Paiva | 18/0013637 | @ArthurPaivaT |
| Eduardo Lima | 17/0102343 | @Ed-vL |
| Mateus Oliveira Patrício | 16/0015006 | @omateusp |
# Sprint 1
Data de início: 29/07/2021
Data de término: 12/08/2021
Nesta primeira sprint não conseguimos marcar um horário síncrono com o nosso Meta Coach, Lucas Severo Alves, então ele gravou um vídeo explicando a configuração de ambiente e passando por boas issues iniciais. Como a stack do projeto não é tão simples fizemos uma sprint de adaptação onde rodamos o projeto localmente, configuramos um projeto na google cloud para utilizar em ambiente de desenvolvimento e nos familiarizamos com as políticas de contribuição.
# Sprint 2
Data de início: 12/08/2021
Data de término: 26/08/2021
Issues
| id | Issue | Responsável | Status |
| ----------------------------------------------------------------------- | --------------------------------------------------------------------------- | ------------------ | ---------------------------------------------------------------------- |
| [#321](https://github.com/external-secrets/external-secrets/issues/321) | Target secret name does not default to .metadata.name of the ExternalSecret | Mateus O. Patrício | [Done](https://github.com/external-secrets/external-secrets/pull/332) |
| [#156](https://github.com/external-secrets/external-secrets/issues/156) | Support for immutable secrets | Arthur P. Tavares | [WIP](https://github.com/external-secrets/external-secrets/pull/329) |
| [#209](https://github.com/external-secrets/external-secrets/issues/209) | e2e tests for AWS Secrets Manager | André Freitas | [WIP](https://github.com/external-secrets/external-secrets/issues/209) |
| [#221](https://github.com/external-secrets/external-secrets/issues/221) | Optimize secret update calls | Eduardo Lima | [WIP](https://github.com/external-secrets/external-secrets/issues/221) |
## Depoimentos
### Arthur Paiva
  Esta sprint foi principalmente para entendimento do escopo e código do projeto, houveram duas reuniões que participei com o meta coach e gravamos para ficar disponível para os demais, onde tratamos sobre kubernetes no geral, o que são operadores e qual o objetivo do eso. O meta coach também ensinou a executar o projeto da melhor forma para desenvolvimento, usar os segredos do google cloud, rodar os testes, modificar os testes e como está a arquitetura do operador. Nesta sprint também comecei a trabalhar na issue [#156](https://github.com/external-secrets/external-secrets/issues/156 em pareamento com o meta coach, onde fizemos testes para criar segredos imutáveis no cluster mas sem muito sucesso.
### Mateus Oliveira Patrício
  Nesta sprint comecei a entender melhor o que o projeto faz de fato, não consegui participar de todas as reuniões de maneira síncrona mas assisti as gravações e além de conversar bastante pelo telegram com o Lucas Severo tivemos um pareamento onde ele me ajudou a debuggar a controller. A issue em que eu trabalhei foi bem tranquila, basicamente uma condição foi adicionada ao código, o desafio estava em debuggar e entender o que estava acontecendo ali.
## André
# Sprint 3
Data de início: 26/08/2021
Data de término: 09/09/2021
Issues
| id | Issue | Responsável | Status |
| ----------------------------------------------------------------------- | ----------------------------- | ----------------- | -------------------------------------------------------------------- |
| [#156](https://github.com/external-secrets/external-secrets/issues/156) | Support for immutable secrets | Arthur P. Tavares | [WIP](https://github.com/external-secrets/external-secrets/pull/329) |
| [#350](https://github.com/external-secrets/external-secrets/issues/350) | We need tests for target secret name defaults | Mateus O. Patrício | [WIP](https://github.com/external-secrets/external-secrets/pull/369) |
| [#209](https://github.com/external-secrets/external-secrets/issues/209) | e2e tests for AWS Secrets Manager | André Freitas | [WIP](https://github.com/external-secrets/external-secrets/issues/209) |
## Depoimentos
### Arthur Paiva
  Houve uma reunião no dia 26/08 com o meta coach pra auxiliar nas dificuldades das equipes, a reunião ficou gravada para os que não puderam participar. Depois de tentar algumas soluções que não funcionaram junto com o meta coach, pedi sugestões no PR [#329](https://github.com/external-secrets/external-secrets/pull/329), da forma sugerida pelo @moolen funcionou, mas houveram conflitos nos testes. O que ficou pra ser resolvido na próxima sprint
### Mateus Oliveira Patrício
  Nesta sprint além da reunião que participei com o meta coach, comecei a fazer os testes unitários e e2e relacionados à feature que entreguei na sprint passada, tive bastante dificuldade pra começar a entender como funcionam os testes mas consegui finalizar os testes unitários.
# Sprint 4
Data de início: 09/09/2021
Data de término: 23/09/2021
Issues
| id | Issue | Responsável | Status |
| ----------------------------------------------------------------------- | ------------------------------------------------------------------------- | ----------------------------- | --------------------------------------------------------------------- |
| [#156](https://github.com/external-secrets/external-secrets/issues/156) | Support for immutable secrets | Arthur Paiva | [DONE](https://github.com/external-secrets/external-secrets/pull/329) |
| [#350](https://github.com/external-secrets/external-secrets/issues/350) | We need tests for target secret name defaults | Mateus O. Patrício | [WIP](https://github.com/external-secrets/external-secrets/pull/369) |
| [#134](https://github.com/external-secrets/external-secrets/issues/134) | Cluster scoped ExternalSecret for creating secrets in multiple namespaces | Arthur Paiva, Mateus Oliveira | WIP |
| [#359](https://github.com/external-secrets/external-secrets/issues/359) | Provide openapi schemas for custom resources | André Freitas, Eduardo Lima | WIP |
| [#378](https://github.com/external-secrets/external-secrets/issues/378) | Need to upgrade slash-command-dispatch, but figure out new args | André Freitas, Eduardo Lima | WIP |
## Depoimentos
### Arthur Paiva
  Terminei nessa sprint a issue [#156](https://github.com/external-secrets/external-secrets/issues/156), que tinha como pendência uma mudança na forma de verificar se o secret esá sincronizado, consertos nos testes que estavam desatualizados com a nova issue, tive um certo trabalho também com os conflitos gerados no merge. Depois disso, fiz um pareamento com o Mateus Oliveira para trabalharmos na issue [#134](https://github.com/external-secrets/external-secrets/issues/134), que tem como objetivo possibilitar a criação do secret em vários namespaces de uma vez. Estudamos juntos um pouco mais sobre k8s, namespaces e o projeto em si, testamos o uso de um outro operador chamado reflector, como consta nas sugestões da issue e com a ajuda do meta coach vimos que seria necessário implementar a feature no projeto, e não só usar o reflector já que o mesmo não permitiria o uso de match labels.
### Mateus Oliveira Patrício
  Estou conversando bastante com o Lucas pelo telegram, ele tem me ajudado bastante a entender o projeto, acredito ter finalizado a pendência dos testes e2e da sprint passada, mas o PR ainda está em aberto pois para testar o que eu faço relacionado aos testes necessito que algum mantenedor do repositório mande o comando /ok-to-test no pull request sempre que eu atualizo ele, pois é a única maneira de executar estes testes. Além disto comecei a trabalhar na issue [#134](https://github.com/external-secrets/external-secrets/issues/134) junto com o Arthur Paiva, vamos implementar a funcionalidade de replicar o secret em vários namespaces com a opção de match labels.
### André Aben-Athar de Freitas
  Não conseguindo andar muito na parte de código, resolvi me voltar para issues que ajudem os mantenedores e possíveis usuários. Na issue [#359](https://github.com/external-secrets/external-secrets/issues/359) tivemos uma conversa do quanto seria interessante uma documentação do projeto no formato swagger. Junto com o Eduardo, estamos conversando nosso MetaCoach como é o melhor jeito de fazer isso. Provavlemente utilizaremos o mesmo método que o reposítorio oficial do kubernetes utiliza. E após isso, subir os arquivos com um passo no github actions.
Também junto com o Eduardo Lima, atualizamos um pacote na issue issue [#378](https://github.com/external-secrets/external-secrets/issues/378)
# Sprint 5
Data de início: 23/09/2021
Data de término: 07/10/2021
Issues
| id | Issue | Responsável | Status |
| ----------------------------------------------------------------------- | ---------------------------------------------------- | ------------ | --------------------------------------------------------------------- |
| [#156](https://github.com/external-secrets/external-secrets/issues/156) | Criação de testes para os métodos criados na feature | Arthur Paiva | [DONE](https://github.com/external-secrets/external-secrets/pull/329) |
| [#416](https://github.com/external-secrets/external-secrets/issues/416) | Resolução dos code smells de Cognitive Complexity | Arthur Paiva | [DONE](https://github.com/external-secrets/external-secrets/pull/421) |
| [#416](https://github.com/external-secrets/external-secrets/issues/416) | Redução de literais duplicados | Mateus O. Patrício | [DONE](https://github.com/external-secrets/external-secrets/pull/420) |
## Depoimentos
### Arthur Paiva
  Baseando a sprint em clean code, fiz os nessa sprint a issue [#156](https://github.com/external-secrets/external-secrets/issues/156), que foi a issue em que trabalhei na sprint passada. E resolvi code smells apontados pelo sonar cloud de problemas de alta complexidade cognitiva [#416](https://github.com/external-secrets/external-secrets/issues/416)
### Mateus O. Patrício
  Esta sprint foi focada em clean code, procurei algumas coisas por conta mas o código já está bem "limpo", tentei resolver algo de complexidade mas ao conversar com o meta coach, como as funções de complexidade elevada dependiam de muitas coisas, ele me orientou à resolver alguns code smells apontados pelo Sonar Cloud, descritos no PR [#420](https://github.com/external-secrets/external-secrets/pull/420).
### André Aben-Athar de Freitas
  Com uma sprint baseada em clean code e boas práticas, foi discutido com nosso coach que seria interessante resolvermos problemas apontados pelo Sonar Cloud. Deste modo, separei alguns code smells para serem resolvidos por mim [#420](https://github.com/external-secrets/external-secrets/pull/420).