Issue #10637 has been reported by Eshe Pickett. ---------------------------------------- Bug #10637: Puppet orchestration on vagrant fails with Error: Non-HTTP proxy URI https://bugs.ruby-lang.org/issues/10637 * Author: Eshe Pickett * Status: Open * Priority: Normal * Assignee: * Category: * Target version: * ruby -v: ruby 2.1.5p273 (2014-11-13 revision 48405) [x86_64-linux-gnu] * Backport: 2.0.0: UNKNOWN, 2.1: UNKNOWN ---------------------------------------- I encountered this issue while bringing up a VM using vagrant with virtualbox. I am using puppet to do some provisioning ==> default: Notice: Downloading from https://forge.puppetlabs.com ... ==> default: Error: Non-HTTP proxy URI: https://[proxy]:[port]/ class is: URI::HTTPS ==> default: Error: Try 'puppet help module install' for usage ==> default: Notice: Preparing to install into /etc/puppet/modules ... ==> default: Notice: Downloading from https://forge.puppetlabs.com ... ==> default: Error: Non-HTTP proxy URI: https://[proxy]:[port]/ class is: URI::HTTPS ==> default: Error: Try 'puppet help module install' for usage I put in the print out to see what class in the above output Puppet is using https to download modules, and it hits the open_http function def OpenURI.open_http(buf, target, proxy, options) # :nodoc: if proxy proxy_uri, proxy_user, proxy_pass = proxy raise "Non-HTTP proxy URI: #{proxy_uri} class is: #{proxy_uri.class}" if proxy_uri.class != URI::HTTP end I am new to ruby, so am unsure if this is the expected behavior. I have a work around, I set https_proxy to use the http_proxy, however, this is not by any means a permanent solution. Alternatively, I could change the ruby code to allow both HTTP and HTTPS URIs, please advise. -- https://bugs.ruby-lang.org/