Общая цель:
Мы хотим иметь возможность загружать артефакты из контейнера Docker в наших заданиях Circle CI в корзину в Google Cloud. В идеале мы могли бы достичь этого с gsutil cp <artifact> <bucket>
Вопрос:
Мне сложнее всего проверить подлинность учетной записи службы gcloud
в автоматическом режиме, и я нигде не могу найти документацию по этому вопросу. Почти каждая статья, которую я прочитал, предлагает вам один из этих двух вариантов:
Настройка с помощью gsutil
$ gsutil config -a
Однако возникает ряд вопросов, требующих взаимодействия с оболочкой:
Backing up existing config file "/Users/<user>/.boto" to "/Users/<user>/.boto.bak"...
This command will create a boto config file at
/Users/<user>/.boto containing your credentials, based on your
responses to the following questions.
What is your google access key ID?
Вход в систему с gcloud
:
$ gcloud auth login
Your browser has been opened to visit:
https://accounts.google.com/o/oauth2/auth?....
Поскольку конечным результатом здесь является то, что контейнер Docker будет аутентифицировать служебную учетную запись для выполнения gsutil cp
, интерактивный вход в систему не очень благоприятен ...
У меня есть настройки JSON для учетных данных в в этом примере , но при установке переменной среды GOOGLE_APPLICATION_CREDENTIALS
все еще запрашивается сообщение Are you sure? [Y/n]
, которое не может быть автоматически пропущено. Есть идеи?