Não acho que depois de um mês o Diego vá voltar aqui, mas a solução do Armano ainda não resolve e pode ajudar alunos no futuro. (https://cursos.alura.com.br/forum/topico-erro-ao-realizar-commit-550740)
Depois de remover de outros cursos os passos ou arquivos de teste no workflow que não funcionam, provavelmente pelo mesmo motivo, resolvi parar de estudar e tentar resolver algo que estava sem solução definitiva (não achei nos outros cursos que fiz) afinal, ferramentas tendem a descontinuar e mudar o seus funcionamentos. A carreira SRE tem este curso sem os anteriores SE tiveram e os erros começaram na aula 2 atividade 10 e até 09/03/2026.
1. O primeiro erro
Ainda tem este problema depois que o docker incorporou docker-compose como um subdomando e depois descontinuou em Julho/2023 (apontado no https://cursos.alura.com.br/forum/topico-sugestao-trocar-o-comando-de-docker-compose-para-docker-compose-489730).
Para corrigir, no .github/workflows/go.yml remova o hífen do comando docker-compose ficando docker compose.
2. O erro do banco
Se o código não ainda foi atualizado e você seguiu igual a aula, o passo Test vai falhar com 1 bilhão % de certeza.
Mas tem solução.
2.1. O que fiz
Primeiro limitei para uma versão do Go e Ubuntu (por sorte a latest e você vai entender) no passo de Test. Após várias horas de leitura e busca sem informação mudei o passo Create-DB do script .github/workflows/go.yml para:
- name: Create-DB
run: |
docker compose up -d
docker ps -a
docker compose logs postgres
Com o docker ps -a isso foi possível identificar que o container do PostgreSQL não estava funcionando, que normalmente indica problema na imagem ou no container.
E com o docker compose logs postgres que era a versão do PostgreSQL usado na aula é muito diferente da mais recente, já que não informamos a versão é pego a latest.
2.2. Solução
No arquivo ./docker-compose.yml você deve fixar uma versão do PostgreSQL anterior a 18. Eu fixei a latest de quando foi gravado a aula (2022), ou seja, a 13 o começo fica:
services:
postgres:
image: "postgres:13"
P.S. o version: '3' é uma linha descontinuada e remover não interefe
Agora o container do banco fica estável e continua funcionando.
Com isso podemos remover os limitadores de versões, mas ainda tem mais um problema.
3. Versão de Ubuntu
O Github removeu o Ubuntu 18.04 da lista de imagens suportadas em Abril/2023 e o código parou de funcionar, a solução é fixar uma versão LTS mais recente, no meu caso 24.04, (https://cursos.alura.com.br/forum/topico-build-no-workflows-nao-funfa-448205) nas estratégias de tipo os do arquivo .github/workflows/go.yml ficando:
os: ['ubuntu-latest', 'ubuntu-24.04']
Com isso todos os testes voltam a funcionar.
4. Conclusão
Agora você pode continuar a aula com menos problemas e pode tentar aplicar em outros cursos de CICD que tenham problemas semelhantes. Mesmo que o conteúdo ainda sejam aplicáveis, o código está defazado. De forma resumida minhas sugestões são:
- Atualização dos códigos usados nas aulas
- Revisão dos códigos das aulas em intervalos de tempo
- Permitir que alunos possam corrigir os códigos das aulas, preferencialmente as que estejam no repositório oficial da Alura no Github (não sei se é possível porque não tentei)
- Fixar versões de pacotes, ferramentas e SO nos scripts
Me parece mais fácil quarta, embora a terceira me parece mais colaborativa.
5. Bônus
5.1. Inserir imagens no fórum
Troquem o texto Insira aqui a descrição dessa imagem para ajudar na acessibilidade para Insira_aqui_a_descrição_dessa_imagem_para_ajudar_na_acessibilidade, é muito mais eficiente e acessível dois cliques de mouse que selecionar tudo a menos que diminuia o texto para uma única palavra.
5.2. Atualização do portal
De preferência mudem os horários, alertem ou façam deploy blue green (se não for usado), não foi a primeira vez que escrevo um post ou resposta e quando envio vem a tela de manutenção perdendo o conteúdo, mas desta vez resolvi refazer. Dica, se for fazer algo longo, faça fora desta área.