Actions
Issue #8613
closed‘NoneType’ object has no attribute ‘replace’ when migrating Debian content
Start date:
Due date:
Estimated time:
Severity:
2. Medium
Platform Release:
OS:
Triaged:
No
Groomed:
No
Sprint Candidate:
No
Tags:
Katello
Sprint:
Quarter:
Description
A user ran into a Pulp 3 bug when migrating: https://community.theforeman.org/t/contentmigration-content-prepare-fails-with-katello-nonetype-object-has-no-attribute-replace/23149
Traceback from the Foreman task:
Actions::Pulp3::ContentMigration Input: {"services_checked"=>["pulp3"], "smart_proxy_id"=>1, "remote_user"=>"admin", "remote_cp_user"=>"admin", "current_request_id"=>nil, "current_timezone"=>"UTC", "current_user_id"=>3, "current_organization_id"=>nil, "current_location_id"=>nil} Output: {"pulp_tasks"=> [{"pulp_href"=>"/pulp/api/v3/tasks/16807402-7a96-4a8f-9765-698dd6d3a2b3/", "pulp_created"=>"2021-04-22T11:47:53.209+00:00", "state"=>"failed", "name"=>"pulp_2to3_migration.app.tasks.migrate.migrate_from_pulp2", "started_at"=>"2021-04-22T11:47:53.392+00:00", "finished_at"=>"2021-04-22T11:50:08.948+00:00", "error"=> {"traceback"=> " File \"/usr/lib/python3.6/site-packages/rq/worker.py\", line 936, in perform_job\n" + " rv = job.perform()\n" + " File \"/usr/lib/python3.6/site-packages/rq/job.py\", line 684, in perform\n" + " self._result = self._execute()\n" + " File \"/usr/lib/python3.6/site-packages/rq/job.py\", line 690, in _execute\n" + " return self.func(*self.args, **self.kwargs)\n" + " File \"/usr/lib/python3.6/site-packages/pulp_2to3_migration/app/tasks/migrate.py\", line 80, in migrate_from_pulp2\n" + " migrate_importers(plan)\n" + " File \"/usr/lib/python3.6/site-packages/pulp_2to3_migration/app/migration.py\", line 134, in migrate_importers\n" + " remote, created = importer_migrator.migrate_to_pulp3(pulp2importer)\n" + " File \"/usr/lib/python3.6/site-packages/pulp_2to3_migration/app/plugin/deb/repository.py\", line 38, in migrate_to_pulp3\n" + " base_config['components'] = pulp2_config.get('components').replace(',', ' ')\n", "description"=>"'NoneType' object has no attribute 'replace'"}, "worker"=>"/pulp/api/v3/workers/5dc08caa-b3b0-4442-bf4d-b68acfb2bcf0/", "child_tasks"=>[], "task_group"=> "/pulp/api/v3/task-groups/8ab8c053-128a-4061-ae51-40811a7a783f/", "progress_reports"=> [{"message"=>"Processing Pulp 2 repositories, importers, distributors", "code"=>"processing.repositories", "state"=>"completed", "total"=>13, "done"=>13}, {"message"=>"Pre-migrating Pulp 2 RPM content (general info)", "code"=>"premigrating.content.general", "state"=>"completed", "total"=>0, "done"=>0}, {"message"=>"Pre-migrating Pulp 2 RPM content (detail info)", "code"=>"premigrating.content.detail", "state"=>"completed", "total"=>0, "done"=>0}, {"message"=>"Pre-migrating Pulp 2 DEB content (general info)", "code"=>"premigrating.content.general", "state"=>"completed", "total"=>0, "done"=>0}, {"message"=>"Pre-migrating Pulp 2 DEB content (detail info)", "code"=>"premigrating.content.detail", "state"=>"completed", "total"=>0, "done"=>0}, {"message"=>"Pre-migrating Pulp 2 DEB_RELEASE content (general info)", "code"=>"premigrating.content.general", "state"=>"completed", "total"=>0, "done"=>0}, {"message"=>"Pre-migrating Pulp 2 DEB_RELEASE content (detail info)", "code"=>"premigrating.content.detail", "state"=>"completed", "total"=>0, "done"=>0}, {"message"=>"Pre-migrating Pulp 2 DEB_COMPONENT content (general info)", "code"=>"premigrating.content.general", "state"=>"completed", "total"=>0, "done"=>0}, {"message"=>"Pre-migrating Pulp 2 DEB_COMPONENT content (detail info)", "code"=>"premigrating.content.detail", "state"=>"completed", "total"=>0, "done"=>0}, {"message"=>"Pre-migrating Pulp 2 SRPM content (general info)", "code"=>"premigrating.content.general", "state"=>"completed", "total"=>0, "done"=>0}, {"message"=>"Pre-migrating Pulp 2 SRPM content (detail info)", "code"=>"premigrating.content.detail", "state"=>"completed", "total"=>0, "done"=>0}, {"message"=>"Pre-migrating Pulp 2 ERRATUM content (general info)", "code"=>"premigrating.content.general", "state"=>"completed", "total"=>1939, "done"=>1937}, {"message"=>"Pre-migrating Pulp 2 ERRATUM content (detail info)", "code"=>"premigrating.content.detail", "state"=>"completed", "total"=>1939, "done"=>1937}, {"message"=>"Pre-migrating Pulp 2 DISTRIBUTION content (general info)", "code"=>"premigrating.content.general", "state"=>"completed", "total"=>0, "done"=>0}, {"message"=>"Pre-migrating Pulp 2 DISTRIBUTION content (detail info)", "code"=>"premigrating.content.detail", "state"=>"completed", "total"=>0, "done"=>0}, {"message"=>"Pre-migrating Pulp 2 MODULEMD content (general info)", "code"=>"premigrating.content.general", "state"=>"completed", "total"=>0, "done"=>0}, {"message"=>"Pre-migrating Pulp 2 MODULEMD content (detail info)", "code"=>"premigrating.content.detail", "state"=>"completed", "total"=>0, "done"=>0}, {"message"=> "Pre-migrating Pulp 2 YUM_REPO_METADATA_FILE content (general info)", "code"=>"premigrating.content.general", "state"=>"completed", "total"=>5, "done"=>4}, {"message"=> "Pre-migrating Pulp 2 YUM_REPO_METADATA_FILE content (detail info)", "code"=>"premigrating.content.detail", "state"=>"completed", "total"=>5, "done"=>4}, {"message"=> "Pre-migrating Pulp 2 MODULEMD_DEFAULTS content (general info)", "code"=>"premigrating.content.general", "state"=>"completed", "total"=>0, "done"=>0}, {"message"=> "Pre-migrating Pulp 2 MODULEMD_DEFAULTS content (detail info)", "code"=>"premigrating.content.detail", "state"=>"completed", "total"=>0, "done"=>0}, {"message"=> "Pre-migrating Pulp 2 PACKAGE_LANGPACKS content (general info)", "code"=>"premigrating.content.general", "state"=>"completed", "total"=>0, "done"=>0}, {"message"=> "Pre-migrating Pulp 2 PACKAGE_LANGPACKS content (detail info)", "code"=>"premigrating.content.detail", "state"=>"completed", "total"=>0, "done"=>0}, {"message"=>"Pre-migrating Pulp 2 PACKAGE_GROUP content (general info)", "code"=>"premigrating.content.general", "state"=>"completed", "total"=>0, "done"=>0}, {"message"=>"Pre-migrating Pulp 2 PACKAGE_GROUP content (detail info)", "code"=>"premigrating.content.detail", "state"=>"completed", "total"=>0, "done"=>0}, {"message"=> "Pre-migrating Pulp 2 PACKAGE_CATEGORY content (general info)", "code"=>"premigrating.content.general", "state"=>"completed", "total"=>0, "done"=>0}, {"message"=> "Pre-migrating Pulp 2 PACKAGE_CATEGORY content (detail info)", "code"=>"premigrating.content.detail", "state"=>"completed", "total"=>0, "done"=>0}, {"message"=> "Pre-migrating Pulp 2 PACKAGE_ENVIRONMENT content (general info)", "code"=>"premigrating.content.general", "state"=>"completed", "total"=>0, "done"=>0}, {"message"=> "Pre-migrating Pulp 2 PACKAGE_ENVIRONMENT content (detail info)", "code"=>"premigrating.content.detail", "state"=>"completed", "total"=>0, "done"=>0}, {"message"=>"Creating repositories in Pulp 3", "code"=>"creating.repositories", "state"=>"completed", "total"=>1, "done"=>1}, {"message"=>"Migrating importers to Pulp 3", "code"=>"migrating.importers", "state"=>"failed", "total"=>5, "done"=>0}], "created_resources"=> ["/pulp/api/v3/task-groups/8ab8c053-128a-4061-ae51-40811a7a783f/"], "reserved_resources_record"=>["pulp_2to3_migration"]}], "task_groups"=> [{"pulp_href"=> "/pulp/api/v3/task-groups/8ab8c053-128a-4061-ae51-40811a7a783f/", "description"=>"Migration Sub-tasks", "all_tasks_dispatched"=>false, "waiting"=>0, "skipped"=>0, "running"=>0, "completed"=>0, "canceled"=>0, "failed"=>1, "group_progress_reports"=> [{"message"=>"Repo version creation", "code"=>"create.repo_version", "total"=>0, "done"=>0}, {"message"=>"Distribution creation", "code"=>"create.distribution", "total"=>0, "done"=>0}]}], "poll_attempts"=>{"total"=>29, "failed"=>1}} Exception: Katello::Errors::Pulp3Error: 'NoneType' object has no attribute 'replace' Backtrace: /opt/theforeman/tfm/root/usr/share/gems/gems/katello-3.18.2.1/app/lib/actions/pulp3/abstract_async_task.rb:102:in `block in check_for_errors' /opt/theforeman/tfm/root/usr/share/gems/gems/katello-3.18.2.1/app/lib/actions/pulp3/abstract_async_task.rb:100:in `each' /opt/theforeman/tfm/root/usr/share/gems/gems/katello-3.18.2.1/app/lib/actions/pulp3/abstract_async_task.rb:100:in `check_for_errors' /opt/theforeman/tfm/root/usr/share/gems/gems/katello-3.18.2.1/app/lib/actions/pulp3/abstract_async_task.rb:133:in `poll_external_task' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/action/polling.rb:100:in `poll_external_task_with_rescue' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/action/polling.rb:22:in `run' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/action/cancellable.rb:14:in `run' /opt/theforeman/tfm/root/usr/share/gems/gems/katello-3.18.2.1/app/lib/actions/pulp3/abstract_async_task.rb:10:in `run' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/action.rb:571:in `block (3 levels) in execute_run' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/middleware/stack.rb:27:in `pass' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/middleware.rb:19:in `pass' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/middleware.rb:32:in `run' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/middleware/stack.rb:23:in `call' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/middleware/stack.rb:27:in `pass' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/middleware.rb:19:in `pass' /opt/theforeman/tfm/root/usr/share/gems/gems/katello-3.18.2.1/app/lib/actions/middleware/remote_action.rb:16:in `block in run' /opt/theforeman/tfm/root/usr/share/gems/gems/katello-3.18.2.1/app/lib/actions/middleware/remote_action.rb:40:in `block in as_remote_user' /opt/theforeman/tfm/root/usr/share/gems/gems/katello-3.18.2.1/app/models/katello/concerns/user_extensions.rb:21:in `cp_config' /opt/theforeman/tfm/root/usr/share/gems/gems/katello-3.18.2.1/app/lib/actions/middleware/remote_action.rb:27:in `as_cp_user' /opt/theforeman/tfm/root/usr/share/gems/gems/katello-3.18.2.1/app/lib/actions/middleware/remote_action.rb:39:in `as_remote_user' /opt/theforeman/tfm/root/usr/share/gems/gems/katello-3.18.2.1/app/lib/actions/middleware/remote_action.rb:16:in `run' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/middleware/stack.rb:23:in `call' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/middleware/stack.rb:27:in `pass' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/middleware.rb:19:in `pass' /opt/theforeman/tfm/root/usr/share/gems/gems/foreman-tasks-3.0.5/app/lib/actions/middleware/rails_executor_wrap.rb:14:in `block in run' /opt/theforeman/tfm/root/usr/share/gems/gems/activesupport-6.0.3.4/lib/active_support/execution_wrapper.rb:88:in `wrap' /opt/theforeman/tfm/root/usr/share/gems/gems/foreman-tasks-3.0.5/app/lib/actions/middleware/rails_executor_wrap.rb:13:in `run' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/middleware/stack.rb:23:in `call' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/middleware/stack.rb:27:in `pass' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/middleware.rb:19:in `pass' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/action/progress.rb:31:in `with_progress_calculation' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/action/progress.rb:17:in `run' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/middleware/stack.rb:23:in `call' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/middleware/stack.rb:27:in `pass' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/middleware.rb:19:in `pass' /opt/theforeman/tfm/root/usr/share/gems/gems/foreman-tasks-3.0.5/app/lib/actions/middleware/keep_current_request_id.rb:15:in `block in run' /opt/theforeman/tfm/root/usr/share/gems/gems/foreman-tasks-3.0.5/app/lib/actions/middleware/keep_current_request_id.rb:49:in `restore_current_request_id' /opt/theforeman/tfm/root/usr/share/gems/gems/foreman-tasks-3.0.5/app/lib/actions/middleware/keep_current_request_id.rb:15:in `run' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/middleware/stack.rb:23:in `call' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/middleware/stack.rb:27:in `pass' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/middleware.rb:19:in `pass' /opt/theforeman/tfm/root/usr/share/gems/gems/foreman-tasks-3.0.5/app/lib/actions/middleware/keep_current_timezone.rb:15:in `block in run' /opt/theforeman/tfm/root/usr/share/gems/gems/foreman-tasks-3.0.5/app/lib/actions/middleware/keep_current_timezone.rb:44:in `restore_curent_timezone' /opt/theforeman/tfm/root/usr/share/gems/gems/foreman-tasks-3.0.5/app/lib/actions/middleware/keep_current_timezone.rb:15:in `run' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/middleware/stack.rb:23:in `call' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/middleware/stack.rb:27:in `pass' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/middleware.rb:19:in `pass' /opt/theforeman/tfm/root/usr/share/gems/gems/foreman-tasks-3.0.5/app/lib/actions/middleware/keep_current_user.rb:15:in `block in run' /opt/theforeman/tfm/root/usr/share/gems/gems/foreman-tasks-3.0.5/app/lib/actions/middleware/keep_current_user.rb:44:in `restore_curent_user' /opt/theforeman/tfm/root/usr/share/gems/gems/foreman-tasks-3.0.5/app/lib/actions/middleware/keep_current_user.rb:15:in `run' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/middleware/stack.rb:23:in `call' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/middleware/stack.rb:27:in `pass' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/middleware.rb:19:in `pass' /opt/theforeman/tfm/root/usr/share/gems/gems/foreman-tasks-3.0.5/app/lib/actions/middleware/keep_current_taxonomies.rb:15:in `block in run' /opt/theforeman/tfm/root/usr/share/gems/gems/foreman-tasks-3.0.5/app/lib/actions/middleware/keep_current_taxonomies.rb:45:in `restore_current_taxonomies' /opt/theforeman/tfm/root/usr/share/gems/gems/foreman-tasks-3.0.5/app/lib/actions/middleware/keep_current_taxonomies.rb:15:in `run' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/middleware/stack.rb:23:in `call' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/middleware/stack.rb:27:in `pass' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/middleware.rb:19:in `pass' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/middleware.rb:32:in `run' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/middleware/stack.rb:23:in `call' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/middleware/world.rb:31:in `execute' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/action.rb:570:in `block (2 levels) in execute_run' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/action.rb:569:in `catch' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/action.rb:569:in `block in execute_run' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/action.rb:472:in `block in with_error_handling' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/action.rb:472:in `catch' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/action.rb:472:in `with_error_handling' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/action.rb:564:in `execute_run' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/action.rb:285:in `execute' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/execution_plan/steps/abstract_flow_step.rb:18:in `block (2 levels) in execute' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/execution_plan/steps/abstract.rb:167:in `with_meta_calculation' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/execution_plan/steps/abstract_flow_step.rb:17:in `block in execute' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/execution_plan/steps/abstract_flow_step.rb:32:in `open_action' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/execution_plan/steps/abstract_flow_step.rb:16:in `execute' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/director.rb:93:in `execute' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/executors/sidekiq/worker_jobs.rb:11:in `block (2 levels) in perform' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/executors.rb:18:in `run_user_code' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/executors/sidekiq/worker_jobs.rb:9:in `block in perform' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/executors/sidekiq/worker_jobs.rb:25:in `with_telemetry' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/executors/sidekiq/worker_jobs.rb:8:in `perform' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/executors/sidekiq/serialization.rb:27:in `perform' /opt/theforeman/tfm/root/usr/share/gems/gems/sidekiq-5.2.7/lib/sidekiq/processor.rb:192:in `execute_job' /opt/theforeman/tfm/root/usr/share/gems/gems/sidekiq-5.2.7/lib/sidekiq/processor.rb:165:in `block (2 levels) in process' /opt/theforeman/tfm/root/usr/share/gems/gems/sidekiq-5.2.7/lib/sidekiq/middleware/chain.rb:128:in `block in invoke' /opt/theforeman/tfm/root/usr/share/gems/gems/sidekiq-5.2.7/lib/sidekiq/middleware/chain.rb:133:in `invoke' /opt/theforeman/tfm/root/usr/share/gems/gems/sidekiq-5.2.7/lib/sidekiq/processor.rb:164:in `block in process' /opt/theforeman/tfm/root/usr/share/gems/gems/sidekiq-5.2.7/lib/sidekiq/processor.rb:137:in `block (6 levels) in dispatch' /opt/theforeman/tfm/root/usr/share/gems/gems/sidekiq-5.2.7/lib/sidekiq/job_retry.rb:109:in `local' /opt/theforeman/tfm/root/usr/share/gems/gems/sidekiq-5.2.7/lib/sidekiq/processor.rb:136:in `block (5 levels) in dispatch' /opt/theforeman/tfm/root/usr/share/gems/gems/sidekiq-5.2.7/lib/sidekiq.rb:37:in `block in ' /opt/theforeman/tfm/root/usr/share/gems/gems/sidekiq-5.2.7/lib/sidekiq/processor.rb:132:in `block (4 levels) in dispatch' /opt/theforeman/tfm/root/usr/share/gems/gems/sidekiq-5.2.7/lib/sidekiq/processor.rb:250:in `stats' /opt/theforeman/tfm/root/usr/share/gems/gems/sidekiq-5.2.7/lib/sidekiq/processor.rb:127:in `block (3 levels) in dispatch' /opt/theforeman/tfm/root/usr/share/gems/gems/sidekiq-5.2.7/lib/sidekiq/job_logger.rb:8:in `call' /opt/theforeman/tfm/root/usr/share/gems/gems/sidekiq-5.2.7/lib/sidekiq/processor.rb:126:in `block (2 levels) in dispatch' /opt/theforeman/tfm/root/usr/share/gems/gems/sidekiq-5.2.7/lib/sidekiq/job_retry.rb:74:in `global' /opt/theforeman/tfm/root/usr/share/gems/gems/sidekiq-5.2.7/lib/sidekiq/processor.rb:125:in `block in dispatch' /opt/theforeman/tfm/root/usr/share/gems/gems/sidekiq-5.2.7/lib/sidekiq/logging.rb:48:in `with_context' /opt/theforeman/tfm/root/usr/share/gems/gems/sidekiq-5.2.7/lib/sidekiq/logging.rb:42:in `with_job_hash_context' /opt/theforeman/tfm/root/usr/share/gems/gems/sidekiq-5.2.7/lib/sidekiq/processor.rb:124:in `dispatch' /opt/theforeman/tfm/root/usr/share/gems/gems/sidekiq-5.2.7/lib/sidekiq/processor.rb:163:in `process' /opt/theforeman/tfm/root/usr/share/gems/gems/sidekiq-5.2.7/lib/sidekiq/processor.rb:83:in `process_one' /opt/theforeman/tfm/root/usr/share/gems/gems/sidekiq-5.2.7/lib/sidekiq/processor.rb:71:in `run' /opt/theforeman/tfm/root/usr/share/gems/gems/sidekiq-5.2.7/lib/sidekiq/util.rb:16:in `watchdog' /opt/theforeman/tfm/root/usr/share/gems/gems/sidekiq-5.2.7/lib/sidekiq/util.rb:25:in `block in safe_thread' /opt/theforeman/tfm/root/usr/share/gems/gems/logging-2.3.0/lib/logging/diagnostic_context.rb:474:in `block in create_with_logging_context' Action: Actions::Pulp3::ImportMigration Input: {"reimport_all"=>false, "dependency"=>Step(2).output, "remote_user"=>"admin", "remote_cp_user"=>"admin", "current_request_id"=>nil, "current_timezone"=>"UTC", "current_user_id"=>3, "current_organActions::Pulp3::ContentMigration Input: {"services_checked"=>["pulp3"], "smart_proxy_id"=>1, "remote_user"=>"admin", "remote_cp_user"=>"admin", "current_request_id"=>nil, "current_timezone"=>"UTC", "current_user_id"=>3, "current_organization_id"=>nil, "current_location_id"=>nil} Output: {"pulp_tasks"=> [{"pulp_href"=>"/pulp/api/v3/tasks/16807402-7a96-4a8f-9765-698dd6d3a2b3/", "pulp_created"=>"2021-04-22T11:47:53.209+00:00", "state"=>"failed", "name"=>"pulp_2to3_migration.app.tasks.migrate.migrate_from_pulp2", "started_at"=>"2021-04-22T11:47:53.392+00:00", "finished_at"=>"2021-04-22T11:50:08.948+00:00", "error"=> {"traceback"=> " File \"/usr/lib/python3.6/site-packages/rq/worker.py\", line 936, in perform_job\n" + " rv = job.perform()\n" + " File \"/usr/lib/python3.6/site-packages/rq/job.py\", line 684, in perform\n" + " self._result = self._execute()\n" + " File \"/usr/lib/python3.6/site-packages/rq/job.py\", line 690, in _execute\n" + " return self.func(*self.args, **self.kwargs)\n" + " File \"/usr/lib/python3.6/site-packages/pulp_2to3_migration/app/tasks/migrate.py\", line 80, in migrate_from_pulp2\n" + " migrate_importers(plan)\n" + " File \"/usr/lib/python3.6/site-packages/pulp_2to3_migration/app/migration.py\", line 134, in migrate_importers\n" + " remote, created = importer_migrator.migrate_to_pulp3(pulp2importer)\n" + " File \"/usr/lib/python3.6/site-packages/pulp_2to3_migration/app/plugin/deb/repository.py\", line 38, in migrate_to_pulp3\n" + " base_config['components'] = pulp2_config.get('components').replace(',', ' ')\n", "description"=>"'NoneType' object has no attribute 'replace'"}, "worker"=>"/pulp/api/v3/workers/5dc08caa-b3b0-4442-bf4d-b68acfb2bcf0/", "child_tasks"=>[], "task_group"=> "/pulp/api/v3/task-groups/8ab8c053-128a-4061-ae51-40811a7a783f/", "progress_reports"=> [{"message"=>"Processing Pulp 2 repositories, importers, distributors", "code"=>"processing.repositories", "state"=>"completed", "total"=>13, "done"=>13}, {"message"=>"Pre-migrating Pulp 2 RPM content (general info)", "code"=>"premigrating.content.general", "state"=>"completed", "total"=>0, "done"=>0}, {"message"=>"Pre-migrating Pulp 2 RPM content (detail info)", "code"=>"premigrating.content.detail", "state"=>"completed", "total"=>0, "done"=>0}, {"message"=>"Pre-migrating Pulp 2 DEB content (general info)", "code"=>"premigrating.content.general", "state"=>"completed", "total"=>0, "done"=>0}, {"message"=>"Pre-migrating Pulp 2 DEB content (detail info)", "code"=>"premigrating.content.detail", "state"=>"completed", "total"=>0, "done"=>0}, {"message"=>"Pre-migrating Pulp 2 DEB_RELEASE content (general info)", "code"=>"premigrating.content.general", "state"=>"completed", "total"=>0, "done"=>0}, {"message"=>"Pre-migrating Pulp 2 DEB_RELEASE content (detail info)", "code"=>"premigrating.content.detail", "state"=>"completed", "total"=>0, "done"=>0}, {"message"=>"Pre-migrating Pulp 2 DEB_COMPONENT content (general info)", "code"=>"premigrating.content.general", "state"=>"completed", "total"=>0, "done"=>0}, {"message"=>"Pre-migrating Pulp 2 DEB_COMPONENT content (detail info)", "code"=>"premigrating.content.detail", "state"=>"completed", "total"=>0, "done"=>0}, {"message"=>"Pre-migrating Pulp 2 SRPM content (general info)", "code"=>"premigrating.content.general", "state"=>"completed", "total"=>0, "done"=>0}, {"message"=>"Pre-migrating Pulp 2 SRPM content (detail info)", "code"=>"premigrating.content.detail", "state"=>"completed", "total"=>0, "done"=>0}, {"message"=>"Pre-migrating Pulp 2 ERRATUM content (general info)", "code"=>"premigrating.content.general", "state"=>"completed", "total"=>1939, "done"=>1937}, {"message"=>"Pre-migrating Pulp 2 ERRATUM content (detail info)", "code"=>"premigrating.content.detail", "state"=>"completed", "total"=>1939, "done"=>1937}, {"message"=>"Pre-migrating Pulp 2 DISTRIBUTION content (general info)", "code"=>"premigrating.content.general", "state"=>"completed", "total"=>0, "done"=>0}, {"message"=>"Pre-migrating Pulp 2 DISTRIBUTION content (detail info)", "code"=>"premigrating.content.detail", "state"=>"completed", "total"=>0, "done"=>0}, {"message"=>"Pre-migrating Pulp 2 MODULEMD content (general info)", "code"=>"premigrating.content.general", "state"=>"completed", "total"=>0, "done"=>0}, {"message"=>"Pre-migrating Pulp 2 MODULEMD content (detail info)", "code"=>"premigrating.content.detail", "state"=>"completed", "total"=>0, "done"=>0}, {"message"=> "Pre-migrating Pulp 2 YUM_REPO_METADATA_FILE content (general info)", "code"=>"premigrating.content.general", "state"=>"completed", "total"=>5, "done"=>4}, {"message"=> "Pre-migrating Pulp 2 YUM_REPO_METADATA_FILE content (detail info)", "code"=>"premigrating.content.detail", "state"=>"completed", "total"=>5, "done"=>4}, {"message"=> "Pre-migrating Pulp 2 MODULEMD_DEFAULTS content (general info)", "code"=>"premigrating.content.general", "state"=>"completed", "total"=>0, "done"=>0}, {"message"=> "Pre-migrating Pulp 2 MODULEMD_DEFAULTS content (detail info)", "code"=>"premigrating.content.detail", "state"=>"completed", "total"=>0, "done"=>0}, {"message"=> "Pre-migrating Pulp 2 PACKAGE_LANGPACKS content (general info)", "code"=>"premigrating.content.general", "state"=>"completed", "total"=>0, "done"=>0}, {"message"=> "Pre-migrating Pulp 2 PACKAGE_LANGPACKS content (detail info)", "code"=>"premigrating.content.detail", "state"=>"completed", "total"=>0, "done"=>0}, {"message"=>"Pre-migrating Pulp 2 PACKAGE_GROUP content (general info)", "code"=>"premigrating.content.general", "state"=>"completed", "total"=>0, "done"=>0}, {"message"=>"Pre-migrating Pulp 2 PACKAGE_GROUP content (detail info)", "code"=>"premigrating.content.detail", "state"=>"completed", "total"=>0, "done"=>0}, {"message"=> "Pre-migrating Pulp 2 PACKAGE_CATEGORY content (general info)", "code"=>"premigrating.content.general", "state"=>"completed", "total"=>0, "done"=>0}, {"message"=> "Pre-migrating Pulp 2 PACKAGE_CATEGORY content (detail info)", "code"=>"premigrating.content.detail", "state"=>"completed", "total"=>0, "done"=>0}, {"message"=> "Pre-migrating Pulp 2 PACKAGE_ENVIRONMENT content (general info)", "code"=>"premigrating.content.general", "state"=>"completed", "total"=>0, "done"=>0}, {"message"=> "Pre-migrating Pulp 2 PACKAGE_ENVIRONMENT content (detail info)", "code"=>"premigrating.content.detail", "state"=>"completed", "total"=>0, "done"=>0}, {"message"=>"Creating repositories in Pulp 3", "code"=>"creating.repositories", "state"=>"completed", "total"=>1, "done"=>1}, {"message"=>"Migrating importers to Pulp 3", "code"=>"migrating.importers", "state"=>"failed", "total"=>5, "done"=>0}], "created_resources"=> ["/pulp/api/v3/task-groups/8ab8c053-128a-4061-ae51-40811a7a783f/"], "reserved_resources_record"=>["pulp_2to3_migration"]}], "task_groups"=> [{"pulp_href"=> "/pulp/api/v3/task-groups/8ab8c053-128a-4061-ae51-40811a7a783f/", "description"=>"Migration Sub-tasks", "all_tasks_dispatched"=>false, "waiting"=>0, "skipped"=>0, "running"=>0, "completed"=>0, "canceled"=>0, "failed"=>1, "group_progress_reports"=> [{"message"=>"Repo version creation", "code"=>"create.repo_version", "total"=>0, "done"=>0}, {"message"=>"Distribution creation", "code"=>"create.distribution", "total"=>0, "done"=>0}]}], "poll_attempts"=>{"total"=>29, "failed"=>1}} Exception: Katello::Errors::Pulp3Error: 'NoneType' object has no attribute 'replace' Backtrace: /opt/theforeman/tfm/root/usr/share/gems/gems/katello-3.18.2.1/app/lib/actions/pulp3/abstract_async_task.rb:102:in `block in check_for_errors' /opt/theforeman/tfm/root/usr/share/gems/gems/katello-3.18.2.1/app/lib/actions/pulp3/abstract_async_task.rb:100:in `each' /opt/theforeman/tfm/root/usr/share/gems/gems/katello-3.18.2.1/app/lib/actions/pulp3/abstract_async_task.rb:100:in `check_for_errors' /opt/theforeman/tfm/root/usr/share/gems/gems/katello-3.18.2.1/app/lib/actions/pulp3/abstract_async_task.rb:133:in `poll_external_task' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/action/polling.rb:100:in `poll_external_task_with_rescue' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/action/polling.rb:22:in `run' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/action/cancellable.rb:14:in `run' /opt/theforeman/tfm/root/usr/share/gems/gems/katello-3.18.2.1/app/lib/actions/pulp3/abstract_async_task.rb:10:in `run' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/action.rb:571:in `block (3 levels) in execute_run' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/middleware/stack.rb:27:in `pass' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/middleware.rb:19:in `pass' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/middleware.rb:32:in `run' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/middleware/stack.rb:23:in `call' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/middleware/stack.rb:27:in `pass' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/middleware.rb:19:in `pass' /opt/theforeman/tfm/root/usr/share/gems/gems/katello-3.18.2.1/app/lib/actions/middleware/remote_action.rb:16:in `block in run' /opt/theforeman/tfm/root/usr/share/gems/gems/katello-3.18.2.1/app/lib/actions/middleware/remote_action.rb:40:in `block in as_remote_user' /opt/theforeman/tfm/root/usr/share/gems/gems/katello-3.18.2.1/app/models/katello/concerns/user_extensions.rb:21:in `cp_config' /opt/theforeman/tfm/root/usr/share/gems/gems/katello-3.18.2.1/app/lib/actions/middleware/remote_action.rb:27:in `as_cp_user' /opt/theforeman/tfm/root/usr/share/gems/gems/katello-3.18.2.1/app/lib/actions/middleware/remote_action.rb:39:in `as_remote_user' /opt/theforeman/tfm/root/usr/share/gems/gems/katello-3.18.2.1/app/lib/actions/middleware/remote_action.rb:16:in `run' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/middleware/stack.rb:23:in `call' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/middleware/stack.rb:27:in `pass' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/middleware.rb:19:in `pass' /opt/theforeman/tfm/root/usr/share/gems/gems/foreman-tasks-3.0.5/app/lib/actions/middleware/rails_executor_wrap.rb:14:in `block in run' /opt/theforeman/tfm/root/usr/share/gems/gems/activesupport-6.0.3.4/lib/active_support/execution_wrapper.rb:88:in `wrap' /opt/theforeman/tfm/root/usr/share/gems/gems/foreman-tasks-3.0.5/app/lib/actions/middleware/rails_executor_wrap.rb:13:in `run' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/middleware/stack.rb:23:in `call' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/middleware/stack.rb:27:in `pass' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/middleware.rb:19:in `pass' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/action/progress.rb:31:in `with_progress_calculation' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/action/progress.rb:17:in `run' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/middleware/stack.rb:23:in `call' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/middleware/stack.rb:27:in `pass' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/middleware.rb:19:in `pass' /opt/theforeman/tfm/root/usr/share/gems/gems/foreman-tasks-3.0.5/app/lib/actions/middleware/keep_current_request_id.rb:15:in `block in run' /opt/theforeman/tfm/root/usr/share/gems/gems/foreman-tasks-3.0.5/app/lib/actions/middleware/keep_current_request_id.rb:49:in `restore_current_request_id' /opt/theforeman/tfm/root/usr/share/gems/gems/foreman-tasks-3.0.5/app/lib/actions/middleware/keep_current_request_id.rb:15:in `run' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/middleware/stack.rb:23:in `call' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/middleware/stack.rb:27:in `pass' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/middleware.rb:19:in `pass' /opt/theforeman/tfm/root/usr/share/gems/gems/foreman-tasks-3.0.5/app/lib/actions/middleware/keep_current_timezone.rb:15:in `block in run' /opt/theforeman/tfm/root/usr/share/gems/gems/foreman-tasks-3.0.5/app/lib/actions/middleware/keep_current_timezone.rb:44:in `restore_curent_timezone' /opt/theforeman/tfm/root/usr/share/gems/gems/foreman-tasks-3.0.5/app/lib/actions/middleware/keep_current_timezone.rb:15:in `run' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/middleware/stack.rb:23:in `call' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/middleware/stack.rb:27:in `pass' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/middleware.rb:19:in `pass' /opt/theforeman/tfm/root/usr/share/gems/gems/foreman-tasks-3.0.5/app/lib/actions/middleware/keep_current_user.rb:15:in `block in run' /opt/theforeman/tfm/root/usr/share/gems/gems/foreman-tasks-3.0.5/app/lib/actions/middleware/keep_current_user.rb:44:in `restore_curent_user' /opt/theforeman/tfm/root/usr/share/gems/gems/foreman-tasks-3.0.5/app/lib/actions/middleware/keep_current_user.rb:15:in `run' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/middleware/stack.rb:23:in `call' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/middleware/stack.rb:27:in `pass' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/middleware.rb:19:in `pass' /opt/theforeman/tfm/root/usr/share/gems/gems/foreman-tasks-3.0.5/app/lib/actions/middleware/keep_current_taxonomies.rb:15:in `block in run' /opt/theforeman/tfm/root/usr/share/gems/gems/foreman-tasks-3.0.5/app/lib/actions/middleware/keep_current_taxonomies.rb:45:in `restore_current_taxonomies' /opt/theforeman/tfm/root/usr/share/gems/gems/foreman-tasks-3.0.5/app/lib/actions/middleware/keep_current_taxonomies.rb:15:in `run' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/middleware/stack.rb:23:in `call' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/middleware/stack.rb:27:in `pass' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/middleware.rb:19:in `pass' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/middleware.rb:32:in `run' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/middleware/stack.rb:23:in `call' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/middleware/world.rb:31:in `execute' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/action.rb:570:in `block (2 levels) in execute_run' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/action.rb:569:in `catch' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/action.rb:569:in `block in execute_run' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/action.rb:472:in `block in with_error_handling' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/action.rb:472:in `catch' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/action.rb:472:in `with_error_handling' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/action.rb:564:in `execute_run' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/action.rb:285:in `execute' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/execution_plan/steps/abstract_flow_step.rb:18:in `block (2 levels) in execute' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/execution_plan/steps/abstract.rb:167:in `with_meta_calculation' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/execution_plan/steps/abstract_flow_step.rb:17:in `block in execute' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/execution_plan/steps/abstract_flow_step.rb:32:in `open_action' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/execution_plan/steps/abstract_flow_step.rb:16:in `execute' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/director.rb:93:in `execute' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/executors/sidekiq/worker_jobs.rb:11:in `block (2 levels) in perform' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/executors.rb:18:in `run_user_code' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/executors/sidekiq/worker_jobs.rb:9:in `block in perform' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/executors/sidekiq/worker_jobs.rb:25:in `with_telemetry' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/executors/sidekiq/worker_jobs.rb:8:in `perform' /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.7/lib/dynflow/executors/sidekiq/serialization.rb:27:in `perform' /opt/theforeman/tfm/root/usr/share/gems/gems/sidekiq-5.2.7/lib/sidekiq/processor.rb:192:in `execute_job' /opt/theforeman/tfm/root/usr/share/gems/gems/sidekiq-5.2.7/lib/sidekiq/processor.rb:165:in `block (2 levels) in process' /opt/theforeman/tfm/root/usr/share/gems/gems/sidekiq-5.2.7/lib/sidekiq/middleware/chain.rb:128:in `block in invoke' /opt/theforeman/tfm/root/usr/share/gems/gems/sidekiq-5.2.7/lib/sidekiq/middleware/chain.rb:133:in `invoke' /opt/theforeman/tfm/root/usr/share/gems/gems/sidekiq-5.2.7/lib/sidekiq/processor.rb:164:in `block in process' /opt/theforeman/tfm/root/usr/share/gems/gems/sidekiq-5.2.7/lib/sidekiq/processor.rb:137:in `block (6 levels) in dispatch' /opt/theforeman/tfm/root/usr/share/gems/gems/sidekiq-5.2.7/lib/sidekiq/job_retry.rb:109:in `local' /opt/theforeman/tfm/root/usr/share/gems/gems/sidekiq-5.2.7/lib/sidekiq/processor.rb:136:in `block (5 levels) in dispatch' /opt/theforeman/tfm/root/usr/share/gems/gems/sidekiq-5.2.7/lib/sidekiq.rb:37:in `block in ' /opt/theforeman/tfm/root/usr/share/gems/gems/sidekiq-5.2.7/lib/sidekiq/processor.rb:132:in `block (4 levels) in dispatch' /opt/theforeman/tfm/root/usr/share/gems/gems/sidekiq-5.2.7/lib/sidekiq/processor.rb:250:in `stats' /opt/theforeman/tfm/root/usr/share/gems/gems/sidekiq-5.2.7/lib/sidekiq/processor.rb:127:in `block (3 levels) in dispatch' /opt/theforeman/tfm/root/usr/share/gems/gems/sidekiq-5.2.7/lib/sidekiq/job_logger.rb:8:in `call' /opt/theforeman/tfm/root/usr/share/gems/gems/sidekiq-5.2.7/lib/sidekiq/processor.rb:126:in `block (2 levels) in dispatch' /opt/theforeman/tfm/root/usr/share/gems/gems/sidekiq-5.2.7/lib/sidekiq/job_retry.rb:74:in `global' /opt/theforeman/tfm/root/usr/share/gems/gems/sidekiq-5.2.7/lib/sidekiq/processor.rb:125:in `block in dispatch' /opt/theforeman/tfm/root/usr/share/gems/gems/sidekiq-5.2.7/lib/sidekiq/logging.rb:48:in `with_context' /opt/theforeman/tfm/root/usr/share/gems/gems/sidekiq-5.2.7/lib/sidekiq/logging.rb:42:in `with_job_hash_context' /opt/theforeman/tfm/root/usr/share/gems/gems/sidekiq-5.2.7/lib/sidekiq/processor.rb:124:in `dispatch' /opt/theforeman/tfm/root/usr/share/gems/gems/sidekiq-5.2.7/lib/sidekiq/processor.rb:163:in `process' /opt/theforeman/tfm/root/usr/share/gems/gems/sidekiq-5.2.7/lib/sidekiq/processor.rb:83:in `process_one' /opt/theforeman/tfm/root/usr/share/gems/gems/sidekiq-5.2.7/lib/sidekiq/processor.rb:71:in `run' /opt/theforeman/tfm/root/usr/share/gems/gems/sidekiq-5.2.7/lib/sidekiq/util.rb:16:in `watchdog' /opt/theforeman/tfm/root/usr/share/gems/gems/sidekiq-5.2.7/lib/sidekiq/util.rb:25:in `block in safe_thread' /opt/theforeman/tfm/root/usr/share/gems/gems/logging-2.3.0/lib/logging/diagnostic_context.rb:474:in `block in create_with_logging_context' Action: Actions::Pulp3::ImportMigration Input: {"reimport_all"=>false, "dependency"=>Step(2).output, "remote_user"=>"admin", "remote_cp_user"=>"admin", "current_request_id"=>nil, "current_timezone"=>"UTC", "current_user_id"=>3, "current_organization_id"=>nil, "current_location_id"=>nil}ization_id"=>nil, "current_location_id"=>nil}
Traceback from /var/log/messages:
Apr 22 13:52:53 foreman pulpcore-worker-3: /usr/lib/python3.6/site-packages/django/db/models/fields/__init__.py:1427: RuntimeWarning: DateTimeField Pulp2RepoContent.pulp2_created received a naive datetime (2021-04-17 23:48:42) while time zone support is active. Apr 22 13:52:53 foreman pulpcore-worker-3: RuntimeWarning) Apr 22 13:52:53 foreman pulpcore-worker-3: pulp: rq.worker:ERROR: Traceback (most recent call last): Apr 22 13:52:53 foreman pulpcore-worker-3: File "/usr/lib/python3.6/site-packages/rq/worker.py", line 936, in perform_job Apr 22 13:52:53 foreman pulpcore-worker-3: rv = job.perform() Apr 22 13:52:53 foreman pulpcore-worker-3: File "/usr/lib/python3.6/site-packages/rq/job.py", line 684, in perform Apr 22 13:52:53 foreman pulpcore-worker-3: self._result = self._execute() Apr 22 13:52:53 foreman pulpcore-worker-3: File "/usr/lib/python3.6/site-packages/rq/job.py", line 690, in _execute Apr 22 13:52:53 foreman pulpcore-worker-3: return self.func(*self.args, **self.kwargs) Apr 22 13:52:53 foreman pulpcore-worker-3: File "/usr/lib/python3.6/site-packages/pulp_2to3_migration/app/tasks/migrate.py", line 80, in migrate_from_pulp2 Apr 22 13:52:53 foreman pulpcore-worker-3: migrate_importers(plan) Apr 22 13:52:53 foreman pulpcore-worker-3: File "/usr/lib/python3.6/site-packages/pulp_2to3_migration/app/migration.py", line 134, in migrate_importers Apr 22 13:52:53 foreman pulpcore-worker-3: remote, created = importer_migrator.migrate_to_pulp3(pulp2importer) Apr 22 13:52:53 foreman pulpcore-worker-3: File "/usr/lib/python3.6/site-packages/pulp_2to3_migration/app/plugin/deb/repository.py", line 37, in migrate_to_pulp3 Apr 22 13:52:53 foreman pulpcore-worker-3: base_config['distributions'] = pulp2_config.get('releases').replace(',', ' ') Apr 22 13:52:53 foreman pulpcore-worker-3: AttributeError: 'NoneType' object has no attribute 'replace' Apr 22 13:52:53 foreman pulpcore-worker-3: Traceback (most recent call last): Apr 22 13:52:53 foreman pulpcore-worker-3: File "/usr/lib/python3.6/site-packages/rq/worker.py", line 936, in perform_job Apr 22 13:52:53 foreman pulpcore-worker-3: rv = job.perform() Apr 22 13:52:53 foreman pulpcore-worker-3: File "/usr/lib/python3.6/site-packages/rq/job.py", line 684, in perform Apr 22 13:52:53 foreman pulpcore-worker-3: self._result = self._execute() Apr 22 13:52:53 foreman pulpcore-worker-3: File "/usr/lib/python3.6/site-packages/rq/job.py", line 690, in _execute Apr 22 13:52:53 foreman pulpcore-worker-3: return self.func(*self.args, **self.kwargs) Apr 22 13:52:53 foreman pulpcore-worker-3: File "/usr/lib/python3.6/site-packages/pulp_2to3_migration/app/tasks/migrate.py", line 80, in migrate_from_pulp2 Apr 22 13:52:53 foreman pulpcore-worker-3: migrate_importers(plan) Apr 22 13:52:53 foreman pulpcore-worker-3: File "/usr/lib/python3.6/site-packages/pulp_2to3_migration/app/migration.py", line 134, in migrate_importers Apr 22 13:52:53 foreman pulpcore-worker-3: remote, created = importer_migrator.migrate_to_pulp3(pulp2importer) Apr 22 13:52:53 foreman pulpcore-worker-3: File "/usr/lib/python3.6/site-packages/pulp_2to3_migration/app/plugin/deb/repository.py", line 37, in migrate_to_pulp3 Apr 22 13:52:53 foreman pulpcore-worker-3: base_config['distributions'] = pulp2_config.get('releases').replace(',', ' ') Apr 22 13:52:53 foreman pulpcore-worker-3: AttributeError: 'NoneType' object has no attribute 'replace' Apr 22 13:52:53 foreman pulpcore-worker-3: pulp: rq.worker:INFO: 2301@foreman.com: a90860bc-804b-427f-90b2-ff50173071c2 Apr 22 13:52:53 foreman pulpcore-worker-3: pulp: rq.worker:INFO: 2301@foreman.com: Job OK (a90860bc-804b-427f-90b2-ff50173071c2) Apr 22 13:52:55 foreman pulpcore-api: - - [22/Apr/2021:11:52:55 +0000] "GET /pulp/api/v3/tasks/85bf8d6b-f564-44d8-beba-5810921267ce/ HTTP/1.1" 200 6531 "-" "OpenAPI-Generator/3.7.1/ruby" Apr 22 13:52:56 foreman pulpcore-api: - - [22/Apr/2021:11:52:56 +0000] "GET /pulp/api/v3/task-groups/52a07f79-4418-4537-9753-ae9b655919a2/ HTTP/1.1" 200 440 "-" "OpenAPI-Generator/3.7.1/ruby"
I still need to grab the Pulp 3 versions from the reporting user.
Actions
Respect optional APT remote fields
closes #8613 https://pulp.plan.io/issues/8613