github.com/drud/ddev@v1.21.5-alpha1.0.20230226034409-94fcc4b94453/pkg/ddevapp/drupal/drupal8/settings.ddev.php (about)

     1  <?php
     2  {{ $config := . }}
     3  /**
     4   * @file
     5   * {{ $config.Signature }}: Automatically generated Drupal settings file.
     6   * ddev manages this file and may delete or overwrite the file unless this
     7   * comment is removed.  It is recommended that you leave this file alone.
     8   */
     9  
    10  $host = "{{ $config.DatabaseHost }}";
    11  $port = {{ $config.DatabasePort }};
    12  $driver = "{{ $config.DatabaseDriver }}";
    13  
    14  // If DDEV_PHP_VERSION is not set but IS_DDEV_PROJECT *is*, it means we're running (drush) on the host,
    15  // so use the host-side bind port on docker IP
    16  if (empty(getenv('DDEV_PHP_VERSION') && getenv('IS_DDEV_PROJECT') == 'true')) {
    17    $host = "{{ $config.DockerIP }}";
    18    $port = {{ $config.DBPublishedPort }};
    19  }
    20  
    21  $databases['default']['default'] = array(
    22    'database' => "{{ $config.DatabaseName }}",
    23    'username' => "{{ $config.DatabaseUsername }}",
    24    'password' => "{{ $config.DatabasePassword }}",
    25    'host' => $host,
    26    'driver' => $driver,
    27    'port' => $port,
    28    'prefix' => "{{ $config.DatabasePrefix }}",
    29  );
    30  
    31  $settings['hash_salt'] = '{{ $config.HashSalt }}';
    32  
    33  // This will prevent Drupal from setting read-only permissions on sites/default.
    34  $settings['skip_permissions_hardening'] = TRUE;
    35  
    36  // This will ensure the site can only be accessed through the intended host
    37  // names. Additional host patterns can be added for custom configurations.
    38  $settings['trusted_host_patterns'] = ['.*'];
    39  
    40  // Don't use Symfony's APCLoader. ddev includes APCu; Composer's APCu loader has
    41  // better performance.
    42  $settings['class_loader_auto_detect'] = FALSE;
    43  
    44  // This specifies the default configuration sync directory.
    45  // For D8 before 8.8.0, we set $config_directories[CONFIG_SYNC_DIRECTORY] if not set
    46  if (version_compare(Drupal::VERSION, "8.8.0", '<') &&
    47    empty($config_directories[CONFIG_SYNC_DIRECTORY])) {
    48    $config_directories[CONFIG_SYNC_DIRECTORY] = 'sites/default/files/sync';
    49  }
    50  // For D8.8/D8.9, set $settings['config_sync_directory'] if neither
    51  // $config_directories nor $settings['config_sync_directory is set
    52  if (version_compare(DRUPAL::VERSION, "8.8.0", '>=') &&
    53    empty($config_directories[CONFIG_SYNC_DIRECTORY]) &&
    54    empty($settings['config_sync_directory'])) {
    55    $settings['config_sync_directory'] = 'sites/default/files/sync';
    56  }
    57  
    58  // Override drupal/swiftmailer default config to use Mailhog
    59  $config['swiftmailer.transport']['transport'] = 'smtp';
    60  $config['swiftmailer.transport']['smtp_host'] = '127.0.0.1';
    61  $config['swiftmailer.transport']['smtp_port'] = '1025';
    62  $config['swiftmailer.transport']['smtp_encryption'] = '0';
    63