class Gitlab::QA::Runtime::OmnibusConfigurations::DecompositionMultipleDb

def configuration

def configuration
  # HACK: commenting commands out as these commands should be run *after* the first
  # reconfiguration (see first command in #exec_commands)
  <<~OMNIBUS
    #gitlab_rails['databases']['main']['enable'] = true
    #gitlab_rails['databases']['ci']['enable'] = true
    #gitlab_rails['databases']['ci']['db_database'] = 'gitlabhq_production_ci'
  OMNIBUS
end

def exec_commands

def exec_commands
  [
    "sed -i 's/#gitlab_rails/gitlab_rails/g' /etc/gitlab/gitlab.rb",
    "gitlab-ctl reconfigure",
    # Create database only if it does not exist.
    "#{DATABASE_EXISTENCE_CHECK_COMMAND} || gitlab-psql -c 'create database gitlabhq_production_ci owner gitlab'",
    "gitlab-psql -d gitlabhq_production_ci -c 'create extension if not exists btree_gist'",
    "gitlab-psql -d gitlabhq_production_ci -c 'create extension if not exists pg_trgm'",
    # Load schema only if it does not exist.
    "#{SCHEMA_EXISTENCE_CHECK_COMMAND} || DISABLE_DATABASE_ENVIRONMENT_CHECK=1 gitlab-rake db:schema:load:ci",
    "gitlab-ctl restart"
  ].freeze
end