-
Notifications
You must be signed in to change notification settings - Fork 176
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Python重写hub-mirror-action #88
Comments
cc @yi-Xu-0100 @ouuan @ShixiangWang @Ir1d @21ki @JasonkayZK 希望得到你们的建议。:) |
@Yikun actions 的官方的库多数是 JavaScript,如果用 JavaScript 是否对日志和参数更友好。 |
@yi-Xu-0100 Javascript不是我的“母语”。哈哈,维护起来难度就更大了。当然,也不排除可以依靠大家的力量来实现。 我现在的想法可能是这样的: 1. 第一步:Python重构
在python中git操作可以通过[2]这个lib来完成,基本的git操作支持的很完善了。 2. 第二步:独立Python项目也就是说,后续的hub-mirror-action这个组织,可能会有以下几个项目:
[1] https://github.com/Yikun/hub-mirror-action/blob/master/Dockerfile#L8 |
支持使用python改,使用python + 配置的形式我觉得会更方便; |
@Yikun 可以的,这样的话整体的改动少 |
配置指的是?需要给py来个单独的/etc/hubmirro.ini这种?还是类似命令行参数配置支持? |
@Yikun 我主要是对 JavaScript 官方库中对输出的日志整合的部分感觉很好。所以如果对当前项目来说,可能不太有必要强行使用,以维护成本最小为主就好。 后续有需要和空闲的话,我个人可能会重构一个 JavaScript 的 action 版本,做个轮子试试手看看效果😁 |
很棒,支持哈。 |
我说的是配置文件的形式,如果有命令行当然更好; |
Python版本代码已处于基本可用状态:#90 可以使用以下yml的版本试用:
目前Python版代码的核心类包括:
python代码现在还都在一个文件里,后面会拆开。 |
There are many orgnazaitions start to test the python version: openLooKeng: openlookeng/sync-config#3 |
经过上述的几个repo的测试,我觉得已经可以达到合并到主干的要求,如果没有其他问题,我打算在本周内把python分支合入的主干。 |
@ShixiangWang 是的,无需改变,前项兼容的。 另外,你也可以现在提前体验下,把你的配置换为 |
好的,非常感谢哈~ |
In this patch, we rewrite the hub-mirror-action using Python. There are 3 core classes: 1. HubMirror, the main class to interate Mirror and Hub. 2. Mirror, the class for git operations. 3. Hub, the class for repo related remote api operations Close: #88 This is the feature PR. Close: #78 This is a bug fix.
各式各样的实际且潜在的需求 [1],让hub-mirror-action维护和演进越来越不便,可读性也越来越差 [2],这个action已经不再是一个简单的同步脚本了,而是支持着很多参数、功能的action同步服务。
所以,我希望用Python重写hub-mirror-action。
[1] https://github.com/Yikun/hub-mirror-action/issues
[2] https://github.com/Yikun/hub-mirror-action/blob/master/entrypoint.sh#L230-L236
[3] https://github.com/Yikun/hub-mirror-action/blob/cf027c394e684810683705528b53de53ef6aeaab/action.yml
The text was updated successfully, but these errors were encountered: