Issue #2683 has been updated by Nigel Kersten.
Status changed from Unreviewed to Rejected
I think you're missing the assignment operator. I didn't realize it was
mandatory either.
<pre>
nigelk$ ./install.rb --destdir /tmp/foobar
install -c -m 0755 ./_tmp /usr/bin/facter
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/fileutils.rb:1262:in
`initialize': Permission denied - /usr/bin/facter (Errno::EACCES)
from
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/fileutils.rb:1262:in
`open'
from
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/fileutils.rb:1262:in
`copy_file'
from
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/fileutils.rb:1261:in
`open'
from
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/fileutils.rb:1261:in
`copy_file'
from
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/fileutils.rb:463:in
`copy_file'
from
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/fileutils.rb:844:in
`install'
from
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/fileutils.rb:1395:in
`fu_each_src_dest'
from
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/fileutils.rb:1411:in
`fu_each_src_dest0'
from
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/fileutils.rb:1393:in
`fu_each_src_dest'
from
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/fileutils.rb:840:in
`install'
from ./install.rb:414:in `install_binfile'
from ./install.rb:86:in `do_bins'
from ./install.rb:84:in `each'
from ./install.rb:84:in `do_bins'
from ./install.rb:437
</pre>
Whereas:
<pre>
nigelk$ ./install.rb --destdir=/tmp/foobar
install -c -m 0755 ./_tmp /tmp/foobar/usr/bin/facter
mkdir /tmp/foobar/Library/Ruby/Site/1.8/facter
lib/facter/architecture.rb ->
/tmp/foobar/Library/Ruby/Site/1.8/facter/architecture.rb
chmod 0644 /tmp/foobar/Library/Ruby/Site/1.8/facter/architecture.rb
lib/facter/Cfkey.rb -> /tmp/foobar/Library/Ruby/Site/1.8/facter/Cfkey.rb
chmod 0644 /tmp/foobar/Library/Ruby/Site/1.8/facter/Cfkey.rb
lib/facter/domain.rb -> /tmp/foobar/Library/Ruby/Site/1.8/facter/domain.rb
chmod 0644 /tmp/foobar/Library/Ruby/Site/1.8/facter/domain.rb
lib/facter/ec2.rb -> /tmp/foobar/Library/Ruby/Site/1.8/facter/ec2.rb
chmod 0644 /tmp/foobar/Library/Ruby/Site/1.8/facter/ec2.rb
lib/facter/facterversion.rb ->
/tmp/foobar/Library/Ruby/Site/1.8/facter/facterversion.rb
chmod 0644 /tmp/foobar/Library/Ruby/Site/1.8/facter/facterversion.rb
lib/facter/fqdn.rb -> /tmp/foobar/Library/Ruby/Site/1.8/facter/fqdn.rb
chmod 0644 /tmp/foobar/Library/Ruby/Site/1.8/facter/fqdn.rb
lib/facter/hardwareisa.rb ->
/tmp/foobar/Library/Ruby/Site/1.8/facter/hardwareisa.rb
chmod 0644 /tmp/foobar/Library/Ruby/Site/1.8/facter/hardwareisa.rb
lib/facter/hardwaremodel.rb ->
/tmp/foobar/Library/Ruby/Site/1.8/facter/hardwaremodel.rb
chmod 0644 /tmp/foobar/Library/Ruby/Site/1.8/facter/hardwaremodel.rb
lib/facter/hostname.rb -> /tmp/foobar/Library/Ruby/Site/1.8/facter/hostname.rb
chmod 0644 /tmp/foobar/Library/Ruby/Site/1.8/facter/hostname.rb
lib/facter/id.rb -> /tmp/foobar/Library/Ruby/Site/1.8/facter/id.rb
chmod 0644 /tmp/foobar/Library/Ruby/Site/1.8/facter/id.rb
lib/facter/interfaces.rb ->
/tmp/foobar/Library/Ruby/Site/1.8/facter/interfaces.rb
chmod 0644 /tmp/foobar/Library/Ruby/Site/1.8/facter/interfaces.rb
lib/facter/ipaddress.rb -> /tmp/foobar/Library/Ruby/Site/1.8/facter/ipaddress.rb
chmod 0644 /tmp/foobar/Library/Ruby/Site/1.8/facter/ipaddress.rb
lib/facter/iphostnumber.rb ->
/tmp/foobar/Library/Ruby/Site/1.8/facter/iphostnumber.rb
chmod 0644 /tmp/foobar/Library/Ruby/Site/1.8/facter/iphostnumber.rb
lib/facter/kernel.rb -> /tmp/foobar/Library/Ruby/Site/1.8/facter/kernel.rb
chmod 0644 /tmp/foobar/Library/Ruby/Site/1.8/facter/kernel.rb
lib/facter/kernelmajversion.rb ->
/tmp/foobar/Library/Ruby/Site/1.8/facter/kernelmajversion.rb
chmod 0644 /tmp/foobar/Library/Ruby/Site/1.8/facter/kernelmajversion.rb
lib/facter/kernelrelease.rb ->
/tmp/foobar/Library/Ruby/Site/1.8/facter/kernelrelease.rb
chmod 0644 /tmp/foobar/Library/Ruby/Site/1.8/facter/kernelrelease.rb
lib/facter/kernelversion.rb ->
/tmp/foobar/Library/Ruby/Site/1.8/facter/kernelversion.rb
chmod 0644 /tmp/foobar/Library/Ruby/Site/1.8/facter/kernelversion.rb
lib/facter/lsb.rb -> /tmp/foobar/Library/Ruby/Site/1.8/facter/lsb.rb
chmod 0644 /tmp/foobar/Library/Ruby/Site/1.8/facter/lsb.rb
lib/facter/lsbmajdistrelease.rb ->
/tmp/foobar/Library/Ruby/Site/1.8/facter/lsbmajdistrelease.rb
chmod 0644 /tmp/foobar/Library/Ruby/Site/1.8/facter/lsbmajdistrelease.rb
lib/facter/macaddress.rb ->
/tmp/foobar/Library/Ruby/Site/1.8/facter/macaddress.rb
chmod 0644 /tmp/foobar/Library/Ruby/Site/1.8/facter/macaddress.rb
lib/facter/macosx.rb -> /tmp/foobar/Library/Ruby/Site/1.8/facter/macosx.rb
chmod 0644 /tmp/foobar/Library/Ruby/Site/1.8/facter/macosx.rb
lib/facter/manufacturer.rb ->
/tmp/foobar/Library/Ruby/Site/1.8/facter/manufacturer.rb
chmod 0644 /tmp/foobar/Library/Ruby/Site/1.8/facter/manufacturer.rb
lib/facter/memory.rb -> /tmp/foobar/Library/Ruby/Site/1.8/facter/memory.rb
chmod 0644 /tmp/foobar/Library/Ruby/Site/1.8/facter/memory.rb
lib/facter/netmask.rb -> /tmp/foobar/Library/Ruby/Site/1.8/facter/netmask.rb
chmod 0644 /tmp/foobar/Library/Ruby/Site/1.8/facter/netmask.rb
lib/facter/network.rb -> /tmp/foobar/Library/Ruby/Site/1.8/facter/network.rb
chmod 0644 /tmp/foobar/Library/Ruby/Site/1.8/facter/network.rb
lib/facter/operatingsystem.rb ->
/tmp/foobar/Library/Ruby/Site/1.8/facter/operatingsystem.rb
chmod 0644 /tmp/foobar/Library/Ruby/Site/1.8/facter/operatingsystem.rb
lib/facter/operatingsystemrelease.rb ->
/tmp/foobar/Library/Ruby/Site/1.8/facter/operatingsystemrelease.rb
chmod 0644 /tmp/foobar/Library/Ruby/Site/1.8/facter/operatingsystemrelease.rb
lib/facter/path.rb -> /tmp/foobar/Library/Ruby/Site/1.8/facter/path.rb
chmod 0644 /tmp/foobar/Library/Ruby/Site/1.8/facter/path.rb
lib/facter/physicalprocessorcount.rb ->
/tmp/foobar/Library/Ruby/Site/1.8/facter/physicalprocessorcount.rb
chmod 0644 /tmp/foobar/Library/Ruby/Site/1.8/facter/physicalprocessorcount.rb
lib/facter/processor.rb -> /tmp/foobar/Library/Ruby/Site/1.8/facter/processor.rb
chmod 0644 /tmp/foobar/Library/Ruby/Site/1.8/facter/processor.rb
lib/facter/ps.rb -> /tmp/foobar/Library/Ruby/Site/1.8/facter/ps.rb
chmod 0644 /tmp/foobar/Library/Ruby/Site/1.8/facter/ps.rb
lib/facter/puppetversion.rb ->
/tmp/foobar/Library/Ruby/Site/1.8/facter/puppetversion.rb
chmod 0644 /tmp/foobar/Library/Ruby/Site/1.8/facter/puppetversion.rb
lib/facter/rubysitedir.rb ->
/tmp/foobar/Library/Ruby/Site/1.8/facter/rubysitedir.rb
chmod 0644 /tmp/foobar/Library/Ruby/Site/1.8/facter/rubysitedir.rb
lib/facter/rubyversion.rb ->
/tmp/foobar/Library/Ruby/Site/1.8/facter/rubyversion.rb
chmod 0644 /tmp/foobar/Library/Ruby/Site/1.8/facter/rubyversion.rb
lib/facter/selinux.rb -> /tmp/foobar/Library/Ruby/Site/1.8/facter/selinux.rb
chmod 0644 /tmp/foobar/Library/Ruby/Site/1.8/facter/selinux.rb
lib/facter/ssh.rb -> /tmp/foobar/Library/Ruby/Site/1.8/facter/ssh.rb
chmod 0644 /tmp/foobar/Library/Ruby/Site/1.8/facter/ssh.rb
lib/facter/timezone.rb -> /tmp/foobar/Library/Ruby/Site/1.8/facter/timezone.rb
chmod 0644 /tmp/foobar/Library/Ruby/Site/1.8/facter/timezone.rb
lib/facter/uniqueid.rb -> /tmp/foobar/Library/Ruby/Site/1.8/facter/uniqueid.rb
chmod 0644 /tmp/foobar/Library/Ruby/Site/1.8/facter/uniqueid.rb
lib/facter/uptime.rb -> /tmp/foobar/Library/Ruby/Site/1.8/facter/uptime.rb
chmod 0644 /tmp/foobar/Library/Ruby/Site/1.8/facter/uptime.rb
mkdir /tmp/foobar/Library/Ruby/Site/1.8/facter/util
lib/facter/util/collection.rb ->
/tmp/foobar/Library/Ruby/Site/1.8/facter/util/collection.rb
chmod 0644 /tmp/foobar/Library/Ruby/Site/1.8/facter/util/collection.rb
lib/facter/util/confine.rb ->
/tmp/foobar/Library/Ruby/Site/1.8/facter/util/confine.rb
chmod 0644 /tmp/foobar/Library/Ruby/Site/1.8/facter/util/confine.rb
lib/facter/util/fact.rb -> /tmp/foobar/Library/Ruby/Site/1.8/facter/util/fact.rb
chmod 0644 /tmp/foobar/Library/Ruby/Site/1.8/facter/util/fact.rb
lib/facter/util/ip.rb -> /tmp/foobar/Library/Ruby/Site/1.8/facter/util/ip.rb
chmod 0644 /tmp/foobar/Library/Ruby/Site/1.8/facter/util/ip.rb
lib/facter/util/loader.rb ->
/tmp/foobar/Library/Ruby/Site/1.8/facter/util/loader.rb
chmod 0644 /tmp/foobar/Library/Ruby/Site/1.8/facter/util/loader.rb
lib/facter/util/macosx.rb ->
/tmp/foobar/Library/Ruby/Site/1.8/facter/util/macosx.rb
chmod 0644 /tmp/foobar/Library/Ruby/Site/1.8/facter/util/macosx.rb
lib/facter/util/manufacturer.rb ->
/tmp/foobar/Library/Ruby/Site/1.8/facter/util/manufacturer.rb
chmod 0644 /tmp/foobar/Library/Ruby/Site/1.8/facter/util/manufacturer.rb
lib/facter/util/memory.rb ->
/tmp/foobar/Library/Ruby/Site/1.8/facter/util/memory.rb
chmod 0644 /tmp/foobar/Library/Ruby/Site/1.8/facter/util/memory.rb
lib/facter/util/netmask.rb ->
/tmp/foobar/Library/Ruby/Site/1.8/facter/util/netmask.rb
chmod 0644 /tmp/foobar/Library/Ruby/Site/1.8/facter/util/netmask.rb
mkdir /tmp/foobar/Library/Ruby/Site/1.8/facter/util/plist
lib/facter/util/plist/generator.rb ->
/tmp/foobar/Library/Ruby/Site/1.8/facter/util/plist/generator.rb
chmod 0644 /tmp/foobar/Library/Ruby/Site/1.8/facter/util/plist/generator.rb
lib/facter/util/plist/parser.rb ->
/tmp/foobar/Library/Ruby/Site/1.8/facter/util/plist/parser.rb
chmod 0644 /tmp/foobar/Library/Ruby/Site/1.8/facter/util/plist/parser.rb
lib/facter/util/plist.rb ->
/tmp/foobar/Library/Ruby/Site/1.8/facter/util/plist.rb
chmod 0644 /tmp/foobar/Library/Ruby/Site/1.8/facter/util/plist.rb
lib/facter/util/resolution.rb ->
/tmp/foobar/Library/Ruby/Site/1.8/facter/util/resolution.rb
chmod 0644 /tmp/foobar/Library/Ruby/Site/1.8/facter/util/resolution.rb
lib/facter/util/uptime.rb ->
/tmp/foobar/Library/Ruby/Site/1.8/facter/util/uptime.rb
chmod 0644 /tmp/foobar/Library/Ruby/Site/1.8/facter/util/uptime.rb
lib/facter/util/values.rb ->
/tmp/foobar/Library/Ruby/Site/1.8/facter/util/values.rb
chmod 0644 /tmp/foobar/Library/Ruby/Site/1.8/facter/util/values.rb
lib/facter/util/virtual.rb ->
/tmp/foobar/Library/Ruby/Site/1.8/facter/util/virtual.rb
chmod 0644 /tmp/foobar/Library/Ruby/Site/1.8/facter/util/virtual.rb
lib/facter/virtual.rb -> /tmp/foobar/Library/Ruby/Site/1.8/facter/virtual.rb
chmod 0644 /tmp/foobar/Library/Ruby/Site/1.8/facter/virtual.rb
lib/facter.rb -> /tmp/foobar/Library/Ruby/Site/1.8/facter.rb
chmod 0644 /tmp/foobar/Library/Ruby/Site/1.8/facter.rb
Loaded suite ./install
Started
Finished in 0.000163 seconds.
0 tests, 0 assertions, 0 failures, 0 errors
</pre>
----------------------------------------
Bug #2683: install.rb ignores the --destdir option
http://projects.reductivelabs.com/issues/2683
Author: Mikhail T.
Status: Rejected
Priority: Normal
Assigned to:
Category:
Target version: 1.5.7
Keywords: install
destdir
Branch:
I'm trying to install facter 1.5.7 into a non-default location under my own
home directory. As you can see below, it tries to install the executable into a
read-only location anyway, ignoring my --destdir specification.
> # env PREFIX=/home/mteterin /usr/local/bin/ruby install.rb --destdir
> /home/mteterin
> which: no rst2man.py in
> (/usr/lib/qt-3.3/bin:/usr/kerberos/bin:/usr/bin:/bin:/bin:/usr/bin:/sbin:/usr/sbin:/usr/local/bin:/usr/local/sbin:/usr/X11R6/bin)
> Changing site_dir to /usr/local/pub/ruby__1.8.6-p287/lib/ruby/site_ruby/1.8
> install -c -m 0755 ./_tmp /usr/local/pub/ruby__1.8.6-p287/bin/facter
> /usr/local/pub/ruby__1.8.6-p287/lib/ruby/1.8/fileutils.rb:1262:in
> `initialize': Read-only file system -
> /usr/local/pub/ruby__1.8.6-p287/bin/facter (Errno::EROFS)
> from /usr/local/pub/ruby__1.8.6-p287/lib/ruby/1.8/fileutils.rb:1262:in `open'
> from /usr/local/pub/ruby__1.8.6-p287/lib/ruby/1.8/fileutils.rb:1262:in
> `copy_file'
> from /usr/local/pub/ruby__1.8.6-p287/lib/ruby/1.8/fileutils.rb:1261:in `open'
> from /usr/local/pub/ruby__1.8.6-p287/lib/ruby/1.8/fileutils.rb:1261:in
> `copy_file'
> from /usr/local/pub/ruby__1.8.6-p287/lib/ruby/1.8/fileutils.rb:463:in
> `copy_file'
> from /usr/local/pub/ruby__1.8.6-p287/lib/ruby/1.8/fileutils.rb:844:in
> `install'
> from /usr/local/pub/ruby__1.8.6-p287/lib/ruby/1.8/fileutils.rb:1395:in
> `fu_each_src_dest'
> from /usr/local/pub/ruby__1.8.6-p287/lib/ruby/1.8/fileutils.rb:1411:in
> `fu_each_src_dest0'
> from /usr/local/pub/ruby__1.8.6-p287/lib/ruby/1.8/fileutils.rb:1393:in
> `fu_each_src_dest'
> from /usr/local/pub/ruby__1.8.6-p287/lib/ruby/1.8/fileutils.rb:840:in
> `install'
> from install.rb:418:in `install_binfile'
> from install.rb:87:in `do_bins'
> from install.rb:85:in `each'
> from install.rb:85:in `do_bins'
> from install.rb:441
The work-around is to use --bindir and --sitelibdir explicitly:
env PREFIX=/home/mteterin /usr/local/bin/ruby install.rb --destdir
/home/mteterin --bindir=/home/mteterin/bin
--sitelibdir=/home/mteterin/lib/site_ruby
but this method is being _deprecated_ -- according to comments inside the
install.rb script...
--
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://reductivelabs.com/redmine/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
-~----------~----~----~----~------~----~------~--~---