gsutil:在复制时指定项目

gsutil: specify project on copy

我正在尝试使用 gsutil 提出命令以方便部署到我的 GCP 项目中的不同环境(生产、暂存)。

以下部署到生产环境没有问题:

gsutil cp -r ./build/* gs://<production-project-name>/

我想部署到另一个项目中的存储桶。 gsutil 帮助页面提到 lsmb-p 选项,用于更改 gsutil 命令的项目上下文。

我想使用这样的命令将我的应用程序部署到暂存环境:

gsutil cp -r ./build/* gs://<existing-bucket-in-staging-project>/ -p <staging-project-name>

唉,-p 选项对 cp 命令不可用。我在 gsutil cp doc page.

上确认了

将构建工件部署到 Google 云存储桶到终端环境中当前指定的项目以外的项目中的桶的最佳方法是什么?

存储桶命名空间是全局的,因此只要您使用的凭据具有对其他项目的权限,您就不需要使用 cp 命令的项目参数。换句话说,这个命令应该可以正常工作:

gsutil cp -r ./build/* gs://<bucket-in-staging-project>