你好,世界!GSOC 2020阶段3已经结束,这是一个很好的时间必威国际有限公司Jenkins Windows服务 - Yaml配置支持项目。在本博客文章中,我将在GSOC 2020 - 阶段2和第3阶段宣布更新。如果您尚未了解此项目,我建议阅读这个博客帖子在GSOC 2020-阶段1之后发表。

项目范围

  • Windows服务包装器 - yaml配置支持

  • yaml架构验证

  • 新的CLI.

  • XML Schema验证

yaml配置支持

在WinSw - yaml配置支持下,将完成这些任务。

yaml到对象映射

在yaml对象映射完成并合并。您可以在此中找到所有实现拉请求

扩展Winsw以支持XML和Yaml

此任务已完成并合并。找到这个拉请求

yaml配置支持扩展

目前Winsw中有2个内部插件。RunawayProcesskiller和SharedDirectoryMapper。我们允许用户为这些插件提供用于配置WinSW的相同XML和YAML配置文件中的配置。此任务也是合并的。拉请求

yaml架构验证

用户可以验证yaml配置文件JSON架构文件。用户可以使用Visual Studio市场的Yaml实用工具针对JSON架构验证yaml配置文件。

阶段2和第3阶段的关键更新

  • yaml配置结构

    • 环境变量

      • 现在用户可以将环境变量提供为包含名称和环境变量的名称和值的字典序列。

    • 时间戳值

      • 用户可以以与XML中使用的相同方式指定时间戳值(例如,10毫安5秒3分钟

  • yaml配置文件已发布。yaml配置规范

  • 扩展WinSW以支持XML和YAML

  • Yaml支持扩展

  • yaml架构对json架构的验证

示例yaml配置文件

ID必威国际有限公司姓名必威国际有限公司描述此服务运行Jenkins Autom必威国际有限公司ation Server。env.: -名称:jen必威国际有限公司kins_home.价值'%localappdata%\必威国际有限公司 jenkins.jenkins'-名称:lm_license_file.价值host1; host2.可执行文件java.争论>  --xrs -xmx256m -dhudson.lifecycle = hudson.lifecycle.windowsservicelifecycle -jar“e:\ winsw test \ y必威国际有限公司ml6 \ jenkins.war”--httpport = 8081日志模式旋转onfailure.: -行动:重启延迟10秒-行动:重新启动延迟1小时延期: -ID:KillonStartup.启用是的班级名称winsw.plugins.runawayprocesskiller.runawayprocesskillerextension.设置Pidfile.'%base%\ pid.txt'暂停5000stoprootfirst.错误的-ID:mapnetwordirs.启用是的班级名称winsw.plugins.sharedDirectoryMapper.SharedDirectoryMapper.设置映射: -启用:假标签Nundpath\\ UNC.-启用:假标签mundpath\\ UNC2.

新的CLI.

让我简要解释一下,为什么我们需要一个新的CLI。在Winsw中,我们将保留XML和YAML配置支持。但根据当前实现,用户无法明确指定配置文件。此外,我们也希望让用户跳过架构验证。因此,我们决定进入新的CLI,该CLI更具指令和选项。请阅读我的以前的博客文章了解有关新CLI中的命令和选项的更多信息。

阶段2和第3阶段的关键更新

  • 删除/ redirect命令

  • testwait.命令被删除并添加了等待选择测试命令。

  • stopwait.命令被删除并添加了等待选择停止命令。

怎么试试

用户可以使用以下步骤通过XML和YAML配置文件配置Windows服务包装器。

  1. 创建配置文件(XML或YAML)。

  2. 将与Windows服务包装器可执行名称相同的名称保存。

  3. 将配置文件放在目录中(或在父目录中),其中Windows服务包装器可执行文件位于。

如果XML和Yaml ConfiguraitOn文件,Windows Service Wrapper将由XML配置文件配置。

GSOC 2020阶段2演示

GSOC 2020阶段3演示

未来的作品

  • XML Schema验证

    • XML配置文件将使用XSD文件验证。我已经开始在这个功能上工作,您可以找到此处的实现拉请求

  • yaml配置在启动时验证

如何贡献

您可以在此找到github存储库关联。始终欢迎问题和提取请求。此外,您可以与我们沟通Winsw Gitter.频道,这是一个很好的方法,即在Gitter频道上的13:30 UTC中每周二进行一次项目同步。

关于作者
Budghika chathuranga.

这个作者没有义传记。请参阅下面引用的社交媒体链接。