Issue #16059 has been updated by Tim Mooney.

Thanks Ryan, sorry I missed the previous bug report that this duplicates.

Although I don't really believe in reinventing every needed external feature 
via a module, in this case I agree that #15841 is the best approach for all 
concerned.  I look forward to seeing that in puppet some day.
----------------------------------------
Bug #16059: puppet module tool depends on GNU tar syntax (and semantics)
https://projects.puppetlabs.com/issues/16059#change-69611

Author: Tim Mooney
Status: Duplicate
Priority: Normal
Assignee: Ryan Coleman
Category: module tool
Target version: 2.7.x
Affected Puppet version: 2.7.14
Keywords: solaris portability
Branch: 


I'm using the puppet module tool that's part of puppet 2.7.14.

We're primarily using puppet on Linux, but we have a small amount of Solaris 
and I do some testing on Solaris (10, x86_64).

The extract_module_to_install_dir in unpacker.rb, part of the module tool, 
requires GNU tar syntax, specifically for -z (uncompress).  IIRC, there may 
also be slight differences in how GNU tar handles -C vs. how SUS platforms do, 
but that's from memory so it may not be correct.

I *do* have GNU tar installed on my Solaris systems, but there's no guarantee 
that it's going to be first in the PATH.

I tried altering the unpack to be

   unless system "gzip -dc #{@filename} | tar xf - -C #{build_dir}"

However that doesn't work because I was correct about -C having different 
semantics from that of GNU tar.  On Single Unix Specification (SUS) systems,
-C is apparently only valid on create & replace operations, not extract.

What did work is this

    unless system "cd #{build_dir} && gzip -dc #{@filename} | tar xf -"

I can certainly provide that as a patch, but is it even acceptable?  It's a 
little ugly.




-- 
You have received this notification because you have either subscribed to it, 
or are involved in it.
To change your notification preferences, please click here: 
http://projects.puppetlabs.com/my/account

-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Bugs" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/puppet-bugs?hl=en.

Reply via email to