mozillazg / pypy

The unofficial GitHub mirror of PyPy (mirrored via https://github.com/mozillazg/job-mirror-hg-repos)
https://foss.heptapod.net/pypy/pypy
Other
443 stars 64 forks source link

how is this being mirrored? #5

Open mattip opened 3 years ago

mattip commented 3 years ago

I am a PyPy dev, and am considering how we can use some of the nice CI providers available to github projects but not available to other code hosting sites like foss.heptapod.net

I am curious how you are mirroring this. Is there a machine running a cron job somewhere? Would it be reasonable to mirror via a github actions cron task?

mozillazg commented 3 years ago

@mattip Sorry for my late reply.

I am curious how you are mirroring this

I mirrored this via a fork version of https://github.com/fingolfin/git-remote-hg

Is there a machine running a cron job somewhere?

Yes. I run a job via crontab on my vps.

Would it be reasonable to mirror via a github actions cron task?

Yes, it's possible. Looks like I should merge to use github action instead of crontab, I'll try it later.

mattip commented 3 years ago

I think the version at https://github.com/mnauw/git-remote-hg works better

mozillazg commented 3 years ago

@mattip Thanks for your share, I'll try it when I start to merge the job.

mozillazg commented 3 years ago

@mattip Just create a demo for mirror hg repo with github action ( via https://github.com/mozillazg/git-remote-hg ) and it works:

https://github.com/mozillazg/test-hg-mirror-with-gh-action

This repo will mirror https://foss.heptapod.net/pypy/buildbot to https://github.com/mozillazg/pypy-buildbot

BTW, I am not trying https://github.com/mnauw/git-remote-hg yet, looks like it's more powerful.

mozillazg commented 3 years ago

I mirrored this via a fork version of fingolfin/git-remote-hg

Sorry for this message, I misremembered. In fact, I used a fork version of https://github.com/felipec/git-remote-hg, I have pushed the modified codes from my vps to https://github.com/mozillazg/git-remote-hg

mattip commented 3 years ago

Wow, thanks! What will happen the next time it runs, will it recreate the repo all over again or will it only pick up the changes?

mozillazg commented 3 years ago

It'll recreate the repo all over again, but git push will only push the changes.

mgorny commented 1 year ago

@mozillazg, have you made any progress wrt updating the automation for this repo? We find it very helpful for PyPy packaging on Gentoo but the mirroring delays are a bit of a problem.

Right now I see that default branch has been synced but the release branches or tags haven't.

mozillazg commented 1 year ago

@mgorny Thank you for your feedback. I haven't made any changes to the automated synchronization process recently, so it seems there might be an issue somewhere that has prevented the latest tags from being synced. I will fix it as soon as possible.

mozillazg commented 1 year ago

Right now I see that default branch has been synced but the release branches or tags haven't.

@mgorny The issue has been resolved.

mgorny commented 1 year ago

Right now I see that default branch has been synced but the release branches or tags haven't.

@mgorny The issue has been resolved.

Thanks. Unfortunately, release-pypy2.7-v7.3.12rc1 still isn't there, and release-pypy2.7-v7.x branch seems outdated.

mozillazg commented 1 year ago

Unfortunately, release-pypy2.7-v7.3.12rc1 still isn't there, and release-pypy2.7-v7.x branch seems outdated.

@mgorny Thank you for the reminder. After checking, I found that the reason these two branches were not synchronized is that there is a case in the data of these two branches that the git-remote-hg script I used cannot handle. I plan to try switching to https://github.com/mnauw/git-remote-hg.

mozillazg commented 1 year ago

@mgorny

Unfortunately, release-pypy2.7-v7.3.12rc1 still isn't there, and release-pypy2.7-v7.x branch seems outdated.

The issue has been resolved. Please check again.

mattip commented 1 year ago

Thanks! Did you use https://github.com/mnauw/git-remote-hg as-is or did you need to modify it?

mozillazg commented 1 year ago

Thanks! Did you use https://github.com/mnauw/git-remote-hg as-is or did you need to modify it?

@mattip

The https://github.com/mnauw/git-remote-hg cannot handle the repository of PyPy. I am currently using https://github.com/mozillazg/git-remote-hg, which is modified based on the latest version of https://github.com/felipec/git-remote-hg.

mozillazg commented 1 year ago

Would it be reasonable to mirror via a github actions cron task?

@mattip

I have completed the migration and implemented regular synchronization using GitHub Actions today:

https://github.com/mozillazg/job-mirror-hg-repos/blob/master/.github/workflows/main.yml#L54-L67

mattip commented 1 year ago

Cool!

mattip commented 1 year ago

Maybe you could mention that repo in the README here or in the About blurb in the upper-right corner? Also, how can I contribute? I see a "donate" link but it goes to https://mozillazg.com/wechat_donate.jpeg, which unfortunately I cannot read.

mozillazg commented 1 year ago

Maybe you could mention that repo in the README here or in the About blurb in the upper-right corner?

👌 I have updated the content of the About blurb to mention that repo.

how can I contribute? I see a "donate" link but it goes to https://mozillazg.com/wechat_donate.jpeg, which unfortunately I cannot read.

No need to be so polite. Compared to your contributions to the PyPy community, my work is just a drop in the bucket. That donation link is only for Chinese developers, as GitHub Sponsor does not support bank accounts from China.

mgorny commented 1 year ago

Thanks a lot! Your work is of great help to us in Gentoo, and to me specifically as it saves me from having to figure out how to use Mercurial ;-).