web-dev-qa-db-fra.com

SDK Google Cloud installé mais ne peut pas accéder à gcloud

J'essaie d'installer le kit SDK Google Cloud sur OSX et de suivre ce didacticiel sur node.js ( https://cloud.google.com/nodejs/getting-started/hello-world ) et continue de rencontrer un problème la gcloud est introuvable. Ce peut être simplement quelque chose de simple à propos de la configuration ou de la sauvegarde du fichier. 

J'ai lu une tonne d'autres articles ici mais je n'ai pas pu résoudre ce problème. Voici toutes les étapes/questions:

J'ai déjà créé un projet dans la console de développement. 

Installer le cloud SDK

MacBook-Pro-2:~ nico$ curl https://sdk.cloud.google.com | bash

Puis suivez le processus

Directory to extract under (this will create a directory google-cloud-sdk) (/Users/nico):

Do you want to help improve the Google Cloud SDK (Y/n)?  y

Modify profile to update your $PATH and enable bash completion? (Y/n)? y

Enter path to an rc file to update, or leave blank to use [/Users/nico/.bash_profile]:

Puis j'ai essayé de m'authentifier:

MacBook-Pro-2:~ nico$ gcloud auth login
-bash: gcloud: command not found

Puis je suis allé dans un répertoire bin cloud sdk

MacBook-Pro-2:~ nico$ cd google-cloud-sdk/bin
MacBook-Pro-2:bin nico$ ./gcloud auth login

L'authentification a réussi

 MacBook-Pro-2:bin nico$ ./gcloud config set project helloworld-project

Le projet a été un succès

MacBook-Pro-2:bin nico$ ./gcloud components update app

ERROR: (gcloud.components.update) Your current working directory is inside the Cloud SDK install root: /Users/nico/google-cloud-sdk.  
In order to perform this update, run the command from outside of this directory.

Alors je quitte ce répertoire

 MacBook-Pro-2:test_project nico$ gcloud components update app
-bash: gcloud: command not found

Et maintenant, ça ne marche pas, est-ce que je dois installer gcloud quelque part pour qu'il soit accessible globalement? Comment puis-je le mettre à jour et accéder à l'outil de ligne de commande gcloud?

13
NicoM

Dans mon menu ~/.bash_profile, il y avait une erreur, en haut, j'avais cette ligne:

if which rbenv > /dev/null; then eval "$(rbenv init -)"; fi source /Users/nico/.bash_profile

Ce qui lançait une erreur et dérangeait gcloud, ce qui est étrange, c'est que les autres variables en ligne de commande fonctionnent bien avec cette erreur.

Une fois que j'ai supprimé cette ligne gcloud a bien fonctionné. 

0
NicoM

En regardant la sortie de l'outil d'installation:

Enter path to an rc file to update, or leave blank to use [/Users/nico/.bash_profile]:

... il semble que l'outil d'installation ait mis à jour "/Users/nico/.bash_profile" alors que Mac OS X s'appuie sur "/Users/nico/.profile" pour la configuration. Copiez les modifications dans "/Users/nico/.bash_profile" sur "/Users/nico/.profile", puis fermez et redémarrez le terminal pour que les modifications prennent effet.

Dans le nouveau shell, vous pouvez voir si "gcloud" est défini à l'aide de la commande:

 which gcloud

Il devrait produire:

 /Users/nico/google-cloud-sdk/bin/gcloud

Si cela ne fonctionne pas, alors je vous recommande de mettre à jour votre PATH manuellement. Pour ce faire, éditez ~/.profile:

 nano ~/.profile

Et puis ajoutez la ligne suivante à la toute fin:

 export PATH="$HOME/google-cloud-sdk/bin:$PATH"

Et redémarrez votre Shell. Notez que si vous utilisez un shell autre que le terminal intégré, vous devrez peut-être modifier un fichier différent (tel que ~/.bashrc ou ~/.bash_profile pour une installation BASH personnalisée et divers autres fichiers "rc" pour des shells alternatifs. tels que ZSH, CSH, etc.) pour mettre à jour votre variable PATH.

Si cela ne fonctionne toujours pas, je vous suggère de déboguer en tapant:

echo "$PATH"

... afin que vous puissiez au moins voir le chemin actuel.

14

J'avais modifié mon 

vi ~/.bash_profile

et ajouté une ligne à la fin de celui-ci

source ~/.bashrc

Ensuite, vous pouvez vous déconnecter et vous reconnecter ou exécuter:

source ~/.bash_profile

Après avoir ajouté la ligne.

Système d'exploitation: Linux vagrant-ubuntu-trusty-64 3.13.0-116-generic # 163-Ubuntu

Ou simplement exécuter:

echo "source ~/.bashrc" >> ~/.bash_profile
source ~/.bash_profile
which gcloud

M'a montré 

/ home/myusername/google/google-cloud-sdk/bin/gcloud

1
JayRizzo