Bug #8658

Feature #8268: Basic Puppet agent support on Windows

The file source parameter does not accept Windows paths

Added by Josh Cooper almost 2 years ago. Updated over 1 year ago.

Status:ClosedStart date:07/27/2011
Priority:NormalDue date:
Assignee:Jacob Helwig% Done:

100%

Category:windowsEstimated time:16.00 hours
Target version:2.7.6
Affected Puppet version: Branch:
Keywords:

Description

When a Windows path is specified as a file source, the C:/ is interpreted as a URL where C is the protocol. It should be possible to specify Windows file paths and have them be interpretered as local file paths.

History

#1 Updated by Josh Cooper almost 2 years ago

Test failure when running rspec spec\unit\type\file\source_spec.rb

Puppet::Type::File::ParameterSource when returning the metadata should collect its metadata using the Metadata class if it is not already set 
Failure/Error: @source = source.new(:resource => @resource, :value => @foobar)
 Puppet::Error:
   Cannot use URLs of type 'Z' as source for fileserving at :0
 # ./lib/puppet/parameter.rb:165:in `fail'
 # ./lib/puppet/type/file/source.rb:75:in `unsafe_validate'
 # ./lib/puppet/type/file/source.rb:68:in `each'
 # ./lib/puppet/type/file/source.rb:68:in `unsafe_validate'
 # ./lib/puppet/parameter.rb:249:in `validate'
 # ./lib/puppet/parameter.rb:271:in `value='
 # ./lib/puppet/util/methodhelper.rb:14:in `send'
 # ./lib/puppet/util/methodhelper.rb:14:in `set_options'
 # ./lib/puppet/util/methodhelper.rb:11:in `each'
 # ./lib/puppet/util/methodhelper.rb:11:in `set_options'
 # ./lib/puppet/parameter.rb:178:in `initialize'
 # ./spec/unit/type/file/source_spec.rb:51:in `new'
 # ./spec/unit/type/file/source_spec.rb:51

#2 Updated by Jacob Helwig almost 2 years ago

  • Target version changed from 3.x to 2.7.x

#3 Updated by Jacob Helwig almost 2 years ago

  • Status changed from Accepted to Merged - Pending Release

This was fixed as part of a different patch series in commit:37f87b709598b48bc8b562422da27cc73cc1eff1

Treat Windows absolute paths as absolute paths

Previously, we only considered files that matched the *nix concept of
'absolute' as being absolute paths.  Since absolute paths on Windows
look more like URLs with this world-view, we need to specifically look
for the Windows absolute paths, and treat them as such.

We will still treat *nix absolute paths as absolute on Windows, even
though they are actually relative to the "current" drive.  We do not
currently limit which "style" of absolute path is allowed based on
what the agent is.

#4 Updated by Josh Cooper almost 2 years ago

  • Assignee set to Jacob Helwig
  • % Done changed from 0 to 100

#5 Updated by Josh Cooper over 1 year ago

  • Target version changed from 2.7.x to 2.7.5

Additional changes were made to the file source as part of the file provider refactor #8411 in merge commit ec587b449e56050afca9838b23df9f0d8ffc7a63 to 2.7.x. Specifically, commit:5fea1dc64829e9c8178937764faccd51131b2a77

#6 Updated by Jacob Helwig over 1 year ago

  • Target version changed from 2.7.5 to 2.7.6

2.7.5 was a security update release.

#7 Updated by Matthaus Owens over 1 year ago

  • Status changed from Merged - Pending Release to Closed

Released in 2.7.6.

Also available in: Atom PDF