Description of problem: Fail to install dependency with jenkins for perl app Version-Release number of selected component (if applicable): puddle:[2.0.1/2013-12-16] How reproducible: always Steps to Reproduce: 1.create a perl app with jenkins #create app perlapp perl --enable-jenkins 2.add dependency to the app, and git push #echo "Plack" >> deplist.txt #git commit -amx && git push 3.login into the app,check the lib path #rhc app ssh perlapp #ls ./perl/perl5lib/lib/perl5/ Actual results: Output: ls: cannot access ./perl/perl5lib/lib/perl5/: No such file or directory Expected results: The direct should contain "Plack" Additional info:
We're missing https://github.com/openshift/origin-server/commit/a873404e93304f46a21f5a042d6d87b7044be61a was submitted upstream. That commit added the perl5lib directory to the managed_file.yml for the perl cartridge. That automatically symlinks those directories to the dependencies_dir. Without these symlinks jenkins builds will fail. I'm fairly certain a gear owner can workaround this. I'll have to come up with the steps.
This is a bit of a mess. Here are the steps that would have to be taken to manually fix a gear: # verify the only file in this dir is .gitkeep first rm -rf ~/perl/perl5lib mkdir -p ~/app-root/runtime/dependencies/perl/perl5lib ln -s ~/app-root/runtime/dependencies/perl/perl5lib ~/perl/perl5lib At this point the app web gear will be fixed. However any scaled or jenkins builders would not be fixed. At this point the administration would need to upgrade to: * Upgrade to the fixed cartridge * service restart ruby193-mcollective To make things worse, if an jenkins app builder already exists it will have to be deleted manually. They are created on-demand and destroy after a period of inactively. They can be removed manually by browsing to the jenkins web UI at https://$jenkins-$domain.$cloud_domain/computer/. Right click and then remove destroy the builder. The next builder will have the updated cartridge. It's unlikely that a scaled applications with Jenkins is affected by this simply because this bug would have prevented the application from functioning properly. If they do exist, manually scaling down to 1 gear and then up again will solve the problem since they will be running the new cartridge code.
check on puddle [2.0.z/2014-01-13.1] 1.create an app with jenkins #rhc app create perlapp perl --enable-jenkins 2.add "Plack" to deplist.txt and git push 3.ssh the app check the lib path #52d4f0d0ea28b97646000faa]\> ls perl/perl5lib/lib/perl5/ Output: Apache auto Class CPAN Devel ExtUtils File Filesys Hash HTTP inc JSON Module Net Parse Perl Plack Plack.pm Stream Test Try URI URI.pm x86_64-linux-thread-multi run the same steps for scalable app, the output contains "Plack". move the bug to verified.
Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. http://rhn.redhat.com/errata/RHBA-2014-0102.html