README.md 2.08 KB
Newer Older
Philippe Mouchel's avatar
Philippe Mouchel committed
1
2
3
4
5
6
7
8
9
Per-environment configuration module
====================================

Ce projet est un module Drupal permettant le déploiement automatique d'une certaine configuration, selon l'environnement défini.

Pour défininr l'environnement courant, il est recommandé de rajouter cette ligne dans le fichier settings.php de votre Drupal. Ou mieux, dans un fichier settings.local.php, qui sera inclus dans le fichier settings.php.

    $conf['environment'] = 'environment_name';

Philippe Mouchel's avatar
Philippe Mouchel committed
10
Une fois cette variable définie, il suffit d'exécuter la commande Drush suivante.
Philippe Mouchel's avatar
Philippe Mouchel committed
11
12

    drush d-conf
13

Philippe Mouchel's avatar
Philippe Mouchel committed
14
15
16
17
18
19
Elle se basera automatiquement sur la variable ci-dessus pour savoir quelle configuration déployer.

Il est possible de forcer la configuration à déployer, en la donnant comme argument à la commande.

    drush d-conf forced_environment

20
Pour customiser la configuration, il suffit d'implémenter le hook_env_conf_available_env() en suivant l'exemple ci-dessous.
Philippe Mouchel's avatar
Philippe Mouchel committed
21
22
23
24
25
26

    /**
     * Implements hook_env_conf_available_env().
     */
    function mymodulecustom_env_conf_available_env() {
      return array(
Philippe Mouchel's avatar
Philippe Mouchel committed
27
        'first_environment_name' => array(
Philippe Mouchel's avatar
Philippe Mouchel committed
28
29
30
31
32
33
34
35
36
37
38
39
          'callbacks' => array(
            'first_function',
            'second_function',
            ...
          ),
          'include_file' => array(
            'type' => 'inc',
            'module' => 'mymodulecustom',
            'name' => 'mymodulecustom.env_conf',
          ),
          'weight' => 1,
        ),
Philippe Mouchel's avatar
Philippe Mouchel committed
40
41
42
43
44
45
46
47
48
49
50
51
52
        'second_environment_name' => array(
          'callbacks' => array(
            'first_function',
            'third_function',
            ...
          ),
          'include_file' => array(
            'type' => 'inc',
            'module' => 'mymodulecustom',
            'name' => 'mymodulecustom.env_conf',
          ),
          'weight' => 2,
        ),
Philippe Mouchel's avatar
Philippe Mouchel committed
53
54
        ...
      );
Philippe Mouchel's avatar
Philippe Mouchel committed
55
56
    }

57
58
Il est possible d'utiliser les mêmes fonctions de callbacks sur plusieurs environnements, ou d'en définir des différentes pour chaque environnement.

Philippe Mouchel's avatar
Philippe Mouchel committed
59
Il est également possible d'implémenter le hook_env_conf_available_env_alter() pour modifier les configurations par défaut.