Existe um módulo de maneira para saber se você está logado no Dev, Stage ou Production

13

Nosso modelo de implantação tem

  1. Dev
  2. Etapa
  3. Produção
  4. Failover (replicação mysql e balanceador de carga)

Nosso problema é que o servidor falhou, queremos alertar os editores de conteúdo de que eles estão no failover ou, mais ainda, gostaríamos de garantir que eles estejam editando nas áreas de produção e não em uma caixa de desenvolvimento.

Existe uma maneira de distinguir o ambiente depois que um usuário faz login? Existe um módulo pelo qual os códigos de cores da barra de administração dependem do nome do host do servidor?

Rick
fonte

Respostas:

14

Experimente o Indicador de ambiente , ele faz exatamente o que você deseja.

Este módulo ajudará você a manter a calma enquanto trabalha em seus diferentes ambientes, adicionando uma barra de cores configurável a cada um de seus ambientes.

Ele também se integra muito bem ao Admin Menu.

sanzante
fonte
7

Conforme mencionado na 1ª resposta, environment_indicator é o que você está procurando.

Bem, também usamos o mesmo tipo de modelo de desenvolvimento e, para facilitar o uso, se o módulo de recursos for usado, você poderá ter as configurações gravadas em um arquivo. Isso torna a mudança de cor automatizada.

Siga o código abaixo, isso pode ser importado através do módulo Recursos.

/**
 * Implements hook_default_environment_indicator_environment().
 */
function mymodule_default_environment_indicator_environment() {
  $export = array();

  $environment = new stdClass();
  $environment->disabled = FALSE; /* Edit this to true to make a default environment disabled initially */
  $environment->api_version = 1;
  $environment->machine = 'live';
  $environment->name = 'Live';
  $environment->regexurl = 'example.com';
  $environment->settings = array(
    'color' => '#bb0000',
    'text_color' => '#ffffff',
    'weight' => '',
    'position' => 'top',
    'fixed' => 0,
  );
  $export['live'] = $environment;

  $environment = new stdClass();
  $environment->disabled = FALSE; /* Edit this to true to make a default environment disabled initially */
  $environment->api_version = 1;
  $environment->machine = 'staging';
  $environment->name = 'Staging';
  $environment->regexurl = 'stage.example.com';
  $environment->settings = array(
    'color' => '#000099',
    'text_color' => '#ffffff',
    'weight' => '',
    'position' => 'top',
    'fixed' => 0,
  );
  $export['staging'] = $environment;

  $environment = new stdClass();
  $environment->disabled = FALSE; /* Edit this to true to make a default environment disabled initially */
  $environment->api_version = 1;
  $environment->machine = 'dev';
  $environment->name = 'Dev';
  $environment->regexurl = 'dev.example.com';
  $environment->settings = array(
    'color' => '#000066',
    'text_color' => '#ffffff',
    'weight' => '',
    'position' => 'top',
    'fixed' => 0,
  );
  $export['dev'] = $environment;

  return $export;
}
Aneek Mukhopadhyay
fonte
A resposta do módulo foi selecionada, mas ainda há um voto positivo para isso. Muitíssimo obrigado.
Rick