lib/foreman_tasks/dynflow/configuration.rb in foreman-tasks-0.1.0 vs lib/foreman_tasks/dynflow/configuration.rb in foreman-tasks-0.1.1
- old
+ new
@@ -69,10 +69,19 @@
end
def default_sequel_adapter_options
db_config = ActiveRecord::Base.configurations[Rails.env].dup
db_config['adapter'] = 'postgres' if db_config['adapter'] == 'postgresql'
- db_config['adapter'] = 'sqlite' if db_config['adapter'] == 'sqlite3'
+
+ if db_config['adapter'] == 'sqlite3'
+ db_config['adapter'] = 'sqlite'
+ database = db_config['database']
+ unless database == ':memory:'
+ # We need to create separate database for sqlite
+ # to avoid lock conflicts on the database
+ db_config['database'] = "#{File.dirname(database)}/dynflow-#{File.basename(database)}"
+ end
+ end
return db_config
end
def initialize_executor(world)
if self.remote?