mirror of
https://github.com/snipe/snipe-it.git
synced 2025-01-23 19:59:18 -08:00
Feat: add no-interactive flag for upgrade.php
Having a no-interactive flag is useful because attempting to automate snipe-it upgrades is currently extremely janky. You have to either: a) read the prompts and pass in the input (the "correct" way) b) pipe in input, e.g. `yes` and hope no new prompts are added. With the `no-interactive` flag, this can be fixed by both allowing new prompts to be added without conflict to user prompts, but also allowing automated upgrades (you could choose to crash, or assign defaults).
This commit is contained in:
parent
d0f171ebc6
commit
20920c262d
10
upgrade.php
10
upgrade.php
|
@ -19,6 +19,7 @@ $app_environment = 'develop';
|
|||
$skip_php_checks = false;
|
||||
$branch = 'master';
|
||||
$branch_override = false;
|
||||
$no_interactive = false;
|
||||
|
||||
// Check for branch or other overrides
|
||||
if ($argc > 1){
|
||||
|
@ -32,6 +33,9 @@ if ($argc > 1){
|
|||
$branch = $argv[$arg];
|
||||
$branch_override = true;
|
||||
break;
|
||||
case '--no-interactive':
|
||||
$no_interactive = true;
|
||||
break;
|
||||
default: // for legacy support from before we started using --branch
|
||||
$branch = $argv[$arg];
|
||||
$branch_override = true;
|
||||
|
@ -81,7 +85,13 @@ if($upgrade_requirements){
|
|||
echo "Found PHP requirements, will check for PHP > $php_min_works and < $php_max_wontwork\n";
|
||||
}
|
||||
// done fetching requirements
|
||||
|
||||
if (!$no_interactive) {
|
||||
$yesno = readline("\nProceed with upgrade? [Y/n]: ");
|
||||
} else {
|
||||
$yesno = "yes";
|
||||
}
|
||||
|
||||
if ($yesno == "yes" || $yesno == "YES" ||$yesno == "y" ||$yesno == "Y"){
|
||||
# don't do anything
|
||||
} else {
|
||||
|
|
Loading…
Reference in a new issue