fix (plugin): order of plugin init

Before this we couldn't have a Endpoint plugin relying on values coming
from the config as the config wasn't initialised yet. This fixes it
This commit is contained in:
MickaelK
2025-04-01 10:34:21 +11:00
parent d81b47b2f5
commit f11d27382f
2 changed files with 16 additions and 13 deletions

View File

@ -14,10 +14,15 @@ import (
)
func main() {
start(Build(App{}))
var (
router *mux.Router = mux.NewRouter()
app = App{}
)
Build(router, app)
Run(router, app)
}
func start(routes *mux.Router) {
func Run(routes *mux.Router, app App) {
// Routes are served via plugins to avoid getting stuck with plain HTTP. The idea is to
// support many more protocols in the future: HTTPS, HTTP2, TOR or whatever that sounds
// fancy I don't know much when this got written: IPFS, solid, ...
@ -30,9 +35,13 @@ func start(routes *mux.Router) {
InitLogger()
InitConfig()
InitPluginList(embed.EmbedPluginList)
for _, obj := range Hooks.Get.HttpEndpoint() {
obj(routes, &app)
}
for _, fn := range Hooks.Get.Onload() {
fn()
}
CatchAll(routes, app)
var wg sync.WaitGroup
for _, obj := range Hooks.Get.Starter() {
wg.Add(1)