diff options
| author | Stefan Boberg <[email protected]> | 2023-05-25 15:42:36 +0200 |
|---|---|---|
| committer | GitHub <[email protected]> | 2023-05-25 15:42:36 +0200 |
| commit | 3994bac926bcceb03a89ba74d164dcd687d70db6 (patch) | |
| tree | d967928c38dea7449381c85b1a6a60887964e491 /src/zen/cmds/projectstore.cpp | |
| parent | minor: refcount bump elimination (diff) | |
| download | archived-zen-3994bac926bcceb03a89ba74d164dcd687d70db6.tar.xz archived-zen-3994bac926bcceb03a89ba74d164dcd687d70db6.zip | |
oplog snapshot (#317)
Added "snapshot" oplog RPC
this may be used to bring referenced files into the local store instead of referencing them by filename, thus making the project/oplog transportable
Diffstat (limited to 'src/zen/cmds/projectstore.cpp')
| -rw-r--r-- | src/zen/cmds/projectstore.cpp | 34 |
1 files changed, 23 insertions, 11 deletions
diff --git a/src/zen/cmds/projectstore.cpp b/src/zen/cmds/projectstore.cpp index 70670150a..e95b230b8 100644 --- a/src/zen/cmds/projectstore.cpp +++ b/src/zen/cmds/projectstore.cpp @@ -35,9 +35,12 @@ DropProjectCommand::DropProjectCommand() m_Options.add_option("", "p", "project", "Project name", cxxopts::value(m_ProjectName), "<projectid>"); m_Options.add_option("", "o", "oplog", "Oplog name", cxxopts::value(m_OplogName), "<oplogid>"); m_Options.parse_positional({"project", "oplog"}); + m_Options.positional_help("[<projectid> [<oplogid>]]"); } -DropProjectCommand::~DropProjectCommand() = default; +DropProjectCommand::~DropProjectCommand() +{ +} int DropProjectCommand::Run(const ZenCliOptions& GlobalOptions, int argc, char** argv) @@ -102,9 +105,12 @@ ProjectInfoCommand::ProjectInfoCommand() m_Options.add_option("", "p", "project", "Project name", cxxopts::value(m_ProjectName), "<projectid>"); m_Options.add_option("", "o", "oplog", "Oplog name", cxxopts::value(m_OplogName), "<oplogid>"); m_Options.parse_positional({"project", "oplog"}); + m_Options.positional_help("[<projectid> [<oplogid>]]"); } -ProjectInfoCommand::~ProjectInfoCommand() = default; +ProjectInfoCommand::~ProjectInfoCommand() +{ +} int ProjectInfoCommand::Run(const ZenCliOptions& GlobalOptions, int argc, char** argv) @@ -279,14 +285,12 @@ CreateOplogCommand::Run(const ZenCliOptions& GlobalOptions, int argc, char** arg if (m_ProjectId.empty()) { - ZEN_ERROR("Project name must be given"); - return 1; + throw zen::OptionParseException("project name must be specified"); } if (m_OplogId.empty()) { - ZEN_ERROR("Oplog name must be given"); - return 1; + throw zen::OptionParseException("oplog name must be specified"); } Session.SetUrl({fmt::format("{}/prj/{}/oplog/{}", m_HostName, m_ProjectId, m_OplogId)}); @@ -377,7 +381,9 @@ ExportOplogCommand::ExportOplogCommand() m_Options.parse_positional({"project", "oplog"}); } -ExportOplogCommand::~ExportOplogCommand() = default; +ExportOplogCommand::~ExportOplogCommand() +{ +} int ExportOplogCommand::Run(const ZenCliOptions& GlobalOptions, int argc, char** argv) @@ -644,7 +650,9 @@ ImportOplogCommand::ImportOplogCommand() m_Options.parse_positional({"project", "oplog"}); } -ImportOplogCommand::~ImportOplogCommand() = default; +ImportOplogCommand::~ImportOplogCommand() +{ +} int ImportOplogCommand::Run(const ZenCliOptions& GlobalOptions, int argc, char** argv) @@ -842,7 +850,9 @@ ProjectStatsCommand::ProjectStatsCommand() m_Options.add_option("", "u", "hosturl", "Host URL", cxxopts::value(m_HostName)->default_value(""), "<hosturl>"); } -ProjectStatsCommand::~ProjectStatsCommand() = default; +ProjectStatsCommand::~ProjectStatsCommand() +{ +} int ProjectStatsCommand::Run(const ZenCliOptions& GlobalOptions, int argc, char** argv) @@ -891,7 +901,7 @@ ProjectDetailsCommand::ProjectDetailsCommand() m_Options.add_options()("h,help", "Print help"); m_Options.add_option("", "u", "hosturl", "Host URL", cxxopts::value(m_HostName)->default_value(""), "<hosturl>"); m_Options.add_option("", "c", "csv", "Output in CSV format (default is JSon)", cxxopts::value(m_CSV), "<csv>"); - m_Options.add_option("", "d", "details", "Detailed info on opslog", cxxopts::value(m_Details), "<details>"); + m_Options.add_option("", "d", "details", "Detailed info on oplog", cxxopts::value(m_Details), "<details>"); m_Options.add_option("", "o", "opdetails", "Details info on oplog body", cxxopts::value(m_OpDetails), "<opdetails>"); m_Options.add_option("", "p", "project", "Project name to get info from", cxxopts::value(m_ProjectName), "<projectid>"); m_Options.add_option("", "l", "oplog", "Oplog name to get info from", cxxopts::value(m_OplogName), "<oplogid>"); @@ -904,7 +914,9 @@ ProjectDetailsCommand::ProjectDetailsCommand() "<attachmentdetails>"); } -ProjectDetailsCommand::~ProjectDetailsCommand() = default; +ProjectDetailsCommand::~ProjectDetailsCommand() +{ +} int ProjectDetailsCommand::Run(const ZenCliOptions& GlobalOptions, int argc, char** argv) |