We're running puppet to manage our AWS instances and are migrating from a custom apt
module for it, to the puppetlabs hosted apt
module. Everything seems to work fine until during an puppet apply
session, the puppet process will hang on %100 for as long as we let it.
I believe I've narrowed it down to puppet hanging while waiting for some "response" in the apt module, but I can't figure it out any further. I see a few related bugs and issues (like here http://projects.puppetlabs.com/issues/12185#note-27), but I can't find a good answer. Any help would be appreciated.
We're running puppet 2.7.20 on ubuntu 10.10. Puppet apt module version is 1.1.0.
As requested, here are the last few debug lines before the hang:
debug: /Stage[main]/Kpython/Kpython::Pip_install[simplejson]/Exec[kpython_pip_install simplejson]: Autorequiring File[/mnt/tmp]
debug: /Stage[puppet1]/Kbase::Users/Kbase::Users::Account[tfall]/File[/home/tfall/.ssh]: Autorequiring Group[users]
debug: /Stage[puppet1]/Kbase::Users/Kbase::Users::Account[tfall]/File[/home/tfall/.ssh]: Autorequiring User[tfall]
debug: /Stage[puppet1]/Kbase::Filesystem/File[/usr/local/krux/kbase]: Autorequiring File[/usr/local/krux]
debug: /Stage[main]/Kvagrant/Kruby::Setup_gemset[kvagrant]/Kruby::Wrapper[kvagrant-irb]/Kutil::Symlink_bin[kvagrant-irb]/File[/usr/local/bin/kvagrant-irb]: Autorequiring File[/usr/local/bin]
debug: /Stage[main]/Kvagrant/Kruby::Setup_gemset[kvagrant]/Kruby::Wrapper[kvagrant-irb]/Kutil::Symlink_bin[kvagrant-irb]/File[/usr/local/bin/kvagrant-irb]: Autorequiring File[/usr/local/krux/components/kruby/bin/kvagrant-irb]
debug: /Stage[main]/Kpython/Kpython::Pip_install[boto]/Exec[kpython_pip_install boto]: Autorequiring File[/mnt/tmp]
debug: /Stage[script1]/Kbase::Users::Finalize/Kbase::Users::Init_user[dbrans]/File[/home/dbrans/.ssh/known_hosts]: Autorequiring User[dbrans]
debug: /Stage[puppet1]/Kbase::Users/Kbase::Users::Account[vsvaidya]/File[/home/vsvaidya]: Autorequiring Group[users]
debug: /Stage[main]/Kvagrant/File[/usr/local/krux/components/kvagrant]: Autorequiring File[/usr/local/krux/components]
debug: /Stage[main]/Kvagrant/File[/usr/local/krux/components/kvagrant]: Autorequiring Group[vagrant]
debug: /Stage[main]/Kvagrant/File[/usr/local/krux/components/kvagrant]: Autorequiring User[vagrant]
The next steps in this puppet run level should be apt module related.
This is the output of strace (with both ruby 1.8.7 and ruby 1.9.1):
rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
--debug
is added to the run?