5
votes

I want to create a google bucket if it doesn't exist. Otherwise, I want to reuse the bucket name. How to do it? Its equivalent of the unix command

mkdir -p dir_name

I used the command but my shell script crashes when I run this next time.

gsutil mb -l ASIA gs://my_bucket_name_blah_blah

1

1 Answers

9
votes

You could check for the existence of the bucket first. I think something like this would work:

gsutil ls -b gs://my_bucket_name_blah_blah || gsutil mb -l ASIA gs://my_bucket_name_blah_blah

Since the first command will return a 0 error code if the bucket already exists, the second command will only be executed if the bucket does not exist.

Note however that the first command will also return a non-zero exit code in the case of errors (transient error or permission denied). So you might need a more robust way of creating buckets.