diff --git a/docs/luban_install_manual.md b/docs/luban_comman_tools.md similarity index 98% rename from docs/luban_install_manual.md rename to docs/luban_comman_tools.md index 3b26cf1..0445347 100644 --- a/docs/luban_install_manual.md +++ b/docs/luban_comman_tools.md @@ -63,6 +63,7 @@ Luban工具有两种部属方式。 -l,--loglevel 可选参数。 日志级别。默认为INFO。有效值有: TRACE,DEBUG,INFO,WARN,ERROR,FATAL,OFF -c,--cachemetafile 可选参数。 meta缓存文件名。 默认为 .cache.meta -w,--watch 可选参数。 监测目录或者目录列表,以逗号';'分隔。当开启此选项后,生成结束后不会退出程序,而是进入自动生成模式。监听到目标目录发生变化后,自动重新运行生成。省去改动后手动运行生成脚本的麻烦。 + --generateonly 可选参数。 仅生成。不从服务器下载生成结果。可以用于检查服务器是否能成功生成。 -h,--help 可选参数。显示帮助信息 -- 必选参数。 从此参数起,便是 不同job的特有选项 diff --git a/src/Luban.Client/Source/Program.cs b/src/Luban.Client/Source/Program.cs index 9939f83..b61bc57 100644 --- a/src/Luban.Client/Source/Program.cs +++ b/src/Luban.Client/Source/Program.cs @@ -30,6 +30,8 @@ namespace Luban.Client public string CacheMetaInfoFile { get; set; } = ".cache.meta"; public string[] WatchDir { get; set; } + + public bool GenerateOnly { get; set; } } private static NLog.Logger s_logger; @@ -51,6 +53,7 @@ Options: -l --loglevel log level. default INFO. avaliable value: TRACE,DEBUG,INFO,WARN,ERROR,FATAL,OFF -c --cachemetafile cache meta file name. default is '.cache.meta' -w --watch watch data change and regenerate. + --generateonly generate only. not download generate results. -h --help show usage "); } @@ -117,6 +120,11 @@ Options: ops.WatchDir = args[++i].Split(';', ','); break; } + case "--generateonly": + { + ops.GenerateOnly = true; + break; + } case "--": { ++i; @@ -271,19 +279,22 @@ Options: return 1; } - var tasks = new List(); - - foreach (var fg in res.FileGroups) + if (!options.GenerateOnly) { - tasks.Add(DownloadFileUtil.DownloadGeneratedFiles(fg.Dir, fg.Files)); - } + var tasks = new List(); - foreach (var f in res.ScatteredFiles) - { - tasks.Add(DownloadFileUtil.DownloadGeneratedFile(f)); - } + foreach (var fg in res.FileGroups) + { + tasks.Add(DownloadFileUtil.DownloadGeneratedFiles(fg.Dir, fg.Files)); + } - Task.WaitAll(tasks.ToArray()); + foreach (var f in res.ScatteredFiles) + { + tasks.Add(DownloadFileUtil.DownloadGeneratedFile(f)); + } + + Task.WaitAll(tasks.ToArray()); + } return 0; } } diff --git a/src/Luban.ClientServer/Program.cs b/src/Luban.ClientServer/Program.cs index 6441517..5c60058 100644 --- a/src/Luban.ClientServer/Program.cs +++ b/src/Luban.ClientServer/Program.cs @@ -34,6 +34,8 @@ namespace Luban.ClientServer public string[] WatchDir { get; set; } + public bool GenerateOnly { get; set; } + [Option('t', "template_search_path", Required = false, HelpText = "string template search path.")] public string TemplateSearchPath { get; set; } } @@ -55,6 +57,7 @@ Options: -l --loglevel log level. default INFO. avaliable value: TRACE,DEBUG,INFO,WARN,ERROR,FATAL,OFF -c --cachemetafile cache meta file name. default is '.cache.meta' -w --watch watch data change and regenerate. + --generateonly generate only. not download generate results. -t --template_search_path additional template search path -h --help show usage "); @@ -122,6 +125,11 @@ Options: ops.WatchDir = args[++i].Split(';', ','); break; } + case "--generateonly": + { + ops.GenerateOnly = true; + break; + } case "-t": case "--template_search_path": { @@ -305,19 +313,22 @@ Options: return 1; } - var tasks = new List(); - - foreach (var fg in res.FileGroups) + if (!options.GenerateOnly) { - tasks.Add(DownloadFileUtil.DownloadGeneratedFiles(fg.Dir, fg.Files)); - } + var tasks = new List(); - foreach (var f in res.ScatteredFiles) - { - tasks.Add(DownloadFileUtil.DownloadGeneratedFile(f)); - } + foreach (var fg in res.FileGroups) + { + tasks.Add(DownloadFileUtil.DownloadGeneratedFiles(fg.Dir, fg.Files)); + } - Task.WaitAll(tasks.ToArray()); + foreach (var f in res.ScatteredFiles) + { + tasks.Add(DownloadFileUtil.DownloadGeneratedFile(f)); + } + + Task.WaitAll(tasks.ToArray()); + } return 0; } }