Continuo tentando meu projeto com base nisso:https://github.com/GoogleCloudPlatform/iot-smart-home-cloud
Meu problema é:
cloudfunctions.googleapis.com google.cloud.functions.v1.CloudFunctionsService.UpdateFunction projects/casaminha-2e0ca/locations/us-central1/functions/syncOnRemove [e-mail protegido] Falha na compilação: não foi possível resolver a origem: googleapi: Erro 403:[e-mail protegido]não tem acesso storage.objects.get ao objeto Google Cloud Storage., proibido com.google.net.rpc3.client.RpcClientException: APPLICATION_ERROR;google.devtools.cloudbuild.v1/ArgoAdminV1.CreateBuild;não foi possível resolver fonte: googleapi : Erro 403:[e-mail protegido]não tem acesso storage.objects.get ao objeto Google Cloud Storage., proibido;AppErrorCode=3;StartTimeMs=999999999999540;unknown;ResFormat=AUTOMATIC;ServerTimeSec=0.999999999999999;LogBytes=256;Non-
Excluí em 27/jul/2021 cloud build ou cloud run (não uso cloud run em meu projeto) excluí no console do GCP. Achei que era isso que estava dando erro de credencial no meu projeto de ação no google.Então comecei a receber o erro atual.
Lembro que a conta de serviço que excluí estava associada apenas ao controlador do Google (havia um ponto de interrogação ali)
Acho que o comando gcf irá reconstruir isso. Mas não tenho certeza se isso está correto. E também não sei usargcf-sources-<PROJECT_NUMBER>-
Fico tentando ações no google, usando firestore e GCP.
comandos:
firebase --project casaminha-2e0ca funções:config:set cloudiot.region=us-central1
firebase --project casaminha-2e0ca funções:config:set smarthome.id=567617xxxxxxxxxxxxxxx9r9upjxxxxxxx0t.apps.googleusercontent.com smarthome.secret=D99999999999
firebase --project casaminha-2e0ca funções:config:set smarthome.key="99999999"
firebase implantar --project casaminha-2e0ca
Este é o meu projeto no github:https://github.com/neuberfran/firebasefunction
Este é o meu problemaTracker:https://issuetracker.google.com/issues/194942955?pli=1
Você pode ajudar
Responder1
Ao usar o Cloud Function, a API Cloud Build deve estar habilitada para implantar seu Cloud Function, isso está bem documentado no tutorial(Antes de você começar). A conta de serviço Cloud Build será gerada automaticamente quando você ativar o serviço Cloud Build em seu projeto do Google Cloud e terá a seguinte aparência:
[PROJECT-ID]@cloudbuild.gserviceaccount.com
Em relação a este:
Excluí em 27/jul/2021 cloud build ou cloud run (não uso cloud run em meu projeto) Excluí no console do GCP
Observe,excluindo conta de serviço:
Quando você exclui uma conta de serviço, os aplicativos não terão mais acesso aos recursos do Google Cloud por meio dessa conta de serviço.
E com base no seurastreador de problemas, parece que a solução é recuperar sua conta de serviço excluída. A conta de serviço excluída pode ser recuperada em 30 dias. Para cancelar a exclusão ou recuperar, você deve encontrar o ID numérico ou ACCOUNT_ID da conta de serviço excluída que pode ser obtida no Cloud Logging/Log Explorer,aqui está o tutorial.
Depois de obter o ID numérico ou ACCOUNT_ID, execute o seguinte na CLI, no Cloud Shell ou no Cloud SDK:
gcloud beta iam service-accounts undelete ACCOUNT_ID
saída:
restoredAccount:
email: SA_NAME@PROJECT_ID.iam.gserviceaccount.com
etag: BwWWE7zpApg=
name: projects/PROJECT_ID/serviceAccounts/SA_NAME@PROJECT_ID.iam.gserviceaccount.com
oauth2ClientId: '123456789012345678901'
projectId: PROJECT_ID
uniqueId: 'ACCOUNT_ID'
ATUALIZAR:
A causa raiz do erro era a falta da permissão `Conta de serviço do Cloud Build` e foi resolvido adicionando essa permissão.Responder2
No meu caso, não excluí a conta de serviço, apenas as funções do IAM da conta de serviço.
A solução é ir até a página do IAM e adicionar o principal:
[PROJECT-ID]@cloudbuild.gserviceaccount.com
com role:Cloud Build Service Account
Responder3
No meu caso, recentemente habilitei a API Cloud Build em meu projeto e apenas tive que esperar mais 2 minutos e funcionou. Estou feliz por não ter mexido nas funções do IAM em vão enquanto esperava!