Загрузочные файлы программного обеспечения Firebase Test lab CI

При настройке моего сервера сборки для использования Firebase Test Lab для тестирования эспрессо я постоянно сталкиваюсь с ошибкой.

ERROR: (gcloud.beta.test.android.run) Permission denied while fetching the default results bucket 
(Error 403: Access Not Configured. Cloud Tool Results API has not been used in project CLOUD_PROJECT_ID before or it is disabled. Enable it by visiting https://console.developers.google.com/apis/api/toolresults/overview?project=CLOUD_PROJECT_ID then retry. If you enabled this API recently, wait a few minutes for the action to propagate to our systems and retry.).
Is billing enabled for project: [PROJECT_ID]?

Когда я пробую его на своем компьютере, который вошел в систему через мою учетную запись, выполнение приведенной ниже команды работает правильно.

gcloud beta test android run \
  --type instrumentation \
  --app app-debug.apk \
  --test app-debug-androidTest.apk \
  --device-ids Nexus4,Nexus5 \
  --os-version-ids 18,21,25 \
  --locales en \
  --orientations portrait

На моем сервере сборки я хочу использовать служебную учетную запись, но когда я выполняю команду, я получаю указанную ранее ошибку. Кто-нибудь знает, как это правильно настроить? Нужна ли сервисному аккаунту какая-то особая роль, помимо project editor?

В сценарии сборки я выполняю следующие команды для аутентификации и настройки проекта перед загрузкой APK-файлов.

gcloud config set project PROJECT_ID
gcloud auth activate-service-account [email protected] --key-file ~/gcloud-service-key.json

person Aegis    schedule 25.01.2017    source источник


Ответы (2)


Наконец разобрался. Если вы хотите использовать служебные учетные записи для Firebase Test Lab, вам необходимо включить Cloud Tool Results API, который можно включить только через Google Cloud Console, а не Firebase Console.

person Aegis    schedule 26.01.2017

Кроме того, вы, вероятно, используете его с сервера CI / CD и используете учетные записи служб для аутентификации ... Не делайте, как я, не используйте учетную запись службы облачной платформы Google. Вместо этого используйте json-ключ Firebase Service Accounts отсюда.

https://console.firebase.google.com/u/0/project/YOUR_PROJECT_ID/settings/serviceaccounts/

person Achraf Amil    schedule 23.04.2018