[LRUG] Rake binstub
Gerhard Lazu
gerhard at lazu.co.uk
Wed Oct 8 11:12:12 PDT 2014
... and by "bundle exec" I mean bundler/binstubs/rvm/rbenv/chruby, the
whole lot.
On Wednesday, 8 October 2014, Gerhard Lazu <gerhard at lazu.co.uk> wrote:
> bundle exec usage should stop at your CI/CD.
>
> Production should always have a single version of the correct dependency
> (whether it's the Ruby binary, gem or C extension).
>
> Heroku Ruby app slugs and CloudFoundry Ruby app droplets are good examples
> of this principle in practice.
>
> Gerhard
>
> On Wednesday, 8 October 2014, Andrew Stewart <boss at airbladesoftware.com>
> wrote:
>
>> Hello!
>>
>> For a long time I have had on my server a cronjob which runs a rake task:
>>
>> 42 * * * * RAILS_ENV=production cd /path/to/my/app && bundle exec
>> rake blah
>>
>> Recently I decided to get with the program and use a binstub instead:
>>
>> 42 * * * * RAILS_ENV=production /path/to/my/app/bin/rake blah
>>
>> But it fails with: "rake aborted! No Rakefile found". Naturally there is
>> a Rakefile at /path/to/my/app.
>>
>> My rake binstub is the one that comes with Rails 4:
>>
>>
>> https://github.com/rails/rails/commit/009873aec89a4b843b41accf616b42b7a9917ba8#diff-15
>>
>> – not the one that Bundler would generate:
>>
>> #!/usr/bin/env ruby
>> #
>> # This file was generated by Bundler.
>> #
>> # The application 'rake' is installed as part of a gem, and
>> # this file is here to facilitate running it.
>> #
>>
>> require 'pathname'
>> ENV['BUNDLE_GEMFILE'] ||= File.expand_path("../../Gemfile",
>> Pathname.new(__FILE__).realpath)
>>
>> require 'rubygems'
>> require 'bundler/setup'
>>
>> load Gem.bin_path('rake', 'rake')
>>
>> After doing some research on this I learned it's controversial, a
>> surprise for Rails ;)
>>
>> Now that the dust has settled, what's the generally recommended
>> approach? Keep the Rails-generated binstub for rake, and cronjobs that cd
>> into the app directory, or go for a bundler-generated binstub (which
>> presumably works from anywhere)?
>>
>> Thanks in advance,
>>
>> Andy Stewart
>> _______________________________________________
>> Chat mailing list
>> Chat at lists.lrug.org
>> Archives: http://lists.lrug.org/pipermail/chat-lrug.org
>> Manage your subscription: http://lists.lrug.org/options.cgi/chat-lrug.org
>> List info: http://lists.lrug.org/listinfo.cgi/chat-lrug.org
>>
>
>
> --
>
> ------------------------------
> Twitter <http://twitter.com/#!/gerhardlazu> Github
> <https://github.com/gerhard> Blog <http://gerhard.lazu.co.uk/>
>
>
--
------------------------------
Twitter <http://twitter.com/#!/gerhardlazu> Github
<https://github.com/gerhard> Blog <http://gerhard.lazu.co.uk/>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.lrug.org/pipermail/chat-lrug.org/attachments/20141008/f8876b4e/attachment-0003.html>
More information about the Chat
mailing list