Skip to main content


Move to Gitea


Hi !Friendica Developers,

how close are we to move to Gitea? I may lose access to GitHub in April because of their stupid password policy and my stubbornness not to comply with stupid policies.

Add to that the fact it now belongs to Microsoft and it's a question of time before some or all of it becomes either paying or restricted to use with Microsoft products.

I'm aware of the cost of such a move for the project visibility but circumstances are pressing and I may lose the ability to contribute to issues and PRs.
in reply to Hypolite Petovan

We still have got problems with the automated tests, haven't we? The tests are important (habe I really said that?), I don't want to lose them.

Concerning Microsoft I'm clearly biased, being a professional developer for a product that is distributed by Microsoft and working for a Microsoft partner, using Microsoft tools and visiting Microsoft conferences :-D
in reply to Hypolite Petovan

@Hypolite Petovan this kind of move could be huge. github to gitea is maybe harder than github to gitlab instance ?
i'm not sure gitea offers same facilities for issues tracking and pull requests? i think on gitlab there is a github import which manages historic of other things than just git.
in reply to Valvin

Thanks for your suggestion, we already have a running Gitea instance that's just mirroring the git repository hosted at GitHub for now so the move will be mostly about issues and like @Michael Vogel said, about integration tests.

@Philipp Holzer Where are we with Drone CI since https://friendica.philipp.info/display/f1417ed3705b1d67f008f90822007726 ?
in reply to Hypolite Petovan

The mirror instance is running. But I think when we move, we have to delete the mirrors and re-import the repositories without the "mirror" aspect so that the tickets get imported. IIRC but I'll re-evaluate this.
in reply to Tobias

So, in theory if you set up a new migration one can check boxes to migrate issues, pull requests, releases and wikis as well. I've renamed the "dir" repository (as that had issues) and tried recreating the migration; but that seems to hit an endless loop.

So I'll do a local try, installing gitea and try to migrate the "dir" repository with all the data around it to see if it is a general problem or one rooted in the repository "already existed" once on the server.

As far as I could see there is no "migrate the issues now" button. Which would be useful now for stopping the mirror and do a final import of the issues etc..
in reply to Philipp Holzer

Thanks for the update, does this mean we could seamlessly move to Gitea?
in reply to Hypolite Petovan

@Hypolite Petovan @Philipp Holzer I guess not seamlessly ;-) I cloned the friendica/docker repository last year to friendica/testdocker at gitea. The repo was not synced since then, so you can see the snapshot from a year ago. tickets and closed PRs.

I think I'll need to remove the old mirrors and recreate the repositories without the syncing and from the moment of the move that repository / ticket collection etc will be the reference one for our usage. The github repo will stay untouched from that.

Maybe start with some unimportent repositories (the directory maybe) after the release but ahead of the hackathon?
in reply to Hypolite Petovan

@Hypolite Petovan @Philipp Holzer I've cloned the "friendica-directory" repository to gitea, including issues, wiki etc..

It is not a mirror, so work on this should likely be done now at gitea.
in reply to Tobias

Thanks, I’ve received an issue somewhat recently at friendica-directory, I’ll try the whole issue-PR workflow this week
in reply to Hypolite Petovan

@Hypolite Petovan yep, this one https://git.friendi.ca/friendica/friendica-directory/issues/79 I have not archived the repository on github yet... but I think even if there is another issue reported it should be ok to test with.
Unknown parent

Hypolite Petovan
I measure this reliability by the frequency of test failures caused by the unavailability of one of our Composer dependencies which happen to be hosted there. And I don't remember any such instance in quite a while, @utzer did a fine job overhauling the server.
Unknown parent

@Roland Häder the repository structure at git.friendi.ca mirrors the structure at github. So when you are currently pulling from github.com/friendica/friendica you would then pull from git.friendi.ca/friendica/friendica.

At the moment random signed up users have a limit for newly created repositories, but core and addons is possible. To raise this limit one has to contact the gitea admins.
in reply to Hypolite Petovan

@Hypolite Petovan @Andy H3 ah, only the old server was slow... the new one is much fast, mainly IO is faster. Main work is done by @Philipp Holzer, not me.
Unknown parent

@Andy H3 @Hypolite Petovan @Philipp Holzer I do a daily backup, if anyone is interested he/she can have a backup for the server, I just need SSH accessible space and will run a backup onto that space and provide the borg key for the backup.
in reply to utzer [Friendica]

@utzer can you send me a/your public ssh key? I will add it to a new account of my (hetzner) storage box and create a sub-directory for the friendica sources for you :-)
in reply to Hypolite Petovan

@Tobias we also need to check the SSH access for gitea? I guess some people are using SSH for pushing maybe? Or is https ok?
This entry was edited (2 years ago)
in reply to Tobias

@Tobias problem is, 22 is taken... and well, for many people IPv6 is too new and too fancy. :-D
in reply to utzer [Friendica]

@utzer jepp, ssh does currently not work... something for the tinker list :) there is also a "interesting" localhost in the ssh path to be used, so that needs definitively some work and thinking before.
in reply to utzer [Friendica]

@utzer I did a quick look and it seems that we can use gitea build in ssh server with any port we like. I've also found that localhost in the config :-) Pick a port and let me know about your pick, then I'll try changing the gitea config accordingly.
in reply to Tobias

@Tobias I think for this I have to shutdown the vps, rare task.

@Philipp Holzer here I would see running checks, which now run against gitea or still against github?

@Tobias wondering when the time is good to shutdown and then directly restart the server.
in reply to utzer [Friendica]

@utzer the tests are all done with our Drone now but they are done only on reporistories that are on github at the moment.

Best time? Don't know ;-) OTOH you are restarting the server, it's not a long downtime, so it should not have a big impact I guess.
in reply to Hypolite Petovan

I've been able to transfer the remotes from GitHub to Gitea on both the production directory and my local clone to my own fork on Gitea. I've also been able to push a new branch on my fork. I've been surprised not to be prompted for authentication but I set up application keys to interact with Gitea three years ago!

I'll keep on the issue-resolving workflow and I'll report any success or failure.
in reply to Hypolite Petovan

I managed to create a release for friendica-directory: https://git.friendi.ca/friendica/friendica-directory/releases/tag/v2.3.2

But I can't upload the usual project archive to Gitea because it now is larger than 4MB. Not sure if the limit is set at the Gitea level or at the PHP level on the machine.
in reply to Hypolite Petovan

@Hypolite Petovan likely some default value we have not touched yet because there was no need to think about such a limit ;-) I'll put it on my ToDo list
in reply to Tobias

@utzer is it possible, that the 4MB upload limit are coming from the proxy leading to the gitea instance? gitea had a limit of 3MB which I raised to 10MB (for now and testing) and the local nginx had no limit set. Could you have a look?
in reply to Tobias

@Tobias could be. Not sure. What is default for Nginx?
I can increase that.
This entry was edited (2 years ago)
in reply to Tobias

It looked like a limitation set by Gitea (or the underlying PHP platform), not by nginx. I didn't get a web server error, I got a nicely formatted Gitea error.