Issue #17033 has been updated by Charlie Sharpsteen. Status changed from In Topic Branch Pending Review to Code Insufficient
---------------------------------------- Bug #17033: Unpacker should force mv when extracting module to install dir https://projects.puppetlabs.com/issues/17033#change-92186 * Author: Dick Olsson * Status: Code Insufficient * Priority: Normal * Assignee: Ryan Coleman * Category: module tool * Target version: 3.x * Affected Puppet version: * Keywords: simplefix * Branch: https://github.com/puppetlabs/puppet/pull/1226 ---------------------------------------- When the Unpacker tries to extract a module containing a broken symlink to its install dir the `FileUtils::mv` command fails for some reason. I'm not sure why, because moving a directly with broken symlinks is normally ok. But doing a force move fixes the problem. It fails with the following error: Error executing puppet module install: puppet module install --debug --verbose --target-dir '/etc/puppet/manifests/.tmp/librarian/cache/source/puppet/forge/3792e516e3ff92a0ef9f5e827f8e76eb/puppetlabs/apache/version/9eac01120a372609e0afa3b236d9ed2d' --modulepath '/etc/puppet/manifests/.tmp/librarian/cache/source/puppet/forge/3792e516e3ff92a0ef9f5e827f8e76eb/puppetlabs/apache/version/9eac01120a372609e0afa3b236d9ed2d' --ignore-dependencies 'puppetlabs/apache' Error: No such file or directory - /etc/puppet/manifests/.tmp/librarian/cache/source/puppet/forge/3792e516e3ff92a0ef9f5e827f8e76eb/puppetlabs/apache/version/9eac01120a372609e0afa3b236d9ed2d/apache/spec/fixtures/modules/apache In my case, it happens to be `librarian-puppet` that's executing `puppet module install`, which fails. The broken symlink is coming from the apache module, which tries to self reference itself in the `fixtures` folder. This in itself might be a bug in the `puppetlabs-apache` module. But still, I think `Unpacker` should be able to handle cases like this. For reference, here's the broken symlink in the `puppetlabs-apache` module: me@laptop:/tmp/puppetlabs-apache-0.4.0/spec/fixtures/modules# ls -l lrwxrwxrwx 1 me me 50 Aug 24 23:31 apache -> /Users/hunner/Documents/work/git/puppetlabs-apache Note that the symlink is pointing to a broken place, probably on [hunner](https://github.com/hunner)'s computer. I guess the broken symlink is coming from here: https://github.com/puppetlabs/puppetlabs-apache/blob/master/.fixtures.yml#L6 My environment: * Ubuntu 12.04 * Ruby 1.8.7 (2011-06-30 patchlevel 352) [x86_64-linux] * Puppet: 3.0.0 -- 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 unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at http://groups.google.com/group/puppet-bugs?hl=en. For more options, visit https://groups.google.com/groups/opt_out.
