2017-07-11 2 views
2

Je crée un travail de jenkins pour déployer un conteneur à GKE, et une partie de ce script me oblige à authentifier auprès du service de conteneurs avec:Authentification au service de conteneur Google avec le script: login interactif gcloud non interactif?

« gcloud auth login »

Cependant, c'est un outil interactif opération qui me oblige à aller chercher un jeton dans le navigateur:

gcloud auth login 
Go to the following link in your browser: 

(qui Jenkins ne peut évidemment pas faire, ou du moins pas facilement)

y at-il un moyen d'automatiser cette étape?

Répondre

1

gcloud auth login La commande est utilisée pour obtenir et activer user informations d'identification de compte. Bien qu'il soit possible de les utiliser, dans les cas non interactifs, d'autres utilisateurs ont accès, à la place, vous devez utiliser les informations d'identification du compte service.

Pour obtenir des informations d'identification de compte de service que vous pouvez faire une des opérations suivantes:

  1. Aller à https://console.cloud.google.com/iam-admin/serviceaccounts/project?project=YOUR_PROJECT et faire/télécharger une clé pour l'un des comptes de service (ou en créer un nouveau), ou
  2. Utilisez gcloud pour créer une clé:

    gcloud iam service-accounts list 
    
    gcloud iam service-accounts keys create \ 
        MY_KEY_FILE.json 
        --iam-account ONE_OF_ACCOUNTS_FROM_ABOVE_LIST 
    

une fois que vous avez un fichier de clé activer simplement dans le cadre de vous créez un script (ou j une fois si elle fonctionne toujours sur la même machine.)

 gcloud auth activate-service-account --key-file=MY_KEY_FILE.json 
+0

Merci cherba, cela fonctionne. –