dm-drogeriemarkt / foreman_vault

Foreman integration with Vault
GNU General Public License v3.0
18 stars 10 forks source link

Foreman Vault break DB seeding with Foreman 3.3 #56

Closed dgoetz closed 1 year ago

dgoetz commented 2 years ago

When installing the plugin on Foreman 3.3 and running foreman-rake db:seed afterwards I get the following error:

 aborted!
SystemStackError: stack level too deep
/usr/share/gems/gems/activemodel-6.0.4.7/lib/active_model/type/string.rb:17:in `cast_value'
/usr/share/gems/gems/activemodel-6.0.4.7/lib/active_model/type/value.rb:38:in `cast'
/usr/share/gems/gems/activemodel-6.0.4.7/lib/active_model/type/value.rb:24:in `deserialize'
/usr/share/gems/gems/activemodel-6.0.4.7/lib/active_model/attribute.rb:164:in `type_cast'
/usr/share/gems/gems/activemodel-6.0.4.7/lib/active_model/attribute.rb:50:in `original_value'
/usr/share/gems/gems/activemodel-6.0.4.7/lib/active_model/attribute.rb:48:in `original_value'
/usr/share/gems/gems/activemodel-6.0.4.7/lib/active_model/attribute.rb:155:in `changed_from_assignment?'
/usr/share/gems/gems/activemodel-6.0.4.7/lib/active_model/attribute.rb:59:in `changed?'
/usr/share/gems/gems/activemodel-6.0.4.7/lib/active_model/attribute_mutation_tracker.rb:76:in `attribute_changed?'
/usr/share/gems/gems/activemodel-6.0.4.7/lib/active_model/attribute_mutation_tracker.rb:46:in `changed?'
/usr/share/gems/gems/activemodel-6.0.4.7/lib/active_model/attribute_mutation_tracker.rb:36:in `change_to_attribute'
/usr/share/gems/gems/activemodel-6.0.4.7/lib/active_model/attribute_mutation_tracker.rb:29:in `block in changes'
/usr/share/gems/gems/activemodel-6.0.4.7/lib/active_model/attribute_mutation_tracker.rb:28:in `each'
/usr/share/gems/gems/activemodel-6.0.4.7/lib/active_model/attribute_mutation_tracker.rb:28:in `each_with_object'
/usr/share/gems/gems/activemodel-6.0.4.7/lib/active_model/attribute_mutation_tracker.rb:28:in `changes'
/usr/share/gems/gems/activerecord-6.0.4.7/lib/active_record/attribute_methods/dirty.rb:139:in `changes_to_save'
/usr/share/gems/gems/audited-4.9.0/lib/audited/auditor.rb:224:in `audited_changes'
/usr/share/gems/gems/audited-4.9.0/lib/audited/auditor.rb:274:in `audit_update'
/usr/share/gems/gems/activesupport-6.0.4.7/lib/active_support/callbacks.rb:428:in `block in make_lambda'
/usr/share/gems/gems/activesupport-6.0.4.7/lib/active_support/callbacks.rb:200:in `block (2 levels) in halting'
/usr/share/gems/gems/activesupport-6.0.4.7/lib/active_support/callbacks.rb:605:in `block (2 levels) in default_terminator'
/usr/share/gems/gems/activesupport-6.0.4.7/lib/active_support/callbacks.rb:604:in `catch'
/usr/share/gems/gems/activesupport-6.0.4.7/lib/active_support/callbacks.rb:604:in `block in default_terminator'
/usr/share/gems/gems/activesupport-6.0.4.7/lib/active_support/callbacks.rb:201:in `block in halting'
/usr/share/gems/gems/activesupport-6.0.4.7/lib/active_support/callbacks.rb:513:in `block in invoke_before'
/usr/share/gems/gems/activesupport-6.0.4.7/lib/active_support/callbacks.rb:513:in `each'
/usr/share/gems/gems/activesupport-6.0.4.7/lib/active_support/callbacks.rb:513:in `invoke_before'
/usr/share/gems/gems/activesupport-6.0.4.7/lib/active_support/callbacks.rb:134:in `run_callbacks'
/usr/share/gems/gems/activesupport-6.0.4.7/lib/active_support/callbacks.rb:825:in `_run_update_callbacks'
/usr/share/gems/gems/activerecord-6.0.4.7/lib/active_record/callbacks.rb:335:in `_update_record'
/usr/share/gems/gems/activerecord-6.0.4.7/lib/active_record/timestamp.rb:123:in `_update_record'
/usr/share/gems/gems/activerecord-6.0.4.7/lib/active_record/persistence.rb:905:in `create_or_update'
/usr/share/gems/gems/activerecord-6.0.4.7/lib/active_record/callbacks.rb:327:in `block in create_or_update'
/usr/share/gems/gems/activesupport-6.0.4.7/lib/active_support/callbacks.rb:112:in `block in run_callbacks'
/usr/share/gems/gems/activerecord-6.0.4.7/lib/active_record/autosave_association.rb:366:in `around_save_collection_association'
/usr/share/gems/gems/activesupport-6.0.4.7/lib/active_support/callbacks.rb:121:in `block in run_callbacks'
/usr/share/gems/gems/activesupport-6.0.4.7/lib/active_support/callbacks.rb:139:in `run_callbacks'
/usr/share/gems/gems/activesupport-6.0.4.7/lib/active_support/callbacks.rb:825:in `_run_save_callbacks'
/usr/share/gems/gems/activerecord-6.0.4.7/lib/active_record/callbacks.rb:327:in `create_or_update'
/usr/share/gems/gems/activerecord-6.0.4.7/lib/active_record/timestamp.rb:128:in `create_or_update'
/usr/share/gems/gems/activerecord-6.0.4.7/lib/active_record/persistence.rb:470:in `save'
/usr/share/gems/gems/activerecord-6.0.4.7/lib/active_record/validations.rb:47:in `save'
/usr/share/gems/gems/activerecord-6.0.4.7/lib/active_record/transactions.rb:314:in `block in save'
/usr/share/gems/gems/activerecord-6.0.4.7/lib/active_record/transactions.rb:375:in `block in with_transaction_returning_status'
/usr/share/gems/gems/activerecord-6.0.4.7/lib/active_record/connection_adapters/abstract/database_statements.rb:278:in `transaction'
/usr/share/gems/gems/activerecord-6.0.4.7/lib/active_record/transactions.rb:212:in `transaction'
/usr/share/gems/gems/activerecord-6.0.4.7/lib/active_record/transactions.rb:366:in `with_transaction_returning_status'
/usr/share/gems/gems/activerecord-6.0.4.7/lib/active_record/transactions.rb:314:in `save'
/usr/share/gems/gems/activerecord-6.0.4.7/lib/active_record/suppressor.rb:44:in `save'
/usr/share/foreman/app/models/setting.rb:239:in `block in create_existing'
/usr/share/foreman/app/models/setting.rb:255:in `bypass_readonly'
/usr/share/foreman/app/models/setting.rb:229:in `create_existing'
/usr/share/foreman/app/models/setting.rb:189:in `create_find_by_name'
/usr/share/foreman/app/models/setting.rb:202:in `create!'
/usr/share/gems/gems/foreman_vault-1.1.0/app/models/setting/vault.rb:19:in `block (2 levels) in load_defaults'
/usr/share/gems/gems/foreman_vault-1.1.0/app/models/setting/vault.rb:18:in `each'
/usr/share/gems/gems/foreman_vault-1.1.0/app/models/setting/vault.rb:18:in `block in load_defaults'
/usr/share/gems/gems/activerecord-6.0.4.7/lib/active_record/connection_adapters/abstract/database_statements.rb:280:in `block in transaction'
/usr/share/gems/gems/activerecord-6.0.4.7/lib/active_record/connection_adapters/abstract/transaction.rb:280:in `block in within_new_transaction'
/usr/share/gems/gems/activesupport-6.0.4.7/lib/active_support/concurrency/load_interlock_aware_monitor.rb:26:in `block (2 levels) in synchronize'
/usr/share/gems/gems/activesupport-6.0.4.7/lib/active_support/concurrency/load_interlock_aware_monitor.rb:25:in `handle_interrupt'
/usr/share/gems/gems/activesupport-6.0.4.7/lib/active_support/concurrency/load_interlock_aware_monitor.rb:25:in `block in synchronize'
/usr/share/gems/gems/activesupport-6.0.4.7/lib/active_support/concurrency/load_interlock_aware_monitor.rb:21:in `handle_interrupt'
/usr/share/gems/gems/activesupport-6.0.4.7/lib/active_support/concurrency/load_interlock_aware_monitor.rb:21:in `synchronize'
/usr/share/gems/gems/activerecord-6.0.4.7/lib/active_record/connection_adapters/abstract/transaction.rb:278:in `within_new_transaction'
/usr/share/gems/gems/activerecord-6.0.4.7/lib/active_record/connection_adapters/abstract/database_statements.rb:280:in `transaction'
/usr/share/gems/gems/activerecord-6.0.4.7/lib/active_record/transactions.rb:212:in `transaction'
/usr/share/gems/gems/foreman_vault-1.1.0/app/models/setting/vault.rb:17:in `load_defaults'
/usr/share/foreman/app/services/setting_registry.rb:115:in `each'
/usr/share/foreman/app/services/setting_registry.rb:115:in `load'
/usr/share/gems/gems/foreman_vault-1.1.0/app/models/setting/vault.rb:36:in `load_defaults'
/usr/share/foreman/app/services/setting_registry.rb:115:in `each'
/usr/share/foreman/app/services/setting_registry.rb:115:in `load'
... (repeating the last 3 rows many times)
/usr/share/gems/gems/foreman_vault-1.1.0/app/models/setting/vault.rb:36:in `load_defaults'
/usr/share/foreman/config/initializers/foreman.rb:25:in `each'
/usr/share/foreman/config/initializers/foreman.rb:25:in `<top (required)>'
/usr/share/gems/gems/activesupport-6.0.4.7/lib/active_support/dependencies.rb:318:in `load'
/usr/share/gems/gems/activesupport-6.0.4.7/lib/active_support/dependencies.rb:318:in `block in load'
/usr/share/gems/gems/activesupport-6.0.4.7/lib/active_support/dependencies.rb:291:in `load_dependency'
/usr/share/gems/gems/activesupport-6.0.4.7/lib/active_support/dependencies.rb:318:in `load'
/usr/share/foreman/config/initializers/0_print_time_spent.rb:38:in `block in load'
/usr/share/foreman/config/initializers/0_print_time_spent.rb:17:in `benchmark'
/usr/share/foreman/config/initializers/0_print_time_spent.rb:38:in `load'
/usr/share/gems/gems/railties-6.0.4.7/lib/rails/engine.rb:666:in `block in load_config_initializer'
/usr/share/gems/gems/activesupport-6.0.4.7/lib/active_support/notifications.rb:182:in `instrument'
/usr/share/gems/gems/railties-6.0.4.7/lib/rails/engine.rb:665:in `load_config_initializer'
/usr/share/gems/gems/railties-6.0.4.7/lib/rails/engine.rb:625:in `block (2 levels) in <class:Engine>'
/usr/share/gems/gems/railties-6.0.4.7/lib/rails/engine.rb:624:in `each'
/usr/share/gems/gems/railties-6.0.4.7/lib/rails/engine.rb:624:in `block in <class:Engine>'
/usr/share/gems/gems/railties-6.0.4.7/lib/rails/initializable.rb:32:in `instance_exec'
/usr/share/gems/gems/railties-6.0.4.7/lib/rails/initializable.rb:32:in `run'
/usr/share/gems/gems/railties-6.0.4.7/lib/rails/initializable.rb:61:in `block in run_initializers'
/usr/share/gems/gems/railties-6.0.4.7/lib/rails/initializable.rb:50:in `each'
/usr/share/gems/gems/railties-6.0.4.7/lib/rails/initializable.rb:50:in `tsort_each_child'
/usr/share/gems/gems/railties-6.0.4.7/lib/rails/initializable.rb:60:in `run_initializers'
/usr/share/gems/gems/railties-6.0.4.7/lib/rails/application.rb:363:in `initialize!'
/usr/share/gems/gems/railties-6.0.4.7/lib/rails/railtie.rb:190:in `public_send'
/usr/share/gems/gems/railties-6.0.4.7/lib/rails/railtie.rb:190:in `method_missing'
/usr/share/foreman/config/environment.rb:5:in `<top (required)>'
/usr/share/gems/gems/polyglot-0.3.5/lib/polyglot.rb:65:in `require'
/usr/share/gems/gems/activesupport-6.0.4.7/lib/active_support/dependencies.rb:324:in `block in require'
/usr/share/gems/gems/activesupport-6.0.4.7/lib/active_support/dependencies.rb:291:in `load_dependency'
/usr/share/gems/gems/activesupport-6.0.4.7/lib/active_support/dependencies.rb:324:in `require'
/usr/share/gems/gems/railties-6.0.4.7/lib/rails/application.rb:339:in `require_environment!'
/usr/share/gems/gems/railties-6.0.4.7/lib/rails/application.rb:523:in `block in run_tasks_blocks'
/usr/share/gems/gems/rake-13.0.1/exe/rake:27:in `<top (required)>'
Tasks: TOP => db:seed => db:load_config => environment
(See full trace by running task with --trace)
dgoetz commented 2 years ago

Applied the last patches to the release 1.1.0 and it works again, so it seems like it only needs a new release.

laugmanuel commented 1 year ago

This should be fixed in the latest release of the plugin (1.2.0)