2017-10-06 6 views
0

Juste mis à niveau vers la dernière Capistrano et mes rails déploiements sont toutes les impressions de cet avertissement -Capistrano Net :: SSH.start dévalorisant watning

/home/vivek/.rvm/gems/ruby-2.4.1/gems/sshkit-1.14.0/lib/sshkit/backends/connection_pool.rb:59:in `call': Passing nil, or [nil] to Net::SSH.start is deprecated for keys: user 

Tout semble fonctionner.

Je suis passé de la version 3.5.0 à la version actuelle (3.91.). Y a-t-il quelque chose qui doit être changé dans deploy.rb?

Répondre

2

Lors de la déclaration de vos serveurs par ex. config/deploy/production.rb, assurez-vous de définir explicitement un nom d'utilisateur. Je suppose que vous n'en avez pas spécifié, d'où l'avertissement.

Par exemple:

server "example.com", user: "deploy", roles: %w[app web] 

Vous pouvez vérifier que le nom d'utilisateur est accepté en exécutant:

$ cap production doctor:servers 

Servers (1) 

    [email protected] [:app, :web] 

Le nom d'utilisateur pour chaque serveur peut également être redéfinie au niveau mondial via :ssh_options. Si vous définissez :ssh_options, assurez-vous que ces options n'incluent pas quelque chose comme user: nil.

Vous pouvez vérifier la valeur de :ssh_options en exécutant:

$ cap production doctor:variables 
+0

J'ai un utilisateur défini dans mes tous mes fichiers Déployez - serveur « xxx.xxx.com », l'utilisateur: « deployer », rôles: [ : web,: app], primaire: vrai - me donne toujours l'avertissement – subbu

+0

@subbu est-ce que vous placez ': ssh_options' n'importe où? «Cap production médecin: variables» peut être utile ici. –

+0

J'ai trouvé ceci ': ssh_options {: forward_agent => vrai,: utilisateur => nil,: keys => [" ~/.ssh/id_rsa "]}' - J'ai commenté cela et il semble avoir éliminé le Attention. Je suppose que c'était un code indésirable que le code a laissé - jamais causé un problème, donc je suppose qu'il n'a jamais été supprimé. Merci beaucoup! :) – subbu