class Gitlab::QA::Scenario::Test::Integration::GitalyCluster

def praefect_omnibus_configuration

def praefect_omnibus_configuration
  <<~OMNIBUS
    #{disable_other_services}
    gitaly['enable'] = false;
    praefect['enable'] = true;
    praefect['listen_addr'] = '0.0.0.0:2305';
    praefect['prometheus_listen_addr'] = '0.0.0.0:9652';
    praefect['auth_token'] = 'PRAEFECT_EXTERNAL_TOKEN';
    praefect['database_host'] = '#{@database}.#{@network}';
    praefect['database_user'] = 'postgres';
    praefect['database_port'] = 5432;
    praefect['database_password'] = 'SQL_PASSWORD';
    praefect['database_dbname'] = 'praefect_production';
    praefect['database_sslmode'] = 'disable';
    praefect['postgres_queue_enabled'] = true;
    praefect['failover_enabled'] = true;
    praefect['virtual_storages'] = {
      'default' => {
        '#{@primary_node_name}' => {
          'address' => 'tcp://#{@primary_node_name}.#{@network}:8075',
          'token'   => 'PRAEFECT_INTERNAL_TOKEN',
          'primary' => true
        },
        '#{@secondary_node_name}' => {
          'address' => 'tcp://#{@secondary_node_name}.#{@network}:8075',
          'token'   => 'PRAEFECT_INTERNAL_TOKEN'
        },
        '#{@tertiary_node_name}' => {
          'address' => 'tcp://#{@tertiary_node_name}.#{@network}:8075',
          'token'   => 'PRAEFECT_INTERNAL_TOKEN'
        }
      }
    };
  OMNIBUS
end