aboutsummaryrefslogtreecommitdiff
path: root/cli
diff options
context:
space:
mode:
authorGravatar Kevin Papst <kevinpapst@users.noreply.github.com> 2017-12-10 22:09:54 +0100
committerGravatar Alexandre Alapetite <alexandre@alapetite.fr> 2017-12-10 22:09:54 +0100
commit5c52d9b34bb1f1285f92dd557bb8b8cb222b50f4 (patch)
tree68c8b7b767951480a34cab5ab82fbfd34d15e2aa /cli
parent3902d3f43330504945e78627b4c49e67ae88aea9 (diff)
Check requirement in CLI script (#1711)
* check requirements in actualize_script before executing, fixes #1710 * removed empty whiteline * testing all requirements * incorporated code review feedback * removed code that is already executed in _cli.php * added newline at eof * fixed include problems * fixed include problems
Diffstat (limited to 'cli')
-rw-r--r--cli/_cli.php17
-rwxr-xr-xcli/do-install.php15
2 files changed, 18 insertions, 14 deletions
diff --git a/cli/_cli.php b/cli/_cli.php
index 1b26ea738..fb35c4afb 100644
--- a/cli/_cli.php
+++ b/cli/_cli.php
@@ -5,6 +5,7 @@ if (php_sapi_name() !== 'cli') {
require(dirname(__FILE__) . '/../constants.php');
require(LIB_PATH . '/lib_rss.php');
+require(LIB_PATH . '/lib_install.php');
Minz_Configuration::register('system',
DATA_PATH . '/config.php',
@@ -47,3 +48,19 @@ function done($ok = true) {
fwrite(STDERR, 'Result: ' . ($ok ? 'success' : 'fail') . "\n");
exit($ok ? 0 : 1);
}
+
+function performRequirementCheck($databaseType) {
+ $requirements = checkRequirements($databaseType);
+ if ($requirements['all'] !== 'ok') {
+ $message = 'FreshRSS install failed requirements:' . "\n";
+ foreach ($requirements as $requirement => $check) {
+ if ($check !== 'ok' && !in_array($requirement, array('all', 'pdo', 'message'))) {
+ $message .= '• ' . $requirement . "\n";
+ }
+ }
+ if (!empty($requirements['message'])) {
+ $message .= '• ' . $requirements['message'] . "\n";
+ }
+ fail($message);
+ }
+}
diff --git a/cli/do-install.php b/cli/do-install.php
index 74bbdfcd4..37db85575 100755
--- a/cli/do-install.php
+++ b/cli/do-install.php
@@ -1,7 +1,6 @@
#!/usr/bin/php
<?php
require('_cli.php');
-require(LIB_PATH . '/lib_install.php');
if (!file_exists(DATA_PATH . '/do-install.txt')) {
fail('FreshRSS looks to be already installed! Please use `./cli/reconfigure.php` instead.');
@@ -66,19 +65,7 @@ foreach ($dBparams as $dBparam) {
}
}
-$requirements = checkRequirements($config['db']['type']);
-if ($requirements['all'] !== 'ok') {
- $message = 'FreshRSS install failed requirements:' . "\n";
- foreach ($requirements as $requirement => $check) {
- if ($check !== 'ok' && !in_array($requirement, array('all', 'pdo', 'message'))) {
- $message .= '• ' . $requirement . "\n";
- }
- }
- if (!empty($requirements['message'])) {
- $message .= '• ' . $requirements['message'] . "\n";
- }
- fail($message);
-}
+performRequirementCheck($config['db']['type']);
if (!FreshRSS_user_Controller::checkUsername($options['default_user'])) {
fail('FreshRSS error: invalid default username “' . $options['default_user']