Quelle est la manière la plus simple d'utiliser la gcloud
ligne de commande de manière non interactive avec un compte de service en dehors de GCE? De préférence sans salir le système de fichiers avec des fichiers d'informations d'identification, c'est ce qui gcloud auth activate-service-account --key-file=...
fait.
Il existe de nombreux cas d'utilisation pour une utilisation gcloud
avec un compte de service. Par exemple, sur un serveur, je voudrais tester que le GOOGLE_APPLICATION_CREDENTIALS
est correctement défini et dispose des autorisations requises avant d'exécuter mon application. Ou, je voudrais exécuter des scripts de configuration ou des scripts cron qui effectuent une vérification avec la gcloud
ligne de commande.
Les bibliothèques Google Cloud (par exemple python , java ) utilisent automatiquement la variable d'environnement GOOGLE_APPLICATION_CREDENTIALS
pour s'authentifier auprès de Google Cloud. Mais malheureusement, cette ligne de commande semble n'avoir aucun effet gcloud
. Quelle est une façon propre d'utiliser gcloud
tout en laissant le système de fichiers intact?
$ GOOGLE_APPLICATION_CREDENTIALS=/etc/my-service-account-4b4b6e63aaed.json gcloud alpha pubsub topics publish testtopic hello
ERROR: (gcloud.alpha.pubsub.topics.publish) You do not currently have an active account selected.
Please run:
$ gcloud auth login
to obtain new credentials, or if you have already logged in with a
different account:
$ gcloud config set account ACCOUNT
to select an already authenticated account to use.