snarfed / bridgy

📣 Connects your web site to social media. Likes, retweets, mentions, cross-posting, and more...
https://brid.gy
Creative Commons Zero v1.0 Universal
727 stars 52 forks source link

Make Bridgy self-hostable, without Google Cloud #1323

Open kuba-orlik opened 2 years ago

kuba-orlik commented 2 years ago

The project seems to rely on Google Cloud. Is it possible to self-host it outside Google's infrastructure, or is it tied to Google?

snarfed commented 2 years ago

It's somewhat tied to GCP right now. The app itself can run in any Python 3 WSGI container, but it uses Google Cloud Datastore (via ndb) and Cloud Tasks. It shouldn't be too hard to migrate from Tasks to a different task scheduler, eg Rabbit, but migrating from Datastore to a different database would take some work. Definitely doable though!

I haven't put much work into supporting alternatives because it's designed to be a single-instance service, not something that users install and run. I'm open to it though, PRs are welcome!

Ryuno-Ki commented 2 years ago

@kuba-orlik What are you imagining?

kuba-orlik commented 2 years ago

I'm imagining a version of Bridgy that I can self-host. I want to automate POSSE, but not using Google's infrastructure... That's be counter-productive for me

snarfed commented 2 years ago

Understood! PRs are welcome. And there are lots of other POSSE options and projects! Many of us in chat have experience here, feel free to jump in and ask.

Ryuno-Ki commented 2 years ago

Yeah, I've got that part. But I was more thinking along the lines of on-premise (say, on Hetzner VPS) or in another cloud provider etc.

Please, share a summary of the chat here if you found a solution.

kuba-orlik commented 2 years ago

I prefer hosting on a VPS, as that makes it the easiest to switch providers.

This idea is slowly cooking in my head, will report here when there's some progress :)

snarfed commented 2 years ago

@kuba-orlik is your idea to migrate Bridgy away from Google Cloud Datastore and Tasks? Or something else?

I don't plan to migrate https://brid.gy/ itself away, but if you hope to make it support both somehow, and you want to track that in this issue, I'm open to that! Otherwise, I'm inclined to close this.

kuba-orlik commented 2 years ago

My idea is to have an option in the code that would enable someone to self-host another instance of bridgy without relying on the Google Cloud infrastructure.

This issue is not about migrating the brid.gy instance itself to that hypothetical new configuration

snarfed commented 2 years ago

Ah, sorry, sure! I meant migrating the code, not the literal https://brid.gy/ instance.

We'd also ideally want these self-hosted instances to be private, ie not allow signups from the general public.

Happy to leave this issue open to track this idea!