Project

General

Profile

Bug #33064

Tracker #33061: Puppet extraction for 3.0

Importing Puppet classes fails with Failed to create Puppetclass: Environment can't be blank

Added by Ewoud Kohl van Wijngaarden 3 months ago. Updated 3 months ago.

Status:
New
Priority:
Normal
Assignee:
-
Category:
Puppet integration
Target version:
-
Difficulty:
Triaged:
No
Bugzilla link:
Pull request:
Fixed in Releases:
Found in Releases:

Description

2021-07-20T13:19:51 [I|app|4301f8b9] Started POST "/foreman_puppet/puppetclasses/obsolete_and_new" for 192.168.122.1 at 2021-07-20 13:19:51 +0000
2021-07-20T13:19:51 [I|app|4301f8b9] Processing by ForemanPuppet::PuppetclassesController#obsolete_and_new as HTML
2021-07-20T13:19:51 [I|app|4301f8b9]   Parameters: {"utf8"=>"✓", "authenticity_token"=>"qj1/RSzucUXkdgGGj4AjseRv+YtMOfaIIt5fR5FPFQIIab0QLtkUxTFnkdbabxYkDfEmhZaj+2RaQH+R7MGLJg==", "changed"=>{"new"=>{"production"=>"{\"motd\":{\"new\":{\"ensure\":\"present\",\"config_file\":\"/etc/motd\",\"template\":\"motd/motd.erb\"}},\"stdlib\":{\"new\":{}},\"stdlib::stages\":{\"new\":{}}}"}}, "commit"=>"Update"}
2021-07-20T13:19:52 [W|app|4301f8b9] Failed to calculate obsolete and new
2021-07-20T13:19:52 [I|app|4301f8b9] Backtrace for 'Failed to calculate obsolete and new' error (Foreman::Exception): ERF42-0618 [Foreman::Exception]: Failed to create Puppetclass: Environment can't be blank
 4301f8b9 | /usr/share/gems/gems/foreman_puppet-1.0.0.rc.1/app/services/foreman_puppet/puppet_class_importer.rb:350:in `find_or_create_puppetclass_for_env'
 4301f8b9 | /usr/share/gems/gems/foreman_puppet-1.0.0.rc.1/app/services/foreman_puppet/puppet_class_importer.rb:254:in `block in add_classes_to_foreman'
 4301f8b9 | /usr/share/gems/gems/foreman_puppet-1.0.0.rc.1/app/services/foreman_puppet/puppet_class_importer.rb:253:in `each'
 4301f8b9 | /usr/share/gems/gems/foreman_puppet-1.0.0.rc.1/app/services/foreman_puppet/puppet_class_importer.rb:253:in `add_classes_to_foreman'
 4301f8b9 | /usr/share/gems/gems/foreman_puppet-1.0.0.rc.1/app/services/foreman_puppet/puppet_class_importer.rb:73:in `block in obsolete_and_new'
 4301f8b9 | /usr/share/gems/gems/foreman_puppet-1.0.0.rc.1/app/services/foreman_puppet/puppet_class_importer.rb:72:in `each'
 4301f8b9 | /usr/share/gems/gems/foreman_puppet-1.0.0.rc.1/app/services/foreman_puppet/puppet_class_importer.rb:72:in `obsolete_and_new'
 4301f8b9 | /usr/share/gems/gems/foreman_puppet-1.0.0.rc.1/app/controllers/concerns/foreman_puppet/environments_import.rb:31:in `obsolete_and_new'
 4301f8b9 | /usr/share/gems/gems/actionpack-6.0.3.7/lib/action_controller/metal/basic_implicit_render.rb:6:in `send_action'
 4301f8b9 | /usr/share/gems/gems/actionpack-6.0.3.7/lib/abstract_controller/base.rb:195:in `process_action'
 4301f8b9 | /usr/share/gems/gems/actionpack-6.0.3.7/lib/action_controller/metal/rendering.rb:30:in `process_action'
 4301f8b9 | /usr/share/gems/gems/actionpack-6.0.3.7/lib/abstract_controller/callbacks.rb:42:in `block in process_action'
 4301f8b9 | /usr/share/gems/gems/activesupport-6.0.3.7/lib/active_support/callbacks.rb:112:in `block in run_callbacks'
 4301f8b9 | /usr/share/foreman/app/controllers/concerns/foreman/controller/timezone.rb:10:in `set_timezone'
 4301f8b9 | /usr/share/gems/gems/activesupport-6.0.3.7/lib/active_support/callbacks.rb:121:in `block in run_callbacks'
 4301f8b9 | /usr/share/foreman/app/models/concerns/foreman/thread_session.rb:32:in `clear_thread'
 4301f8b9 | /usr/share/gems/gems/activesupport-6.0.3.7/lib/active_support/callbacks.rb:121:in `block in run_callbacks'
 4301f8b9 | /usr/share/foreman/app/controllers/concerns/foreman/controller/topbar_sweeper.rb:12:in `set_topbar_sweeper_controller'
 4301f8b9 | /usr/share/gems/gems/activesupport-6.0.3.7/lib/active_support/callbacks.rb:121:in `block in run_callbacks'
 4301f8b9 | /usr/share/gems/gems/audited-4.9.0/lib/audited/sweeper.rb:14:in `around'
 4301f8b9 | /usr/share/gems/gems/activesupport-6.0.3.7/lib/active_support/callbacks.rb:121:in `block in run_callbacks'
 4301f8b9 | /usr/share/gems/gems/audited-4.9.0/lib/audited/sweeper.rb:14:in `around'
 4301f8b9 | /usr/share/gems/gems/activesupport-6.0.3.7/lib/active_support/callbacks.rb:121:in `block in run_callbacks'
 4301f8b9 | /usr/share/gems/gems/activesupport-6.0.3.7/lib/active_support/callbacks.rb:139:in `run_callbacks'
 4301f8b9 | /usr/share/gems/gems/actionpack-6.0.3.7/lib/abstract_controller/callbacks.rb:41:in `process_action'
 4301f8b9 | /usr/share/gems/gems/actionpack-6.0.3.7/lib/action_controller/metal/rescue.rb:22:in `process_action'
 4301f8b9 | /usr/share/gems/gems/actionpack-6.0.3.7/lib/action_controller/metal/instrumentation.rb:33:in `block in process_action'
 4301f8b9 | /usr/share/gems/gems/activesupport-6.0.3.7/lib/active_support/notifications.rb:180:in `block in instrument'
 4301f8b9 | /usr/share/gems/gems/activesupport-6.0.3.7/lib/active_support/notifications/instrumenter.rb:24:in `instrument'
 4301f8b9 | /usr/share/gems/gems/activesupport-6.0.3.7/lib/active_support/notifications.rb:180:in `instrument'
 4301f8b9 | /usr/share/gems/gems/actionpack-6.0.3.7/lib/action_controller/metal/instrumentation.rb:32:in `process_action'
 4301f8b9 | /usr/share/gems/gems/actionpack-6.0.3.7/lib/action_controller/metal/params_wrapper.rb:245:in `process_action'
 4301f8b9 | /usr/share/gems/gems/activerecord-6.0.3.7/lib/active_record/railties/controller_runtime.rb:27:in `process_action'
 4301f8b9 | /usr/share/gems/gems/actionpack-6.0.3.7/lib/abstract_controller/base.rb:136:in `process'
 4301f8b9 | /usr/share/gems/gems/actionview-6.0.3.7/lib/action_view/rendering.rb:39:in `process'
 4301f8b9 | /usr/share/gems/gems/actionpack-6.0.3.7/lib/action_controller/metal.rb:190:in `dispatch'
 4301f8b9 | /usr/share/gems/gems/actionpack-6.0.3.7/lib/action_controller/metal.rb:254:in `dispatch'
 4301f8b9 | /usr/share/gems/gems/actionpack-6.0.3.7/lib/action_dispatch/routing/route_set.rb:50:in `dispatch'
 4301f8b9 | /usr/share/gems/gems/actionpack-6.0.3.7/lib/action_dispatch/routing/route_set.rb:33:in `serve'
 4301f8b9 | /usr/share/gems/gems/actionpack-6.0.3.7/lib/action_dispatch/journey/router.rb:49:in `block in serve'
 4301f8b9 | /usr/share/gems/gems/actionpack-6.0.3.7/lib/action_dispatch/journey/router.rb:32:in `each'
 4301f8b9 | /usr/share/gems/gems/actionpack-6.0.3.7/lib/action_dispatch/journey/router.rb:32:in `serve'
 4301f8b9 | /usr/share/gems/gems/actionpack-6.0.3.7/lib/action_dispatch/routing/route_set.rb:834:in `call'
 4301f8b9 | /usr/share/gems/gems/railties-6.0.3.7/lib/rails/engine.rb:527:in `call'
 4301f8b9 | /usr/share/gems/gems/railties-6.0.3.7/lib/rails/railtie.rb:190:in `public_send'
 4301f8b9 | /usr/share/gems/gems/railties-6.0.3.7/lib/rails/railtie.rb:190:in `method_missing'
 4301f8b9 | /usr/share/gems/gems/actionpack-6.0.3.7/lib/action_dispatch/routing/mapper.rb:19:in `block in <class:Constraints>'
 4301f8b9 | /usr/share/gems/gems/actionpack-6.0.3.7/lib/action_dispatch/routing/mapper.rb:48:in `serve'
 4301f8b9 | /usr/share/gems/gems/actionpack-6.0.3.7/lib/action_dispatch/journey/router.rb:49:in `block in serve'
 4301f8b9 | /usr/share/gems/gems/actionpack-6.0.3.7/lib/action_dispatch/journey/router.rb:32:in `each'
 4301f8b9 | /usr/share/gems/gems/actionpack-6.0.3.7/lib/action_dispatch/journey/router.rb:32:in `serve'
 4301f8b9 | /usr/share/gems/gems/actionpack-6.0.3.7/lib/action_dispatch/routing/route_set.rb:834:in `call'
 4301f8b9 | /usr/share/gems/gems/apipie-dsl-2.4.0/lib/apipie_dsl/static_dispatcher.rb:67:in `call'
 4301f8b9 | /usr/share/gems/gems/apipie-rails-0.5.17/lib/apipie/static_dispatcher.rb:66:in `call'
 4301f8b9 | /usr/share/gems/gems/apipie-rails-0.5.17/lib/apipie/extractor/recorder.rb:137:in `call'
 4301f8b9 | /usr/share/gems/gems/actionpack-6.0.3.7/lib/action_dispatch/middleware/static.rb:126:in `call'
 4301f8b9 | /usr/share/foreman/lib/foreman/middleware/telemetry.rb:10:in `call'
 4301f8b9 | /usr/share/gems/gems/apipie-rails-0.5.17/lib/apipie/middleware/checksum_in_headers.rb:27:in `call'
 4301f8b9 | /usr/share/foreman/lib/foreman/middleware/catch_json_parse_errors.rb:9:in `call'
 4301f8b9 | /usr/share/gems/gems/rack-2.2.3/lib/rack/tempfile_reaper.rb:15:in `call'
 4301f8b9 | /usr/share/gems/gems/rack-2.2.3/lib/rack/etag.rb:27:in `call'
 4301f8b9 | /usr/share/gems/gems/rack-2.2.3/lib/rack/conditional_get.rb:40:in `call'
 4301f8b9 | /usr/share/gems/gems/rack-2.2.3/lib/rack/head.rb:12:in `call'
 4301f8b9 | /usr/share/gems/gems/actionpack-6.0.3.7/lib/action_dispatch/http/content_security_policy.rb:18:in `call'
 4301f8b9 | /usr/share/foreman/lib/foreman/middleware/logging_context_session.rb:22:in `call'
 4301f8b9 | /usr/share/gems/gems/rack-2.2.3/lib/rack/session/abstract/id.rb:266:in `context'
 4301f8b9 | /usr/share/gems/gems/rack-2.2.3/lib/rack/session/abstract/id.rb:260:in `call'
 4301f8b9 | /usr/share/gems/gems/actionpack-6.0.3.7/lib/action_dispatch/middleware/cookies.rb:648:in `call'
 4301f8b9 | /usr/share/gems/gems/actionpack-6.0.3.7/lib/action_dispatch/middleware/callbacks.rb:27:in `block in call'
 4301f8b9 | /usr/share/gems/gems/activesupport-6.0.3.7/lib/active_support/callbacks.rb:101:in `run_callbacks'
 4301f8b9 | /usr/share/gems/gems/actionpack-6.0.3.7/lib/action_dispatch/middleware/callbacks.rb:26:in `call'
 4301f8b9 | /usr/share/gems/gems/actionpack-6.0.3.7/lib/action_dispatch/middleware/actionable_exceptions.rb:18:in `call'
 4301f8b9 | /usr/share/gems/gems/actionpack-6.0.3.7/lib/action_dispatch/middleware/debug_exceptions.rb:32:in `call'
 4301f8b9 | /usr/share/gems/gems/actionpack-6.0.3.7/lib/action_dispatch/middleware/show_exceptions.rb:33:in `call'
 4301f8b9 | /usr/share/gems/gems/railties-6.0.3.7/lib/rails/rack/logger.rb:37:in `call_app'
 4301f8b9 | /usr/share/gems/gems/railties-6.0.3.7/lib/rails/rack/logger.rb:28:in `call'
 4301f8b9 | /usr/share/gems/gems/sprockets-rails-3.2.1/lib/sprockets/rails/quiet_assets.rb:13:in `call'
 4301f8b9 | /usr/share/foreman/lib/foreman/middleware/logging_context_request.rb:11:in `call'
 4301f8b9 | /usr/share/gems/gems/actionpack-6.0.3.7/lib/action_dispatch/middleware/remote_ip.rb:81:in `call'
 4301f8b9 | /usr/share/gems/gems/actionpack-6.0.3.7/lib/action_dispatch/middleware/request_id.rb:27:in `call'
 4301f8b9 | /usr/share/gems/gems/rack-2.2.3/lib/rack/method_override.rb:24:in `call'
 4301f8b9 | /usr/share/gems/gems/rack-2.2.3/lib/rack/runtime.rb:22:in `call'
 4301f8b9 | /usr/share/gems/gems/activesupport-6.0.3.7/lib/active_support/cache/strategy/local_cache_middleware.rb:29:in `call'
 4301f8b9 | /usr/share/gems/gems/actionpack-6.0.3.7/lib/action_dispatch/middleware/executor.rb:14:in `call'
 4301f8b9 | /usr/share/gems/gems/actionpack-6.0.3.7/lib/action_dispatch/middleware/static.rb:126:in `call'
 4301f8b9 | /usr/share/gems/gems/rack-2.2.3/lib/rack/sendfile.rb:110:in `call'
 4301f8b9 | /usr/share/gems/gems/actionpack-6.0.3.7/lib/action_dispatch/middleware/host_authorization.rb:76:in `call'
 4301f8b9 | /usr/share/gems/gems/secure_headers-6.3.0/lib/secure_headers/middleware.rb:11:in `call'
 4301f8b9 | /usr/share/gems/gems/railties-6.0.3.7/lib/rails/engine.rb:527:in `call'
 4301f8b9 | /usr/share/gems/gems/railties-6.0.3.7/lib/rails/railtie.rb:190:in `public_send'
 4301f8b9 | /usr/share/gems/gems/railties-6.0.3.7/lib/rails/railtie.rb:190:in `method_missing'
 4301f8b9 | /usr/share/gems/gems/rack-2.2.3/lib/rack/urlmap.rb:74:in `block in call'
 4301f8b9 | /usr/share/gems/gems/rack-2.2.3/lib/rack/urlmap.rb:58:in `each'
 4301f8b9 | /usr/share/gems/gems/rack-2.2.3/lib/rack/urlmap.rb:58:in `call'
 4301f8b9 | /usr/share/gems/gems/puma-5.3.2/lib/puma/configuration.rb:249:in `call'
 4301f8b9 | /usr/share/gems/gems/puma-5.3.2/lib/puma/request.rb:77:in `block in handle_request'
 4301f8b9 | /usr/share/gems/gems/puma-5.3.2/lib/puma/thread_pool.rb:338:in `with_force_shutdown'
 4301f8b9 | /usr/share/gems/gems/puma-5.3.2/lib/puma/request.rb:76:in `handle_request'
 4301f8b9 | /usr/share/gems/gems/puma-5.3.2/lib/puma/server.rb:438:in `process_client'
 4301f8b9 | /usr/share/gems/gems/puma-5.3.2/lib/puma/thread_pool.rb:145:in `block in spawn_thread'
 4301f8b9 | /usr/share/gems/gems/logging-2.3.0/lib/logging/diagnostic_context.rb:474:in `block in create_with_logging_context'
2021-07-20T13:19:52 [I|app|4301f8b9] Redirected to https://centos8-foreman-nightly.wisse.example.com/foreman_puppet/puppetclasses
2021-07-20T13:19:52 [I|app|4301f8b9] Completed 302 Found in 181ms (ActiveRecord: 13.3ms | Allocations: 16598)

History

#1 Updated by Marek Hulán 3 months ago

I assuem this is a new instance. Did you install plugin afterwards or from the beginning? I'm looking at the code and environments still use the old table so I'm not sure why it's not found. Debug log level may help. Do you perform this under admin or could it be permissions/taxonomies related? Also this is installer based right? The production env should be autocreated, can you check it's current org/loc?

#2 Updated by Ewoud Kohl van Wijngaarden 3 months ago

It was a fresh instance, installed using vagrant up centos8-foreman-nightly. It should install the plugin before migrating. I also ran it as admin. I'll also note that when I ran the importer via the API (using hammer) it did work.

#3 Updated by Ondřej Ezr 3 months ago

Was this before or after the bump to 3.0? It works for me on the current nightlies.

Also available in: Atom PDF