Description of problem: Unable to successfully sync an ISO repository. Version-Release number of selected component (if applicable): How reproducible: Always (for me) Steps to Reproduce: 1. import manifest 2. enable an ISO repo (e.g. Red Hat Enterprise Linux 6 Server ISOs x86_64 6Server) 3. sync the repo (e.g. Content -> Sync Status) Actual results: The sync fails indicating 'Sync Incomplete'. From dynflow, an error is shown during: Run: Step 6: Actions::Pulp::Repository::DistributorPublish Expected results: The sync to complete successfully. Additional info: This issue was observed while testing out the fix in katello PR: https://github.com/Katello/katello/pull/4554 The full dynflow at the failed step looks like: Started at: 2014-08-12 12:54:55 -0400 Ended at: 2014-08-12 12:54:55 -0400 Real time: 0.03s Execution time (excluding suspended state): 0.03s Input: --- pulp_id: Default_Organization-Red_Hat_Enterprise_Linux_Server-Red_Hat_Enterprise_Linux_6_Server_ISOs_x86_64_6Server dependency: - exception: task_type: pulp.server.tasks.repository.sync_with_auto_publish _href: /pulp/api/v2/tasks/c05a7856-ae8d-4746-9c13-d7cce78a7b2a/ task_id: c05a7856-ae8d-4746-9c13-d7cce78a7b2a tags: - pulp:repository:Default_Organization-Red_Hat_Enterprise_Linux_Server-Red_Hat_Enterprise_Linux_6_Server_ISOs_x86_64_6Server - pulp:action:sync finish_time: '2014-08-12T16:54:53Z' _ns: task_status start_time: '2014-08-12T16:54:52Z' traceback: spawned_tasks: - _href: /pulp/api/v2/tasks/db7d93a2-165b-4ea7-80ae-f872148513df/ task_id: db7d93a2-165b-4ea7-80ae-f872148513df progress_report: iso_importer: total_bytes: 11534336000 traceback: error_message: finished_bytes: 11534336000 num_isos: 3 state: complete iso_error_messages: [] num_isos_finished: 3 state_times: not_started: '2014-08-12T14:28:06' manifest_in_progress: '2014-08-12T14:28:06' complete: '2014-08-12T16:54:52' isos_in_progress: '2014-08-12T14:28:07' queue: reserved_resource_worker-3.dq state: finished result: importer_type_id: iso_importer importer_id: iso_importer exception: repo_id: Default_Organization-Red_Hat_Enterprise_Linux_Server-Red_Hat_Enterprise_Linux_6_Server_ISOs_x86_64_6Server removed_count: 0 started: '2014-08-12T10:28:06-04:00' _ns: repo_sync_results completed: '2014-08-12T12:54:52-04:00' traceback: summary: error_message: traceback: finished_bytes: 11534336000 num_isos: 3 state: complete iso_error_messages: [] state_times: not_started: '2014-08-12T14:28:06' manifest_in_progress: '2014-08-12T14:28:06' complete: '2014-08-12T16:54:52' isos_in_progress: '2014-08-12T14:28:07' num_isos_finished: 3 total_bytes: 11534336000 added_count: 3 error_message: updated_count: 0 details: id: 53ea46dccf07f519d214aeb3 result: success error: _id: $oid: 53ea2476c803e95c3c35e8ff id: 53ea2476cf07f51925118282 - exception: task_type: pulp.server.managers.repo.publish.publish _href: /pulp/api/v2/tasks/db7d93a2-165b-4ea7-80ae-f872148513df/ task_id: db7d93a2-165b-4ea7-80ae-f872148513df tags: - pulp:repository:Default_Organization-Red_Hat_Enterprise_Linux_Server-Red_Hat_Enterprise_Linux_6_Server_ISOs_x86_64_6Server - pulp:action:publish finish_time: '2014-08-12T16:54:53Z' _ns: task_status start_time: '2014-08-12T16:54:53Z' traceback: spawned_tasks: [] progress_report: adf18495-7058-44f5-b482-5a91b30c810f: state: complete error_message: traceback: state_times: not_started: '2014-08-12T16:54:53' in_progress: '2014-08-12T16:54:53' complete: '2014-08-12T16:54:53' queue: reserved_resource_worker-3.dq state: finished result: exception: repo_id: Default_Organization-Red_Hat_Enterprise_Linux_Server-Red_Hat_Enterprise_Linux_6_Server_ISOs_x86_64_6Server started: '2014-08-12T12:54:53-04:00' _ns: repo_publish_results completed: '2014-08-12T12:54:53-04:00' traceback: distributor_type_id: iso_distributor summary: state_times: not_started: '2014-08-12T16:54:53' in_progress: '2014-08-12T16:54:53' complete: '2014-08-12T16:54:53' state: complete error_message: traceback: error_message: details: distributor_id: adf18495-7058-44f5-b482-5a91b30c810f id: 53ea46ddcf07f519d214aeb6 result: success error: _id: $oid: 53ea46ddc803e95c3c35e938 id: 53ea46ddcf07f519d214aeb4 distributor_type_id: nodes_http_distributor remote_user: admin-4faca49f locale: en Output: --- {} Error: NoMethodError undefined method `[]' for nil:NilClass --- - /home/bbucking/github/katello/app/lib/actions/pulp/repository/distributor_publish.rb:35:in `distributor_id' - /home/bbucking/github/katello/app/lib/actions/pulp/repository/distributor_publish.rb:27:in `invoke_external_task' - /home/bbucking/.rvm/gems/ruby-1.9.3-p448@fortello/gems/dynflow-0.7.2/lib/dynflow/action/polling.rb:70:in `initiate_external_action' - /home/bbucking/.rvm/gems/ruby-1.9.3-p448@fortello/gems/dynflow-0.7.2/lib/dynflow/action/polling.rb:12:in `run' - /home/bbucking/.rvm/gems/ruby-1.9.3-p448@fortello/gems/dynflow-0.7.2/lib/dynflow/action/cancellable.rb:9:in `run' - /home/bbucking/github/katello/app/lib/actions/pulp/abstract_async_task.rb:57:in `run' - /home/bbucking/.rvm/gems/ruby-1.9.3-p448@fortello/gems/dynflow-0.7.2/lib/dynflow/action.rb:443:in `block (3 levels) in execute_run' - /home/bbucking/.rvm/gems/ruby-1.9.3-p448@fortello/gems/dynflow-0.7.2/lib/dynflow/middleware/stack.rb:26:in `call' - /home/bbucking/.rvm/gems/ruby-1.9.3-p448@fortello/gems/dynflow-0.7.2/lib/dynflow/middleware/stack.rb:26:in `pass' - /home/bbucking/.rvm/gems/ruby-1.9.3-p448@fortello/gems/dynflow-0.7.2/lib/dynflow/middleware.rb:16:in `pass' - /home/bbucking/github/katello/app/lib/actions/middleware/remote_action.rb:25:in `block in run' - /home/bbucking/github/katello/app/lib/actions/middleware/remote_action.rb:51:in `block (2 levels) in as_remote_user' - /home/bbucking/github/katello/app/lib/katello/util/thread_session.rb:85:in `set_pulp_config' - /home/bbucking/github/katello/app/lib/actions/middleware/remote_action.rb:41:in `as_pulp_user' - /home/bbucking/github/katello/app/lib/actions/middleware/remote_action.rb:50:in `block in as_remote_user' - /home/bbucking/github/katello/app/lib/katello/util/thread_session.rb:92:in `set_cp_config' - /home/bbucking/github/katello/app/lib/actions/middleware/remote_action.rb:36:in `as_cp_user' - /home/bbucking/github/katello/app/lib/actions/middleware/remote_action.rb:49:in `as_remote_user' - /home/bbucking/github/katello/app/lib/actions/middleware/remote_action.rb:25:in `run' - /home/bbucking/.rvm/gems/ruby-1.9.3-p448@fortello/gems/dynflow-0.7.2/lib/dynflow/middleware/stack.rb:22:in `call' - /home/bbucking/.rvm/gems/ruby-1.9.3-p448@fortello/gems/dynflow-0.7.2/lib/dynflow/middleware/stack.rb:26:in `pass' - /home/bbucking/.rvm/gems/ruby-1.9.3-p448@fortello/gems/dynflow-0.7.2/lib/dynflow/middleware.rb:16:in `pass' - /home/bbucking/.rvm/gems/ruby-1.9.3-p448@fortello/gems/dynflow-0.7.2/lib/dynflow/action/progress.rb:30:in `with_progress_calculation' - /home/bbucking/.rvm/gems/ruby-1.9.3-p448@fortello/gems/dynflow-0.7.2/lib/dynflow/action/progress.rb:16:in `run' - /home/bbucking/.rvm/gems/ruby-1.9.3-p448@fortello/gems/dynflow-0.7.2/lib/dynflow/middleware/stack.rb:22:in `call' - /home/bbucking/.rvm/gems/ruby-1.9.3-p448@fortello/gems/dynflow-0.7.2/lib/dynflow/middleware/stack.rb:26:in `pass' - /home/bbucking/.rvm/gems/ruby-1.9.3-p448@fortello/gems/dynflow-0.7.2/lib/dynflow/middleware.rb:16:in `pass' - /home/bbucking/github/katello/app/lib/actions/middleware/keep_locale.rb:24:in `block in run' - /home/bbucking/github/katello/app/lib/actions/middleware/keep_locale.rb:35:in `with_locale' - /home/bbucking/github/katello/app/lib/actions/middleware/keep_locale.rb:24:in `run' - /home/bbucking/.rvm/gems/ruby-1.9.3-p448@fortello/gems/dynflow-0.7.2/lib/dynflow/middleware/stack.rb:22:in `call' - /home/bbucking/.rvm/gems/ruby-1.9.3-p448@fortello/gems/dynflow-0.7.2/lib/dynflow/middleware/world.rb:30:in `execute' - /home/bbucking/.rvm/gems/ruby-1.9.3-p448@fortello/gems/dynflow-0.7.2/lib/dynflow/action.rb:442:in `block (2 levels) in execute_run' - /home/bbucking/.rvm/gems/ruby-1.9.3-p448@fortello/gems/dynflow-0.7.2/lib/dynflow/action.rb:441:in `catch' - /home/bbucking/.rvm/gems/ruby-1.9.3-p448@fortello/gems/dynflow-0.7.2/lib/dynflow/action.rb:441:in `block in execute_run' - /home/bbucking/.rvm/gems/ruby-1.9.3-p448@fortello/gems/dynflow-0.7.2/lib/dynflow/action.rb:365:in `call' - /home/bbucking/.rvm/gems/ruby-1.9.3-p448@fortello/gems/dynflow-0.7.2/lib/dynflow/action.rb:365:in `block in with_error_handling' - /home/bbucking/.rvm/gems/ruby-1.9.3-p448@fortello/gems/dynflow-0.7.2/lib/dynflow/action.rb:365:in `catch' - /home/bbucking/.rvm/gems/ruby-1.9.3-p448@fortello/gems/dynflow-0.7.2/lib/dynflow/action.rb:365:in `with_error_handling' - /home/bbucking/.rvm/gems/ruby-1.9.3-p448@fortello/gems/dynflow-0.7.2/lib/dynflow/action.rb:436:in `execute_run' - /home/bbucking/.rvm/gems/ruby-1.9.3-p448@fortello/gems/dynflow-0.7.2/lib/dynflow/action.rb:230:in `execute' - /home/bbucking/.rvm/gems/ruby-1.9.3-p448@fortello/gems/dynflow-0.7.2/lib/dynflow/execution_plan/steps/abstract_flow_step.rb:9:in `block (2 levels) in execute' - /home/bbucking/.rvm/gems/ruby-1.9.3-p448@fortello/gems/dynflow-0.7.2/lib/dynflow/execution_plan/steps/abstract.rb:152:in `call' - /home/bbucking/.rvm/gems/ruby-1.9.3-p448@fortello/gems/dynflow-0.7.2/lib/dynflow/execution_plan/steps/abstract.rb:152:in `with_meta_calculation' - /home/bbucking/.rvm/gems/ruby-1.9.3-p448@fortello/gems/dynflow-0.7.2/lib/dynflow/execution_plan/steps/abstract_flow_step.rb:8:in `block in execute' - /home/bbucking/.rvm/gems/ruby-1.9.3-p448@fortello/gems/dynflow-0.7.2/lib/dynflow/execution_plan/steps/abstract_flow_step.rb:22:in `open_action' - /home/bbucking/.rvm/gems/ruby-1.9.3-p448@fortello/gems/dynflow-0.7.2/lib/dynflow/execution_plan/steps/abstract_flow_step.rb:7:in `execute' - /home/bbucking/.rvm/gems/ruby-1.9.3-p448@fortello/gems/dynflow-0.7.2/lib/dynflow/executors/parallel/worker.rb:20:in `block in on_message' - /home/bbucking/.rvm/gems/ruby-1.9.3-p448@fortello/gems/algebrick-0.4.0/lib/algebrick.rb:859:in `block in assigns' - /home/bbucking/.rvm/gems/ruby-1.9.3-p448@fortello/gems/algebrick-0.4.0/lib/algebrick.rb:858:in `tap' - /home/bbucking/.rvm/gems/ruby-1.9.3-p448@fortello/gems/algebrick-0.4.0/lib/algebrick.rb:858:in `assigns' - /home/bbucking/.rvm/gems/ruby-1.9.3-p448@fortello/gems/algebrick-0.4.0/lib/algebrick.rb:138:in `match_value' - /home/bbucking/.rvm/gems/ruby-1.9.3-p448@fortello/gems/algebrick-0.4.0/lib/algebrick.rb:116:in `block in match' - /home/bbucking/.rvm/gems/ruby-1.9.3-p448@fortello/gems/algebrick-0.4.0/lib/algebrick.rb:115:in `each' - /home/bbucking/.rvm/gems/ruby-1.9.3-p448@fortello/gems/algebrick-0.4.0/lib/algebrick.rb:115:in `match' - /home/bbucking/.rvm/gems/ruby-1.9.3-p448@fortello/gems/dynflow-0.7.2/lib/dynflow/executors/parallel/worker.rb:17:in `on_message' - /home/bbucking/.rvm/gems/ruby-1.9.3-p448@fortello/gems/dynflow-0.7.2/lib/dynflow/micro_actor.rb:82:in `on_envelope' - /home/bbucking/.rvm/gems/ruby-1.9.3-p448@fortello/gems/dynflow-0.7.2/lib/dynflow/micro_actor.rb:72:in `receive' - /home/bbucking/.rvm/gems/ruby-1.9.3-p448@fortello/gems/dynflow-0.7.2/lib/dynflow/micro_actor.rb:99:in `block (2 levels) in run' - /home/bbucking/.rvm/gems/ruby-1.9.3-p448@fortello/gems/dynflow-0.7.2/lib/dynflow/micro_actor.rb:99:in `loop' - /home/bbucking/.rvm/gems/ruby-1.9.3-p448@fortello/gems/dynflow-0.7.2/lib/dynflow/micro_actor.rb:99:in `block in run' - /home/bbucking/.rvm/gems/ruby-1.9.3-p448@fortello/gems/dynflow-0.7.2/lib/dynflow/micro_actor.rb:99:in `catch' - /home/bbucking/.rvm/gems/ruby-1.9.3-p448@fortello/gems/dynflow-0.7.2/lib/dynflow/micro_actor.rb:99:in `run' - /home/bbucking/.rvm/gems/ruby-1.9.3-p448@fortello/gems/dynflow-0.7.2/lib/dynflow/micro_actor.rb:13:in `block in initialize' - /home/bbucking/.rvm/gems/ruby-1.9.3-p448@fortello/gems/logging-1.8.2/lib/logging/diagnostic_context.rb:323:in `call' - /home/bbucking/.rvm/gems/ruby-1.9.3-p448@fortello/gems/logging-1.8.2/lib/logging/diagnostic_context.rb:323:in `block in create_with_logging_context'
*** Bug 1129432 has been marked as a duplicate of this bug. ***
The error that is occuring during the sync is related to the fact that ISO repos (file type) are not associated with a 'node distributor', which is used to support distributing content to the capsule. Based on discussion in IRC with Justin and Mike, we don't really feel it makes sense to distribute ISOs to the capsules; therefore, in order to fix this bug, will skip the node metadata generation for ISO repos.
Created redmine issue http://projects.theforeman.org/issues/7110 from this bug
Proposed fix in Katello PR: https://github.com/Katello/katello/pull/4588
Verified. Successfully synced ISO repo. But noticed two other issues and created new BZs: https://bugzilla.redhat.com/show_bug.cgi?id=1132572 https://bugzilla.redhat.com/show_bug.cgi?id=1132576 Version Tested: GA Snap 6 - Satellite-6.0.4-RHEL-6-20140820.1 * apr-util-ldap-1.3.9-3.el6_0.1.x86_64 * candlepin-0.9.23-1.el6_5.noarch * candlepin-common-1.0.1-1.el6_5.noarch * candlepin-scl-1-5.el6_4.noarch * candlepin-scl-quartz-2.1.5-5.el6_4.noarch * candlepin-scl-rhino-1.7R3-1.el6_4.noarch * candlepin-scl-runtime-1-5.el6_4.noarch * candlepin-selinux-0.9.23-1.el6_5.noarch * candlepin-tomcat6-0.9.23-1.el6_5.noarch * elasticsearch-0.90.10-6.el6sat.noarch * foreman-1.6.0.41-1.el6sat.noarch * foreman-compute-1.6.0.41-1.el6sat.noarch * foreman-gce-1.6.0.41-1.el6sat.noarch * foreman-libvirt-1.6.0.41-1.el6sat.noarch * foreman-ovirt-1.6.0.41-1.el6sat.noarch * foreman-postgresql-1.6.0.41-1.el6sat.noarch * foreman-proxy-1.6.0.29-1.el6sat.noarch * foreman-selinux-1.6.0.7-1.el6sat.noarch * foreman-vmware-1.6.0.41-1.el6sat.noarch * katello-1.5.0-29.el6sat.noarch * katello-ca-1.0-1.noarch * katello-certs-tools-1.5.6-1.el6sat.noarch * katello-installer-0.0.60-1.el6sat.noarch * openldap-2.4.23-34.el6_5.1.x86_64 * openldap-devel-2.4.23-34.el6_5.1.x86_64 * pulp-katello-0.3-3.el6sat.noarch * pulp-nodes-common-2.4.0-0.30.beta.el6sat.noarch * pulp-nodes-parent-2.4.0-0.30.beta.el6sat.noarch * pulp-puppet-plugins-2.4.0-0.30.beta.el6sat.noarch * pulp-puppet-tools-2.4.0-0.30.beta.el6sat.noarch * pulp-rpm-plugins-2.4.0-0.30.beta.el6sat.noarch * pulp-selinux-2.4.0-0.30.beta.el6sat.noarch * pulp-server-2.4.0-0.30.beta.el6sat.noarch * python-ldap-2.3.10-1.el6.x86_64 * ruby193-rubygem-net-ldap-0.3.1-3.el6sat.noarch * ruby193-rubygem-runcible-1.1.0-2.el6sat.noarch
This was delivered with Satellite 6.0 which was released on 10 September 2014.