I am experiencing a strange problem with Ruby and Environment variables.
I am currently on a x64 machine running Windows Server 2008 R2
If I do the following in ruby:
puts ENV['PROCESSOR_ARCHITECTURE']
I expect to see AMD64, however, Ruby is displaying x86
If I do: echo %PROCESSOR_ARCHITECTURE%
, in the command prompt, I am greeted with AMD64
My Ruby version is: ruby 1.8.6 (2010-02-04 patchlevel 398) [i386-mingw32]
As far as I am aware, ENV['PROCESSOR_ARCHITECTURE']
should just read my environment variable...
Any ideas?
Cheers, Gareth
You store separate environment variables in config/development. rb , config/testing. rb and config/production. rb respectively.
How to Set Environment Variables. You can set an environment variable for a one time use. Use this in a terminal, outside of irb, then Ruby will have access to this API_KEY value. This is helpful for API keys, but also to set Rails mode.
.env file is meant for use in development and test environments.
It does read your environment variable, but since your ruby executable is compiled for 32-bit, it runs in a 32-bit environment where the value of PROCESSOR_ARCHITECTURE
is indeed "x86".
If you put system "echo %PROCESSOR_ARCHITECTURE%"
in your ruby script, you will see that it will also output "x86".
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With