CommandException: arg [...]는 디렉터리, 버킷 또는 버킷 하위 디렉터리의 이름을 지정하지 않습니다. Compute Engine의 디렉터리

CommandException: arg [...]는 디렉터리, 버킷 또는 버킷 하위 디렉터리의 이름을 지정하지 않습니다. Compute Engine의 디렉터리

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버킷이나 '로컬 디렉토리 전체'에서만 작동합니다.

관련 정보