如何在Cake Script中使用JFrog CLI命令
在Cake Script中执行JFrog CLI命令
前置要求
- 系统已安装JFrog CLI,且完成Artifactory连接配置(可通过
jf c add命令完成) - Cake Script运行环境正常
执行JFrog CLI命令的两种方案
方案一:直接调用命令行
在Cake脚本里通过调用系统命令行执行JFrog CLI,以下是上传命令(jf rt u)的示例:
// 定义上传相关参数 var sourceFiles = "./build/*.nupkg"; var targetRepo = "nuget-local"; var uploadArgs = $"rt u \"{sourceFiles}\" {targetRepo}"; // 执行上传命令 Information("开始上传文件到Artifactory..."); var exitCode = StartProcess("jf", new ProcessSettings { Arguments = uploadArgs }); // 校验执行结果 if (exitCode != 0) { Error("上传操作失败!"); throw new Exception($"JFrog CLI执行返回错误码:{exitCode}"); } Information("上传完成!");
方案二:使用Cake JFrog插件(推荐)
借助Cake社区的官方JFrog插件,能更规范地集成,无需手动拼接命令:
- 先在脚本头部引入插件:
#addin nuget:?package=Cake.JFrog
- 调用插件方法完成上传:
var uploadSettings = new JFrogArtifactoryUploadSettings { SourcePattern = "./build/*.nupkg", TargetRepository = "nuget-local", // 可按需添加额外配置,比如递归上传、排除指定文件等 }; JFrogArtifactoryUpload(uploadSettings);
补充说明
jf rt u是JFrog CLI的文件上传命令,完整语法为jf rt upload <源文件路径/匹配规则> <目标仓库密钥>,可附加参数实现更多功能(比如--recursive开启递归上传、--exclude排除特定文件)- 执行命令前,可通过
jf c use <配置名称>切换已有的Artifactory连接配置
内容的提问来源于stack exchange,提问作者Appu
相关产品推荐
相关产品推荐

