Commit 4bf2fa62 authored by catch's avatar catch
Browse files

Issue #3247553 by alexpott, realityloop: $install_state['settings_verified']...

Issue #3247553 by alexpott, realityloop: $install_state['settings_verified'] incorrectly set when config_sync_directory is missing

(cherry picked from commit 262137dc)
parent ce0dece3
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -388,7 +388,7 @@ function install_begin_request($class_loader, &$install_state) {
  $install_state['database_verified'] = install_verify_database_settings($site_path);
  // A valid settings.php has database settings and a hash_salt value. Other
  // settings will be checked by system_requirements().
  $install_state['settings_verified'] = $install_state['database_verified'] && (bool) Settings::get('hash_salt', FALSE);
  $install_state['settings_verified'] = $install_state['config_verified'] && $install_state['database_verified'] && (bool) Settings::get('hash_salt', FALSE);

  if ($install_state['settings_verified']) {
    try {
+40 −0
Original line number Diff line number Diff line
<?php

namespace Drupal\FunctionalTests\Installer;

use Drupal\Core\Database\Database;

/**
 * Verifies that installing from existing configuration works.
 *
 * @group Installer
 */
class InstallerExistingConfigExistingSettingsTest extends InstallerExistingConfigTest {

  /**
   * {@inheritdoc}
   *
   * Partially configures a preexisting settings.php file before invoking the
   * interactive installer.
   */
  protected function prepareEnvironment() {
    parent::prepareEnvironment();
    // Pre-configure hash salt.
    // Any string is valid, so simply use the class name of this test.
    $this->settings['settings']['hash_salt'] = (object) [
      'value' => __CLASS__,
      'required' => TRUE,
    ];

    // Pre-configure database credentials.
    $connection_info = Database::getConnectionInfo();
    unset($connection_info['default']['pdo']);
    unset($connection_info['default']['init_commands']);

    $this->settings['databases']['default'] = (object) [
      'value' => $connection_info,
      'required' => TRUE,
    ];
  }

}