Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
Olá, Vitor.
Tudo bem?
Pelo que vi na imagem, o erro que você está enfrentando está relacionado ao comando docker-compose não encontrado no ambiente de execução do GitHub Actions. Esse erro ocorre porque o docker-compose não está instalado por padrão nos runners do GitHub.
Para tentar resolver esse problema, você pode tentar adicionar um passo no seu workflow para instalar o docker-compose antes de tentar usá-lo. Vou te mostrar como fazer isso:
go.yml na pasta .github/workflows.docker-compose antes de executar o comando docker-compose build.Aqui está um exemplo de como seu arquivo go.yml pode ficar:
jobs:
test:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: ['ubuntu-latest', 'ubuntu-18.04']
go_version: ['1.18', '1.17', '>=1.18']
steps:
- uses: actions/checkout@v3
- name: Set up Go
uses: actions/setup-go@v2
with:
go-version: ${{ matrix.go_version }}
- name: Install dependencies
run: go mod download
- name: Test
run: go test ./...
build:
needs: test
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: ['ubuntu-latest', 'ubuntu-18.04']
steps:
- uses: actions/checkout@v3
- name: Install Docker Compose
run: |
sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
- name: Build
run: docker-compose build
Neste exemplo, adicionei um passo chamado Install Docker Compose que baixa e instala o docker-compose antes de executar o comando docker-compose build.
Espero que essa sugestão resolva o problema. Qualquer dúvida manda aqui. Bons estudos!
Tive que dar uma bela estudata e fiz algumas alterações. Isso para rodar o workflows, segue o doc go.yml
name: Go
on: push: branches: [ '' ] pull_request: branches: [ '' ]
jobs: test: runs-on: ${{ matrix.os }} env: HOST: localhost PORT: 5432 USER: root PASSWORD: root DBNAME: root strategy: matrix: go_version: ['1.20', '1.18'] os: ['ubuntu-latest'] steps: - uses: actions/checkout@v3
- name: Set up Go
uses: actions/setup-go@v3
with:
go-version: ${{ matrix.go_version }}
- name: Install Docker Compose
run: |
sudo curl -L "https://github.com/docker/compose/releases/download/$(curl -s https://api.github.com/repos/docker/compose/releases/latest | grep tag_name | cut -d '"' -f 4)/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
- name: Build-DB
run: docker-compose build
- name: Create-DB
run: docker-compose up -d
- name: Test
run: go test -v main_test.go
build: needs: test runs-on: ${{ matrix.os }} strategy: matrix: os: ['ubuntu-latest'] go_version: ['1.20', '1.18'] steps: - uses: actions/checkout@v3 - name: Set up Go uses: actions/setup-go@v3 with: go-version: ${{ matrix.go_version }} - name: Build run: go build -v main.go
Olá Victor.
Que bom que conseguiu encontrar uma solução! O importante é conseguir seguir com os testes e continuar o curso sem problemas. Se surgir mais alguma dúvida, manda aqui. Bons estudos e sucesso no seu aprendizado!
Tive o mesmo problema, ajustei alterando "docker-compose" por "docker compose" e funcionou. Não entendi muito bem o motivo, mas deve ter mudado algo no github actions.
Outro problema que podem chegar a ter atualmente:
O github não suporta mais o ubuntu 18.04 e a job fica travada nessa parte. A solução é trocar para o ubuntu-20.04