Compare commits
5 Commits
Author | SHA1 | Date | |
---|---|---|---|
|
67e34e52b8 | ||
|
dc96556b5a | ||
|
31822ab7e7 | ||
|
50e9a4c621 | ||
|
0710ef474f |
@@ -19,14 +19,14 @@
|
|||||||
"bin/baikalstorage"
|
"bin/baikalstorage"
|
||||||
],
|
],
|
||||||
"require": {
|
"require": {
|
||||||
"php": ">=5.5",
|
"php" : "^7.2 || ^8.0",
|
||||||
"sabre/dav" : "~4.1.0",
|
"sabre/dav" : "~4.3.0",
|
||||||
"sabre/vobject": "^4.0",
|
"sabre/vobject": "^4.2.1",
|
||||||
"nesbot/carbon": "^2.0.0",
|
"nesbot/carbon": "^2.0.0",
|
||||||
"laminas/laminas-validator": "^2.13",
|
"laminas/laminas-validator": "^2.13",
|
||||||
"laminas/laminas-stdlib": "^3.2",
|
"laminas/laminas-stdlib": "^3.2",
|
||||||
"psr/container": "^1.0",
|
"psr/container": "^1.0",
|
||||||
"symfony/config": "3.4",
|
"symfony/config": "3.4|^4.0|^5.0",
|
||||||
"symfony/process": "^3.4|^4.0|^5.0",
|
"symfony/process": "^3.4|^4.0|^5.0",
|
||||||
"monolog/monolog": "^2.0",
|
"monolog/monolog": "^2.0",
|
||||||
"symfony/yaml": "~3.0|~4.0",
|
"symfony/yaml": "~3.0|~4.0",
|
||||||
|
@@ -22,7 +22,12 @@ class CreateConfigFileCommand extends Command {
|
|||||||
|
|
||||||
public function addtaskwarriorConfig() {
|
public function addtaskwarriorConfig() {
|
||||||
$configs = [];
|
$configs = [];
|
||||||
$filePath = $this->io->askQuestion(new Question('Where is the location for the taskrc file?'));
|
$taskrcQuestion = new Question('Where is the location for the taskrc file?');
|
||||||
|
$self = $this;
|
||||||
|
$taskrcQuestion->setAutocompleterCallback(function(string $input) use ($self) {
|
||||||
|
return $self->autocompleteFilePathCallback($input);
|
||||||
|
});
|
||||||
|
$filePath = $this->io->askQuestion($taskrcQuestion);
|
||||||
$taskrcFilePath = $filePath . '/.taskrc';
|
$taskrcFilePath = $filePath . '/.taskrc';
|
||||||
if (!file_exists($taskrcFilePath)) {
|
if (!file_exists($taskrcFilePath)) {
|
||||||
throw new \RuntimeException("The taskrc file at $taskrcFilePath does not exist");
|
throw new \RuntimeException("The taskrc file at $taskrcFilePath does not exist");
|
||||||
@@ -70,7 +75,10 @@ class CreateConfigFileCommand extends Command {
|
|||||||
|
|
||||||
// TODO: move create config file code block to function
|
// TODO: move create config file code block to function
|
||||||
$question = new Question('Where to create `config.yaml` configuration file?');
|
$question = new Question('Where to create `config.yaml` configuration file?');
|
||||||
$question->setAutocompleterCallback($this->autocompleteFilePathCallback);
|
$self = $this;
|
||||||
|
$question->setAutocompleterCallback(function(string $input) use ($self) {
|
||||||
|
return $self->autocompleteFilePathCallback($input);
|
||||||
|
});
|
||||||
$filePath = $this->io->askQuestion($question);
|
$filePath = $this->io->askQuestion($question);
|
||||||
|
|
||||||
try {
|
try {
|
||||||
@@ -125,7 +133,14 @@ class CreateConfigFileCommand extends Command {
|
|||||||
$this->configs['general'] = [];
|
$this->configs['general'] = [];
|
||||||
if ($this->io->confirm('Enable logging?')) {
|
if ($this->io->confirm('Enable logging?')) {
|
||||||
$this->configs['general']['logger'] = [];
|
$this->configs['general']['logger'] = [];
|
||||||
$logFilePath = $this->io->askQuestion(new Question('Where to create log file?'));
|
|
||||||
|
$logFileQuestion = new Question('Where to create log file?');
|
||||||
|
$self = $this;
|
||||||
|
$logFileQuestion->setAutocompleterCallback(function(string $input) use ($self) {
|
||||||
|
return $self->autocompleteFilePathCallback($input);
|
||||||
|
});
|
||||||
|
$logFilePath = $this->io->askQuestion($logFileQuestion);
|
||||||
|
|
||||||
$this->configs['general']['logger']['file'] = $this->verifyAndCreateFile($logFilePath, CreateConfigFileCommand::$LOGGER_FILE_NAME);
|
$this->configs['general']['logger']['file'] = $this->verifyAndCreateFile($logFilePath, CreateConfigFileCommand::$LOGGER_FILE_NAME);
|
||||||
|
|
||||||
$logLevelChoiceQuestion = new ChoiceQuestion('Log level (defaults to ERROR)', array_keys(Monolog::getLevels()), 4);
|
$logLevelChoiceQuestion = new ChoiceQuestion('Log level (defaults to ERROR)', array_keys(Monolog::getLevels()), 4);
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
namespace Aerex\BaikalStorage\Configs;
|
namespace Aerex\BaikalStorage\Configs;
|
||||||
|
|
||||||
@@ -21,9 +21,9 @@ class ConfigBuilder implements ConfigurationInterface {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public function getConfigTreeBuilder() {
|
public function getConfigTreeBuilder() {
|
||||||
$treeBuilder = new TreeBuilder();
|
$treeBuilder = new TreeBuilder('configs', 'array');
|
||||||
$rootNode = $treeBuilder->root('configs');
|
$rootNode = $treeBuilder->getRootNode();
|
||||||
$ref = $rootNode->children()
|
$ref = $rootNode->children()
|
||||||
->arrayNode('general')
|
->arrayNode('general')
|
||||||
->children()
|
->children()
|
||||||
->arrayNode('logger')
|
->arrayNode('logger')
|
||||||
@@ -35,12 +35,12 @@ class ConfigBuilder implements ConfigurationInterface {
|
|||||||
->validate()
|
->validate()
|
||||||
->IfNotInArray(['DEBUG', 'INFO', 'NOTICE', 'WARNING', 'ERROR', 'CRITICAL', 'ALERT', 'EMERGENCY'])
|
->IfNotInArray(['DEBUG', 'INFO', 'NOTICE', 'WARNING', 'ERROR', 'CRITICAL', 'ALERT', 'EMERGENCY'])
|
||||||
->thenInvalid('Invalid log level %s')
|
->thenInvalid('Invalid log level %s')
|
||||||
->end()
|
->end()
|
||||||
->end()
|
->end()
|
||||||
->end()
|
->end()
|
||||||
->end()
|
->end()
|
||||||
->end()
|
->end()
|
||||||
->end()
|
->end()
|
||||||
->arrayNode('storages')
|
->arrayNode('storages')
|
||||||
->children();
|
->children();
|
||||||
foreach ($this->configs as $config) {
|
foreach ($this->configs as $config) {
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
namespace Aerex\BaikalStorage\Configs;
|
namespace Aerex\BaikalStorage\Configs;
|
||||||
|
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
namespace Aerex\BaikalStorage;
|
namespace Aerex\BaikalStorage;
|
||||||
|
|
||||||
@@ -14,20 +14,19 @@ class Console extends AbstractConsole {
|
|||||||
|
|
||||||
private function convertToString($input) {
|
private function convertToString($input) {
|
||||||
if (is_array($input)) {
|
if (is_array($input)) {
|
||||||
return json_encode($input);
|
return json_encode($input);
|
||||||
}
|
}
|
||||||
return $input;
|
return $input;
|
||||||
}
|
}
|
||||||
|
|
||||||
public function execute($cmd, $args, $input = null, $envs = []) {
|
public function execute($cmd, $args, $input = null, $envs = []) {
|
||||||
$stdin[] = $cmd;
|
$stdin[] = $cmd;
|
||||||
$stdin = array_merge($stdin, $this->defaultArgs, $args);
|
$stdin = array_merge($stdin, $this->defaultArgs, $args);
|
||||||
|
|
||||||
if (isset($input)) {
|
if (isset($input)) {
|
||||||
$input = $this->convertToString($input);
|
$input = $this->convertToString($input);
|
||||||
}
|
}
|
||||||
$process = new Process(implode(' ', $stdin), null, $envs, $input);
|
$process = new Process($stdin, null, $envs, $input);
|
||||||
$process->inheritEnvironmentVariables();
|
|
||||||
|
|
||||||
try {
|
try {
|
||||||
$process->mustRun();
|
$process->mustRun();
|
||||||
|
Reference in New Issue
Block a user