Open johnseed opened 1 year ago
感谢提供建议,如在你的pull request 里提到的:
gitlab自身的rest api的设计不太好,模型并不不稳定,基本每个打版本都会带来较大逻辑上的较大变动。 同时,对于中型规模的公司,这个单python一次拉取半年的数据,需要好几个小时。一旦遇到一些gitlab版本兼容性问题,需要改动脚本,调试,再拉数据,效率较低。
我们目前实际的用法是: 1,通过gitlab hook,实时计算 2,将数据存放到mysql,以repo id+commit hash作为唯一键 3,再加上一个定时job,将每周的数据再次覆盖,避免实时的hook在意外的情况下没有生效 4,新增一个自动添加hook的定时任务
这样基本可靠稳定,且能实时获取数据。并能够随时针对gitlab api 模型不稳定提供兼容。
几年前我在写这个脚本的时候,只是满足最开始的用法,前面提到的这一系列的改动,后面我也会抽空共享出来,希望能够帮助有需要的同学。
感谢提供建议,如在你的pull request 里提到的:
gitlab自身的rest api的设计不太好,模型并不不稳定,基本每个打版本都会带来较大逻辑上的较大变动。 同时,对于中型规模的公司,这个单python一次拉取半年的数据,需要好几个小时。一旦遇到一些gitlab版本兼容性问题,需要改动脚本,调试,再拉数据,效率较低。
我们目前实际的用法是: 1,通过gitlab hook,实时计算 2,将数据存放到mysql,以repo id+commit hash作为唯一键 3,再加上一个定时job,将每周的数据再次覆盖,避免实时的hook在意外的情况下没有生效 4,新增一个自动添加hook的定时任务
这样基本可靠稳定,且能实时获取数据。并能够随时针对gitlab api 模型不稳定提供兼容。
几年前我在写这个脚本的时候,只是满足最开始的用法,前面提到的这一系列的改动,后面我也会抽空共享出来,希望能够帮助有需要的同学。