Ce message était accro à une erreur lorsque j'ai exécuté un déploiement automatique, je vais donc le partager.
[Deprecation Notice] Future versions of Capistrano will not load the Git SCM
plugin by default. To silence this deprecation warning, add the following to
your Capfile after `require "capistrano/deploy"`:
require "capistrano/scm/git"
install_plugin Capistrano::SCM::Git
00:00 rbenv:validate
WARN rbenv: ruby 2.5.1 is not installed or not found in $HOME/.rbenv/versions/ruby 2.5.1 on 54.95.87.53
1. require "capistrano/scm/git" On émet l'hypothèse qu'il existe une anomalie dans Capfile à partir de la description de require ~.
2. WARN rbenv: ruby 2.5.1 is not installed〜 D'après la description que ruby 2.5.1 n'est pas installé, on suppose que ruby 2.5.1 n'est pas installé et qu'il existe une différence de ver par rapport à l'environnement local. Est-ce suspect deploy.rb ...?
require "capistrano/setup"
require "capistrano/deploy"
require 'capistrano/rbenv'
require 'capistrano/bundler'
require 'capistrano/rails/assets'
require 'capistrano/rails/migrations'
require 'capistrano3/unicorn'
require "capistrano/scm/git"
install_plugin Capistrano::SCM::Git
Dir.glob("lib/capistrano/tasks/*.rake").each { |r| import r }
Aucune anomalie particulière.
J'ai exécuté ** ruby -v ** dans l'environnement de développement local et l'environnement de production (EC2), mais il n'y a pas de problème.
deploy.rb
# config valid only for current version of Capistrano
#Décrit la version de capistrano. Continuer à utiliser la version fixe et éviter les problèmes dus aux changements de version
lock '3.14.1'
#Utilisé pour afficher les journaux Capistrano
set :application, 'chat-space'
#Spécifiez à partir de quel référentiel extraire l'application
set :repo_url, '[email protected]:ken-sasaki-222/chat-space.git'
#Spécifiez un répertoire qui est couramment référencé même si la version change
set :linked_dirs, fetch(:linked_dirs, []).push('log', 'tmp/pids', 'tmp/cache', 'tmp/sockets', 'vendor/bundle', 'public/system', 'public/uploads')
set :rbenv_type, :user
set :rbenv_ruby, 'ruby2.5.1' #Faites attention ici
#Quelle clé publique utiliser pour le déploiement
set :ssh_options, auth_methods: ['publickey'],
keys: ['~/.ssh/test_key.pem']
#Emplacement du fichier contenant le numéro de processus
set :unicorn_pid, -> { "#{shared_path}/tmp/pids/unicorn.pid" }
#Emplacement du fichier de configuration Unicorn
set :unicorn_config_path, -> { "#{current_path}/config/unicorn.rb" }
set :keep_releases, 5
#Description du redémarrage de Unicorn une fois le processus de déploiement terminé
after 'deploy:publishing', 'deploy:restart'
namespace :deploy do
task :restart do
invoke 'unicorn:restart'
end
end
Il ne semble y avoir aucun problème avec ruby ver. Je pense ... La partie spécifiée par ver est ** 'ruby 2.5.1' **!
Correctement, «2.5.1» est OK! Si vous le réparez.
deploy.rb
#réduction
set :rbenv_type, :user
set :rbenv_ruby, '2.5.1' #Faites attention ici
#réduction
Maintenant, lorsque vous exécutez ** bndle exec cap production deploy ** dans votre terminal local Le déploiement automatique s'est déroulé en toute sécurité.
Recommended Posts