gcloud - Github Actions - GCloud 应用程序部署 app.yaml - 桶是请求者支付桶但没有提供用户项目
问题描述
我有一个带有 Gcloud 的 Github 操作,这个设置运行良好,3 个月后(没有更改)我运行了另一个部署/操作,但现在有一条消息:
桶是请求者支付桶但没有提供用户项目。
这个错误的原因是什么?
我再说一遍,这个动作运行良好,没有进行任何更改,只是在 3 个月后再次运行但失败了。
我当前的 Actions yaml 是:
name: Deploy to GCloud
on:
push:
branches:
- master
- qa
env:
type: prod
PROJECT_ID: ${{ secrets.GCE_PROJECT }}
jobs:
setup-deploy:
name: Setup and Deploy
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Setup gcloud environment
uses: GoogleCloudPlatform/github-actions/setup-gcloud@master
with:
version: '290.0.1'
service_account_key: ${{ secrets.GCE_SA_KEY }}
project_id: ${{ secrets.GCE_PROJECT }}
- name: Auth helper
run: |-
gcloud --quiet auth configure-docker
- name: Deploy
run: |-
gcloud app deploy app.${GITHUB_REF#refs/heads/}.yaml
解决方案
正如我在评论中分享的链接所说,您遇到的错误是因为在您用于部署的存储桶中启用了请求者付款。我最终尝试使用以下命令启用此功能,但遇到了与您相同的错误。
gsutil requesterpays set on gs://BUCKET_NAME
在启用请求者付款功能时,您必须考虑一些注意事项才能使用和访问存储桶。
如果在您收到错误之前很久就启用了此功能并且您突然开始收到错误,或者如果存储桶中未启用该功能(您可以执行此命令来验证它gsutil requesterpays get gs://BUCKET_NAME
,您应该得到类似的东西gs://my-bucket: Enabled
)并且您得到错误,我建议您向 Google 团队打开一个支持案例,看看您的问题。
推荐阅读
- python - 使用 python tensorflow 模型识别验证码图像,但出现一些问题
- sql - 有没有办法在计算列中保留 dateparts Week 和 DayOfWeek?
- assembly - ARM pc寄存器并不总是当前指令的地址加4(Thumb状态)
- android - Android Camera 处理 previewCallback 中的帧数据导致越来越多的本机内存
- tfs - VSTS/TFS 扩展开发 - getWorkItems() 方法的 GET 请求的 URL 限制
- tfs - 'Checkout for edit' 如何在 TFS 中工作
- javascript - 如何获取代码以仅显示当前用户上传的图像?Ps 编程新手
- python-3.x - 为什么我的视频爬虫无法检测到简单的视频 src?
- spring - 除非调用 cachemanager.getCacheNames() 否则无法从 cachemanager 获取缓存
- php - 'fetch' 调用返回为未定义?