github.com/ddev/ddev@v1.23.2-0.20240519125000-d824ffe36ff3/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']['database'] = "{{ $config.DatabaseName }}"; 22 $databases['default']['default']['username'] = "{{ $config.DatabaseUsername }}"; 23 $databases['default']['default']['password'] = "{{ $config.DatabasePassword }}"; 24 $databases['default']['default']['host'] = $host; 25 $databases['default']['default']['port'] = $port; 26 $databases['default']['default']['driver'] = $driver; 27 28 $settings['hash_salt'] = '{{ $config.HashSalt }}'; 29 30 // This will prevent Drupal from setting read-only permissions on sites/default. 31 $settings['skip_permissions_hardening'] = TRUE; 32 33 // This will ensure the site can only be accessed through the intended host 34 // names. Additional host patterns can be added for custom configurations. 35 $settings['trusted_host_patterns'] = ['.*']; 36 37 // Don't use Symfony's APCLoader. ddev includes APCu; Composer's APCu loader has 38 // better performance. 39 $settings['class_loader_auto_detect'] = FALSE; 40 41 // This specifies the default configuration sync directory. 42 // For D8 before 8.8.0, we set $config_directories[CONFIG_SYNC_DIRECTORY] if not set 43 if (version_compare(Drupal::VERSION, "8.8.0", '<') && 44 empty($config_directories[CONFIG_SYNC_DIRECTORY])) { 45 $config_directories[CONFIG_SYNC_DIRECTORY] = 'sites/default/files/sync'; 46 } 47 // For D8.8/D8.9, set $settings['config_sync_directory'] if neither 48 // $config_directories nor $settings['config_sync_directory is set 49 if (version_compare(DRUPAL::VERSION, "8.8.0", '>=') && 50 empty($config_directories[CONFIG_SYNC_DIRECTORY]) && 51 empty($settings['config_sync_directory'])) { 52 $settings['config_sync_directory'] = 'sites/default/files/sync'; 53 } 54 55 // Override drupal/swiftmailer default config to use Mailpit 56 $config['swiftmailer.transport']['transport'] = 'smtp'; 57 $config['swiftmailer.transport']['smtp_host'] = '127.0.0.1'; 58 $config['swiftmailer.transport']['smtp_port'] = '1025'; 59 $config['swiftmailer.transport']['smtp_encryption'] = '0'; 60 61 // Enable verbose logging for errors. 62 // https://www.drupal.org/forum/support/post-installation/2018-07-18/enable-drupal-8-backend-errorlogdebugging-mode 63 $config['system.logging']['error_level'] = 'verbose';