X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=src%2FConsole%2FAutomaticInstallation.php;h=33b6f8303fa05498e2f114e2665079c0b7ee2d9b;hb=3f2b0b9422915529a0ea585aa4325b6d2f2f65cd;hp=b3addbc288d2e36939d2c68cd174cdbddf963385;hpb=6ef9ccbb977dbf36eab2c3c2083c22314ed3fce7;p=friendica.git diff --git a/src/Console/AutomaticInstallation.php b/src/Console/AutomaticInstallation.php index b3addbc288..33b6f8303f 100644 --- a/src/Console/AutomaticInstallation.php +++ b/src/Console/AutomaticInstallation.php @@ -1,6 +1,6 @@ The host of the mysql/mariadb database (env MYSQL_HOST) -p|--dbport The port of the mysql/mariadb database (env MYSQL_PORT) + -s|--dbsocket The socket of the mysql/mariadb database (env MYSQL_SOCKET) -d|--dbdata The name of the mysql/mariadb database (env MYSQL_DATABASE) - -U|--dbuser The username of the mysql/mariadb database login (env MYSQL_USER or MYSQL_USERNAME) + -u|--dbuser The username of the mysql/mariadb database login (env MYSQL_USER or MYSQL_USERNAME) -P|--dbpass The password of the mysql/mariadb database login (env MYSQL_PASSWORD) -U|--url The full base URL of Friendica - f.e. 'https://friendica.local/sub' (env FRIENDICA_URL) -B|--phppath The path of the PHP binary (env FRIENDICA_PHP_PATH) @@ -76,6 +77,7 @@ Options Environment variables MYSQL_HOST The host of the mysql/mariadb database (mandatory if mysql and environment is used) MYSQL_PORT The port of the mysql/mariadb database + MYSQL_SOCKET The socket of the mysql/mariadb database MYSQL_USERNAME|MYSQL_USER The username of the mysql/mariadb database login (MYSQL_USERNAME is for mysql, MYSQL_USER for mariadb) MYSQL_PASSWORD The password of the mysql/mariadb database login MYSQL_DATABASE The name of the mysql/mariadb database @@ -93,12 +95,12 @@ Examples bin/console autoinstall --savedb Installs Friendica with environment variables and saves them to the 'config/local.config.php' file - bin/console autoinstall -h localhost -p 3365 -U user -P passwort1234 -d friendica + bin/console autoinstall -H localhost -p 3365 -u user -P password1234 -d friendica -U https://friendica.fqdn Installs Friendica with a local mysql database with credentials HELP; } - public function __construct(App\Mode $appMode, Cache $configCache, IConfig $config, Database $dba, array $argv = null) + public function __construct(App\Mode $appMode, Cache $configCache, IManageConfigValues $config, Database $dba, array $argv = null) { parent::__construct($argv); @@ -108,7 +110,7 @@ HELP; $this->dba = $dba; } - protected function doExecute() + protected function doExecute(): int { // Initialise the app $this->out("Initializing setup..."); @@ -157,12 +159,13 @@ HELP; $db_host = $this->getOption(['H', 'dbhost'], ($save_db) ? (getenv('MYSQL_HOST')) : Installer::DEFAULT_HOST); $db_port = $this->getOption(['p', 'dbport'], ($save_db) ? getenv('MYSQL_PORT') : null); + $db_socket = $this->getOption(['s', 'dbsocket'], ($save_db) ? getenv('MYSQL_SOCKET') : null); $configCache->set('database', 'hostname', $db_host . (!empty($db_port) ? ':' . $db_port : '')); $configCache->set('database', 'database', $this->getOption(['d', 'dbdata'], ($save_db) ? getenv('MYSQL_DATABASE') : '')); $configCache->set('database', 'username', - $this->getOption(['U', 'dbuser'], + $this->getOption(['u', 'dbuser'], ($save_db) ? getenv('MYSQL_USER') . getenv('MYSQL_USERNAME') : '')); $configCache->set('database', 'password', $this->getOption(['P', 'dbpass'], @@ -196,8 +199,7 @@ HELP; $this->out('The Friendica URL has to be set during CLI installation.'); return 1; } else { - $baseUrl = new BaseURL($this->config, []); - $baseUrl->saveByURL($url); + $configCache->set('system', 'url', $url); } $installer->createConfig($configCache); @@ -222,7 +224,7 @@ HELP; $installer->resetChecks(); - if (!$installer->installDatabase($basePathConf)) { + if (!$installer->installDatabase()) { $errorMessage = $this->extractErrors($installer->getChecks()); throw new RuntimeException($errorMessage); } @@ -252,8 +254,8 @@ HELP; } /** - * @param Installer $installer The Installer instance - * @param Cache $configCache The config cache + * @param Installer $installer The Installer instance + * @param \Friendica\Core\Config\ValueObject\Cache $configCache The config cache * * @return bool true if checks were successfully, otherwise false * @throws \Friendica\Network\HTTPException\InternalServerErrorException