必威国际有限公司小Jenkins gsoc标志

欢迎回来的人!

这篇博文是关于我在Jenkins中的编码阶段2必威国际有限公司机器学习插件本届GSoC 2020。在顺利通过第一阶段的评估和演示后,我们团队开始面对第二阶段的挑战。

总结

编写文档和修复许多错误很好地利用了这一阶段的编码。由于连接到IPython内核的主要特性是在阶段1中完成的,所以我们能够专注于修复小/大错误并为用户编写文档。根据必威国际有限公司詹金斯- 62927Docker代理是为了方便用户而构建的,无需担心python中的插件依赖关系。在弃用Python 2的过程中,我们移植了我们的插件来支持Python 3。我们已经在Conda, venv和Windows环境中测试了我们的插件。机器学习插件已经成功通过端到端测试。对于进一步的讨论/分析,我们需要代码编辑器的特性,因为我们已经做了一个简单的编辑器,它可能在未来的其他方式中有用。公关# 35

机器学习插件的主要功能

  • 运行Jupyter notebook, (Zeppelin) JSON和Python文件

  • 直接运行Python代码

  • 将木星笔记本转换为Python和JSON

  • 配置IPython内核属性

  • 支持在代理上执行笔记本/Python

  • 支持Windows和Linux

即将到来的新特性

  • 从代码中提取图形/地图/图像

  • 根据步骤名称保存工件

  • 为相应的构建生成报告

未来的改进

  • 使用JupyterRestClient

  • 支持多语言内核

    • 注:在GSoC期间没有对未来改进的承诺

码头工人代理

下面的Dockerfile可以用来构建Docker容器,作为机器学习插件的代理。这个docker代理可以用来运行笔记本或python脚本。

Dockerfile
从詹金斯/必威国际有限公司代理:最新维护者Loghi < loghijiaha@gmail.com >用户root运行apt更新& & apt安装——no-install-recommends python3 - y \ python3-pip \ & & rm射频/var/lib/apt/lists/*副本让/让运行pip3安装升级pip安装setuptools & & \ pip3 - no-cache-dir - r /让& & \ ln科幻/usr/bin/python3 /usr/bin/python && \ ln -sf /usr/bin/pip3 /usr/bin/pip必威国际有限公司

移植到Python 3

正如在上次会议中讨论的那样,我们得出的结论是,该插件应该支持Python 3,因为Python 2.7+从2020年初就已经弃用了。docker代理的Pull请求也应该被移植到Python 3支持中。

木星Rest客户端API

Jupyter Notebook服务器API似乎也可以用来运行笔记本电脑和代码。有3个api实现被合并到主程序中。但我们必须专注于设计文件中提出的内容,并完成所有必须的问题/作品。jupiter REST客户机留给以后实现。这也是社区为插件做出贡献的一个很好的开始。

修复了在代理中运行的bug

在构建作业时,有一些与笔记本文件路径相关的bug。主要问题是由连接到IPython内核所需的python依赖关系引起的。所有问题/bug都在给定的时间之前修复。

R支持作为未来的改进

这是我们试图提供的知识一瞥,这个插件可以在未来扩展为多语言支持。有一个结论,应该使用脚本文件的扩展名动态地选择内核(比如eval_model.rbtrain_model.r),而不是为每个内核编写相同的代码。

文档和端到端测试

在存储库中发布了解释良好的文档。手册中有一个指导教程,介绍如何从代理中的git repo中检出一个笔记本文档页面。导师帮助在Linux和Windows上测试我们的插件。

具有重建功能的代码编辑器

代码编辑器被筛选为设计文档中最好的功能。在掌握了Jenkinsfile重放编辑器的思想之后,我必威国际有限公司可以对代码做同样的事情。与此同时,当我们从git获取源代码时,它并不是一种优雅的在原始代码中编辑代码的方式。在讨论之后,我们不得不让PR保持开放状态,如果需要的话,未来可能会有用例。

必威国际有限公司詹金斯LTS更新

插件已经更新以支持Jenkins LTS 2.204.1,因为2.164.3在必威国际有限公司安装管道支持的API/插件时出现了一些问题

实验版本安装

  1. 启用实验更新中心

  2. 搜索机器学习插件然后在旁边的方框上打勾。

  3. 点击安装没有重启

该插件现在应该安装在您的系统上。

关于作者
Loghi Perinpanayagam

斯里兰卡Moratuwa大学计算机科学与工程专业学生。他被选为GSoC 2020数据科学的机器学习插件,用于Jenkins项目。必威国际有限公司对开源项目非常感兴趣并有贡献。