Closed biz812 closed 5 months ago
confirmed this fix. will include in the upcoming release. thanks for submitting this.
interestingly, upon testing this, it works on Linux, but on Windows, the instance is able to provision, but the transport service never gets an ack back on the wait_until_ready so it just hangs indefinitely (until timeout). I will include the fix describe above, but will also add validation that warns the user that an environment proxy is set and behavior may be unpredictable.
it appears that because the final message from instance.transport.connection(state).wait_until_ready
is using the IP address from the state obviously enough, i had to include the IP address (first 3 octets was sufficient) to my no_proxy environment variable and that allowed it to complete.
Line 144 of oci.rb attempts to find the proxy settings using URI.parse like so:
This is fine unless there is a no_proxy environment variable set. The existence of this env var causes the following code in URI::generic to trigger:
Because URI.parse is called with just 'http://' the hostname.downcase element of this code fails with
NoMethodError (undefined method
downcase' for nil:NilClass)`This could be resolved by doing something like this instead:
Although I'm a sysadmin not a developer so I'm not sure if that is the right solution.