what would be the best way of replacing supervisord and instead using a direct systemd unit? If we can avoid installing additional management tools it would probably be a good idea
Hey, you can try porting the supervisord configuration into a systemd unit, but I think it will end up being quite complex (handling the venv and 3 processes).
Supervisord as the advantage of playing nicely with Docker too, so I think we will stay with supervisord, at least for now.
So far i have found a way to get the uvicorn working with systemd quite easily What do the two inv processes do? What are they needed for?
I think it makes sense to provide both options. A systemd unit file is normal quite straightforward providing that in the documentation as an alternative would be useful
I support that avoiding extra code by using already installed software for system integration is a great idea!
But there are distributions not using systemd like AlpineLinux/PostmarketOS. If something is moved to systemd anywhere it is always a good idea to look also whether the same could be achieved on a system not using systemd.
I think we can just offer both options. But could anyone please explain what the two inv commands are for? I've asked everywhere and googled and I have no idea what these commands are supposed to do and how to integrate them into systemd
I'm pretty sure those invoke the tasks defined in tasks.py (and implemented in the corresponding files in app/) that do the actual inbound and outbound federation of activities.
Please don't take out supervisord, as it will make it unusable for non-linux users like me.
MattC ( @email@example.com )