![CommandException:arg [...] 未命名目錄、儲存桶或儲存桶目錄。對於 Compute Engine 上的目錄](https://rvso.com/image/727038/CommandException%EF%BC%9Aarg%20%5B...%5D%20%E6%9C%AA%E5%91%BD%E5%90%8D%E7%9B%AE%E9%8C%84%E3%80%81%E5%84%B2%E5%AD%98%E6%A1%B6%E6%88%96%E5%84%B2%E5%AD%98%E6%A1%B6%E7%9B%AE%E9%8C%84%E3%80%82%E5%B0%8D%E6%96%BC%20Compute%20Engine%20%E4%B8%8A%E7%9A%84%E7%9B%AE%E9%8C%84.png)
我正在嘗試使用 gsutils 命令將 CircleCI 的變更部署到我的 Compute Engine 實例上的目錄。我正在使用的命令是:
gsutil -m rsync -d -r dev/ [VM_INSTANCE_NAME]:/var/www/dev/
但我收到以下錯誤:
CommandException: arg [...] does not name a directory, bucket, or bucket subdir.
基於這,我應該能夠部署到 Compute Engine 上的目錄。
答案1
阿利奧阿是正確的。我理解您試圖在哪裡引用該文檔,但只有當目錄位於本地時才有效。如果您使用 CircleCI,您最好使用服務帳戶並為其指派正確的 IAM 權限。
雖然普通的rsync
可以工作,但您也可以使用gcloud compute scp
或gcloud compute copy-files
。gsutil rsync
僅適用於儲存桶或「跨本機目錄」。