Description of problem: Hammer returns return code 0 for failed repository sync. e.g: # hammer -u admin -p changeme repository synchronize --name test_pro_repo --product test_pro --organization 'Default Organization' [....................................................................................................................................................................................................................................] [100%] Yum Metadata: Not Found PLP0000: Importer indicated a failed response #echo $? 0 Version-Release number of selected component (if applicable): rubygem-hammer_cli_foreman_bootdisk-0.1.2.7-1.el6_6sat.noarch rubygem-hammer_cli_katello-0.0.7.18-1.el6.noarch rubygem-hammer_cli_foreman_tasks-0.0.3.5-1.el6_6sat.noarch rubygem-hammer_cli_foreman_docker-0.0.3.10-1.el6.noarch rubygem-hammer_cli-0.1.4.13-1.el6.noarch rubygem-hammer_cli_foreman-0.1.4.14-1.el6_6sat.noarch rubygem-hammer_cli_gutterball-0.0.1.3-1.el6_6sat.noarch rubygem-hammer_cli_import-0.10.20-1.el6_6sat.noarch rubygem-hammer_cli_foreman_discovery-0.0.1.10-1.el6_6sat.noarch How reproducible: Always Steps to Reproduce: 1. Create a custom product. 2. Add repository of type yum with URL which is down/not accessible/with no yum metadata in above product. 3. Sync the repository from hammer. 4. See the return code of last executed hammer command. Actual results: The return code is 0. Expected results: The return code should be 1 as the repository sync is failed. Additional info:
Created redmine issue http://projects.theforeman.org/issues/12647 from this bug
This issue has been solved, and the change has been applied. https://github.com/theforeman/hammer-cli-foreman-tasks/pull/20
This change https://github.com/theforeman/hammer-cli-foreman-tasks/pull/20 doesn't seem to exist in build sat62-snap12.1/tfm-rubygem-foreman-tasks-0.7.14.4-1.el7sat.noarch ~]# grep SOFTWARE /opt/theforeman/tfm/root/usr/share/gems/gems/hammer_cli_foreman_tasks-0.0.10.1/lib/hammer_cli_foreman_tasks/async_command.rb TESTED with sat62-snap(GA)-12.1
[root@xyz ~]# hammer -u admin -p changeme repository synchronize --name rhel7_repo_tools --product rhel7_prd_tools --organization 'Default Organization' [......................................................................] [100%] Error: RPM1004: Error retrieving metadata: Not found [root@xyz ~]# echo $? 0 [root@xyz ~]# rpm -qav | grep -i cli_foreman tfm-rubygem-hammer_cli_foreman_remote_execution-0.0.5.3-1.el7sat.noarch tfm-rubygem-hammer_cli_foreman_tasks-0.0.10.3-1.el7sat.noarch TESTED with sat62-snap(GA)-15.2 We still see the same issue, we still get a return code '0' for failed sync.
Upstream bug assigned to ehelms
Upstream bug component is Tasks Plugin
Moving to POST since upstream bug http://projects.theforeman.org/issues/10647 has been closed
I have submitted an additional fix for this upstream: https://github.com/theforeman/hammer-cli-foreman-tasks/pull/30
The fix to this bug will be delivered with release 6.3 of Satellite.