Is anyone aware of a way to detect if a file has been required from
another ruby process, or is being executed from the commandline? I've
been doing this hack:
do_executable_behavior unless ENV['DONT_RUN']
but that's clearly not ideal. I though maybe I could add something to
the bangline? But that wouldn't help if someone runs the script
indirectly with "ruby script.rb". Something like Module.included would
be great if there was a "required" method, I could just set a DONT_RUN
variable there.
Is anyone aware of a way to detect if a file has been required from
another ruby process, or is being executed from the commandline? I've
been doing this hack:
do_executable_behavior unless ENV['DONT_RUN']
but that's clearly not ideal. I though maybe I could add something to
the bangline? But that wouldn't help if someone runs the script
indirectly with "ruby script.rb". Something like Module.included would
be great if there was a "required" method, I could just set a DONT_RUN
variable there.
Thanks,
Ian
There was a good discussion recently about making sure only one instance of a script is running, maybe that helps:
On Jun 17, 2008, at 11:59 AM, I. E. Smith-Heisters wrote:
Is anyone aware of a way to detect if a file has been required from
another ruby process, or is being executed from the commandline? I've
been doing this hack:
--
we can deny everything, except that we have the possibility of being better. simply reflect on that.
h.h. the 14th dalai lama
On Jun 17, 2008, at 11:59 AM, I. E. Smith-Heisters wrote:
> Is anyone aware of a way to detect if a file has been required from
> another ruby process, or is being executed from the commandline? I've
> been doing this hack:
executed = __FILE__ == $0
required = not executed
a @http://codeforpeople.com/
--
we can deny everything, except that we have the possibility of being
better. simply reflect on that.
h.h. the 14th dalai lama