MODULES-1119 Fixed to now have username and passwords passed in again
[puppet-modules/puppetlabs-apt.git] / lib / puppet / provider / apt_key / apt_key.rb
index 1d3c1744b586ccd5ee0d2fb0e3eed29007a986ad..075fb6fca5a3fa93d2141777eccc5990a8a434b6 100644 (file)
@@ -31,7 +31,7 @@ Puppet::Type.type(:apt_key).provide(:apt_key) do
     else
       key_output = apt_key('list')
     end
-    key_array = apt_key('list').split("\n").collect do |line|
+    key_array = key_output.split("\n").collect do |line|
       line_hash = key_line_hash(line)
       next unless line_hash
       expired = false
@@ -108,12 +108,13 @@ Puppet::Type.type(:apt_key).provide(:apt_key) do
   end
 
   def source_to_file(value)
-    if URI::parse(value).scheme.nil?
+    parsedValue = URI::parse(value)
+    if parsedValue.scheme.nil?
       fail("The file #{value} does not exist") unless File.exists?(value)
       value
     else
       begin
-        key = open(value, :ftp_active_mode => false).read
+        key = parsedValue.read
       rescue OpenURI::HTTPError, Net::FTPPermError => e
         fail("#{e.message} for #{resource[:source]}")
       rescue SocketError
@@ -158,6 +159,7 @@ Puppet::Type.type(:apt_key).provide(:apt_key) do
   end
 
   def destroy
+    #Currently del only removes the first key, we need to recursively list and ensure all with id are absent.
     apt_key('del', resource[:id])
     @property_hash.clear
   end