option pour ne pas recréer

This commit is contained in:
Jephté Clain 2025-06-16 17:56:44 +04:00
parent cb8e0f1ec0
commit 5e01a69572
5 changed files with 15 additions and 8 deletions

View File

@ -459,7 +459,7 @@ class app {
function getRunfile(): RunFile {
$name = $this->name;
$runfile = $this->getWorkfile($name);
$logfile = $this->getLogfile("$name.out", false);
$logfile = $this->getLogfile("$name.log", false);
return $this->runfile ??= new RunFile($name, $runfile, $logfile);
}

View File

@ -19,6 +19,8 @@ abstract class AbstractStorageApp extends Application {
protected int $action = self::ACTION_QUERY;
protected bool $recreate = true;
protected ?array $args = null;
protected static function isa_cond(string $arg, ?array &$ms=null): bool {
@ -63,7 +65,7 @@ abstract class AbstractStorageApp extends Application {
switch ($this->action) {
case self::ACTION_RESET:
$capacitor->reset(true);
$capacitor->reset($this->recreate);
break;
case self::ACTION_QUERY:
if (!$args) {

View File

@ -2,13 +2,7 @@
namespace nulib\cli;
use nulib\A;
use nulib\app\cli\Application;
use nulib\db\Capacitor;
use nulib\db\CapacitorChannel;
use nulib\db\mysql\MysqlStorage;
use nulib\ext\yaml;
use nulib\file\Stream;
use nulib\output\msg;
use nur\config;
class StorageMysqlApp extends AbstractStorageApp {
@ -28,6 +22,9 @@ class StorageMysqlApp extends AbstractStorageApp {
["-z", "--reset", "name" => "action", "value" => self::ACTION_RESET,
"help" => "réinitialiser le canal",
],
["-n", "--no-recreate", "name" => "recreate", "value" => false,
"help" => "ne pas recréer la table correspondant au canal"
],
["--query", "name" => "action", "value" => self::ACTION_QUERY,
"help" => "lister les lignes correspondant aux valeurs spécifiées. c'est l'action par défaut",
],
@ -35,6 +32,7 @@ class StorageMysqlApp extends AbstractStorageApp {
"help" => "afficher la requête pour créer la table",
],
];
function main() {
$dbconn = A::shift($this->args);
if ($dbconn === null) self::die("Vous devez spécifier la base de données");

View File

@ -22,6 +22,9 @@ class StoragePgsqlApp extends AbstractStorageApp {
["-z", "--reset", "name" => "action", "value" => self::ACTION_RESET,
"help" => "réinitialiser le canal",
],
["-n", "--no-recreate", "name" => "recreate", "value" => false,
"help" => "ne pas recréer la table correspondant au canal"
],
["--query", "name" => "action", "value" => self::ACTION_QUERY,
"help" => "lister les lignes correspondant aux valeurs spécifiées. c'est l'action par défaut",
],
@ -29,6 +32,7 @@ class StoragePgsqlApp extends AbstractStorageApp {
"help" => "afficher la requête pour créer la table",
],
];
function main() {
$dbconn = A::shift($this->args);
if ($dbconn === null) self::die("Vous devez spécifier la base de données");

View File

@ -21,6 +21,9 @@ class StorageSqliteApp extends AbstractStorageApp {
["-z", "--reset", "name" => "action", "value" => self::ACTION_RESET,
"help" => "réinitialiser le canal",
],
["-n", "--no-recreate", "name" => "recreate", "value" => false,
"help" => "ne pas recréer la table correspondant au canal"
],
["--query", "name" => "action", "value" => self::ACTION_QUERY,
"help" => "lister les lignes correspondant aux valeurs spécifiées. c'est l'action par défaut",
],