Configuration: use Valibot and allow multiple forges of one type #1

Merged
Captain_Orb merged 3 commits from rei/config into dev 2025-10-10 11:54:16 +00:00
Owner

This changes the way that Forges are configured so that it's possible to set up multiple forges with one provider (for example, multiple Gitea forges).

The config system is also changed so that env vars are loaded into a nested structure and then validated and transformed using Valibot.

This changes the way that Forges are configured so that it's possible to set up multiple forges with one provider (for example, multiple Gitea forges). The config system is also changed so that env vars are loaded into a nested structure and then validated and transformed using Valibot.
reivilibre added 2 commits 2025-09-30 14:13:51 +00:00
Signed-off-by: Olivier 'reivilibre <git.contact@librepush.net>
Signed-off-by: Olivier 'reivilibre <git.contact@librepush.net>
reivilibre reviewed 2025-09-30 14:14:46 +00:00
@ -8,3 +8,3 @@
authRouter.get("/providers", (_req, res) => {
res.json({ providers: listAvailableForges() });
res.json({ providers: listAvailableForgeIds() });
Author
Owner

I guess this should include more information about each provider at some point, for example the name, icon and maybe URL, so that the frontend can let you choose between them.

I guess this should include more information about each provider at some point, for example the name, icon and maybe URL, so that the frontend can let you choose between them.
Owner

Agreed.

Agreed.
reivilibre requested review from Captain_Orb 2025-09-30 14:14:53 +00:00
reivilibre force-pushed rei/config from 698a6c7e19 to 92b00934a2 2025-09-30 21:45:25 +00:00 Compare
Captain_Orb approved these changes 2025-10-09 23:31:12 +00:00
Captain_Orb left a comment
Owner

LGTM

LGTM
Captain_Orb merged commit 7ebd30b861 into dev 2025-10-10 11:54:16 +00:00
Sign in to join this conversation.
No Reviewers
No Label
2 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: Captain_Orb/MolCI#1
No description provided.