Gibt es ein Modul, mit dem Sie feststellen können, ob Sie bei Dev, Stage oder Production angemeldet sind?

14

Unser Bereitstellungsmodell hat

  1. Dev
  2. Bühne
  3. Produktion
  4. Failover (MySQL-Replikation und Lastenausgleich)

Unser Problem ist, dass der Server ausgefallen ist. Wir möchten Inhaltseditoren darauf aufmerksam machen, dass ein Failover durchgeführt wird. Außerdem möchten wir sicherstellen, dass sie in den Produktionsbereichen und nicht in einer Entwicklungsbox bearbeitet werden.

Gibt es eine Möglichkeit, die Umgebung zu unterscheiden, nachdem sich ein Benutzer angemeldet hat? Gibt es ein Modul, mit dem die Admin-Leiste in Abhängigkeit vom Hostnamen des Servers farblich gekennzeichnet wird?

Rick
quelle

Antworten:

14

Probieren Sie Environment Indicator aus , es macht genau das, was Sie wollen.

Mit diesem Modul können Sie bei der Arbeit in Ihren verschiedenen Umgebungen auf dem neuesten Stand bleiben, indem Sie jeder Ihrer Umgebungen eine konfigurierbare Farbleiste hinzufügen.

Es lässt sich auch gut in das Admin-Menü integrieren.

sanzante
quelle
7

Wie in der ersten Antwort erwähnt, ist environment_indicator derjenige, den Sie suchen.

Nun, wir verwenden auch die gleiche Art von Entwicklungsmodell. Wenn das Funktionsmodul verwendet wird, können Sie die Einstellungen zur Vereinfachung in eine Datei schreiben. Dadurch wird der Farbwechsel automatisiert.

Befolgen Sie den folgenden Code, der über das Funktionsmodul importiert werden kann.

/**
 * 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
quelle
Wählte das Modul Antwort, aber noch eine Gegenstimme dafür. Vielen, vielen Dank.
Rick