sirve - sintaxis ruby
¿Cómo ejecutar una secuencia de comandos ruby en el contexto de bundler? (3)
Pase el nombre del script al comando ruby
:
bundle exec ruby script_name
Si también quieres el entorno Rails:
bundle exec rails runner script_name
Tengo un script de Ruby llamado foo.rb, y quiero ejecutarlo dentro del contexto del entorno de empaquetador. ¿Cómo?
bundle exec foo.rb
no funciona, porque exec espera un script de shell.
Por ejemplo, quería usar la misma versión de Rubocop que mi aplicación Rails y no la más reciente del sistema, así que haciendo esto en un script:
require ''bundler''
Bundler.require
# ...
Me permitió usar la versión de rubocop de mi aplicación.
Solo puedes hacer un script - agregar
#!/usr/bin/env ruby
al inicio del archivo, y hacerlo ejecutable. Entonces el bundle exec foo.rb
funcionará como se espera.
(Esto está en Unix o OSX - no estoy seguro acerca de Windows)
Consulte http://bundler.io/v1.15/man/bundle-exec.1.html#Loading
También vea https://coderwall.com/p/kfyzcw/execute-ruby-scripts-directly-without-bundler-exec para saber cómo ejecutar scripts ruby con dependencias agrupadas, sin necesidad de ejecutar el bundle exec