Oii Eduardo, como você está? Espero que esteja bem.
Peço desculpas pela demora em obter um retorno.
Atualmente, na data de 06/01/20222 o arquivo cloud-run passou por algumas modificações que interferem no deploy através do Github Actions que foi apresentado neste vídeo.
O novo arquivo pode ser encontrado neste link.
Com esta atualização do código, as variáveis secrets no Github Action, serão:
- GCP_PROJECT
- BASIC_AUTH_PASSWORD
- BASIC_AUTH_USERNAME
- GCP_CREDENTIALS
Que significam respectivamente:
ID do projeto criado no google cloud. Ele é obtido ao clicar no nome do projeto, que se localiza no canto superior esquerdo da tela do Google Cloud, como mostro abaixo:


Senha de usuário
Nome de usuário
Conteúdo do arquivo JSON que contém as credenciais de acesso. Este arquivo foi elaborado na aula Service Accout.
Quanto ao código yaml, atualmente não é necessário criar um arquivo separado para construir uma imagem Dockerizada, como foi feito com o arquivo cloudbuild.yaml
. Nesta atualização do código, no próprio arquivo cloud_run.yaml
, foi adicionado o build via Docker, como mostro abaixo:
- name: Build and Push Container
run: |-
docker build -t gcr.io/${{ env.PROJECT_ID }}/${{ env.SERVICE }}:${{ github.sha }} .
docker push gcr.io/${{ env.PROJECT_ID }}/${{ env.SERVICE }}:${{ github.sha }}
A mudança que precisamos efetuar neste trecho é adicionar os argumentos de nome e senha com o --build-arg
, como mostro a seguir:
- name: Build and Push Container
run: |-
docker build -t gcr.io/${{ env.PROJECT_ID }}/${{ env.SERVICE }}:${{ github.sha }} --build-arg BASIC_AUTH_USERNAME_ARG=${{ secrets.BASIC_AUTH_USERNAME }} --build-arg BASIC_AUTH_PASSWORD_ARG=${{ secrets.BASIC_AUTH_PASSWORD }} .
docker push gcr.io/${{ env.PROJECT_ID }}/${{ env.SERVICE }}:${{ github.sha }}
Quanto a parte de autenticação, a mesma ocorrerá através da leitura de uma actions secrets:
- id: 'auth'
uses: 'google-github-actions/auth@v0'
with:
credentials_json: '${{ secrets.GCP_CREDENTIALS }}'
Para evitar problemas de indentação, adicionei o código completo neste link para que você efetue o download.
Qualquer dúvida fico à disposição.
Grande abraço e bons estudos!
Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓.Bons Estudos!