Merge "Add proxy support to glance_image resource"
This commit is contained in:
commit
82740483da
|
@ -24,6 +24,15 @@ Puppet::Type.type(:glance_image).provide(
|
||||||
def create
|
def create
|
||||||
temp_file = false
|
temp_file = false
|
||||||
if @resource[:source]
|
if @resource[:source]
|
||||||
|
if @resource[:proxy]
|
||||||
|
proxy_uri = URI(@resource[:proxy])
|
||||||
|
proxy_host = proxy_uri.host
|
||||||
|
proxy_port = proxy_uri.port
|
||||||
|
else
|
||||||
|
proxy_host = nil
|
||||||
|
proxy_port = nil
|
||||||
|
end
|
||||||
|
|
||||||
# copy_from cannot handle file://
|
# copy_from cannot handle file://
|
||||||
if @resource[:source] =~ /^\// # local file
|
if @resource[:source] =~ /^\// # local file
|
||||||
location = "--file=#{@resource[:source]}"
|
location = "--file=#{@resource[:source]}"
|
||||||
|
@ -31,7 +40,7 @@ Puppet::Type.type(:glance_image).provide(
|
||||||
temp_file = Tempfile.new('puppet-glance-image')
|
temp_file = Tempfile.new('puppet-glance-image')
|
||||||
|
|
||||||
uri = URI(@resource[:source])
|
uri = URI(@resource[:source])
|
||||||
Net::HTTP.start(uri.host, uri.port,
|
Net::HTTP.start(uri.host, uri.port, proxy_host, proxy_port,
|
||||||
:use_ssl => uri.scheme == 'https') do |http|
|
:use_ssl => uri.scheme == 'https') do |http|
|
||||||
request = Net::HTTP::Get.new uri
|
request = Net::HTTP::Get.new uri
|
||||||
http.request request do |response|
|
http.request request do |response|
|
||||||
|
|
|
@ -11,6 +11,7 @@ Puppet::Type.newtype(:glance_image) do
|
||||||
container_format => 'ovf',
|
container_format => 'ovf',
|
||||||
disk_format => 'qcow2',
|
disk_format => 'qcow2',
|
||||||
source => 'http://uec-images.ubuntu.com/releases/precise/release/ubuntu-12.04-server-cloudimg-amd64-disk1.img',
|
source => 'http://uec-images.ubuntu.com/releases/precise/release/ubuntu-12.04-server-cloudimg-amd64-disk1.img',
|
||||||
|
proxy => 'http://127.0.0.1:8080',
|
||||||
min_ram => 1234,
|
min_ram => 1234,
|
||||||
min_disk => 1234,
|
min_disk => 1234,
|
||||||
properties => { 'img_key' => img_value },
|
properties => { 'img_key' => img_value },
|
||||||
|
@ -73,6 +74,11 @@ Puppet::Type.newtype(:glance_image) do
|
||||||
newvalues(/\S+/)
|
newvalues(/\S+/)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
newparam(:proxy) do
|
||||||
|
desc "The proxy server to use if source should be downloaded"
|
||||||
|
newvalues(/\S+/)
|
||||||
|
end
|
||||||
|
|
||||||
newproperty(:min_ram) do
|
newproperty(:min_ram) do
|
||||||
desc "The minimal ram size"
|
desc "The minimal ram size"
|
||||||
newvalues(/\d+/)
|
newvalues(/\d+/)
|
||||||
|
|
|
@ -0,0 +1,6 @@
|
||||||
|
---
|
||||||
|
features:
|
||||||
|
- |
|
||||||
|
The glance_image resource now provides a proxy parameter which can be used
|
||||||
|
to specify a proxy to use when downloading a remote image using the source
|
||||||
|
parameter. The new proxy parameter is optional.
|
Loading…
Reference in New Issue