Всякий раз, когда гем не запускает задачи rake (/ bin / bash: 'НЕКОТОРЫЙ ПУТЬ' / 2.3 / usr / bin / ruby: плохой интерпретатор: нет такого файла или каталога) - PullRequest
0 голосов
/ 03 августа 2020

Я пытаюсь реализовать gem всякий раз, чтобы запускать некоторые задачи по рейку.

Но я получаю эту ошибку:

/bin/bash: /usr/local/bin/bundle: /System/Library/Frameworks/Ruby.framework/Versions/2.3/usr/bin/ruby: bad interpreter: No such file or directory

Я добавил всякий раз, когда в моем Gemfile , запустил bundle, создал schedule.rb. Также моя задача rake работает нормально, если я попробую ее вручную в своем терминале.

Вот мой schedule.rb:

# schedule.rb
set :bundle_command, "/usr/local/bin/bundle exec"
set :output, "#{path}/cron_log.log"
require File.expand_path('../application', __FILE__)
 env :PATH, ENV['PATH']

every 1.minute, roles: [:app] do
  command "echo 'Running rake task'"
  command "bundle exec rake 'users:create_new_user'", :environment => "development"
  rake 'users:create_new_user', :environment => "development"
end

первая команда работает нормально и печатается в моем cron_log .log правильно. Но два других возвращают ошибки.

А это моя задача граблей (только для тестирования)

namespace :users do
  desc "this rake creates ..."
  task :create_new_user => :environment do
    User.create(email: 'hello@world.com', password: '12341234')
    puts "user created"
  end
end

Моя ruby версия 2.6.6 На всякий случай немного дополнительной информации :

which ruby => /Users/me/.rbenv/shims/ruby

which whenever => /Users/me/.rbenv/shims/whenever

which rails => ./bin/rails

which bundle => ./bin/bundle

which bundler => /Users/me/.rbenv/shims/bundler

Большое спасибо!

...