refactor: move http api to a new transport layer
This commit is contained in:
parent
476c4b056f
commit
0448f66ab2
41 changed files with 822 additions and 390 deletions
|
|
@ -10,6 +10,7 @@ import (
|
|||
"strings"
|
||||
"syscall"
|
||||
|
||||
"git.wzray.com/homelab/hivemind/internal/app"
|
||||
"git.wzray.com/homelab/hivemind/internal/config"
|
||||
"git.wzray.com/homelab/hivemind/internal/registry"
|
||||
"git.wzray.com/homelab/hivemind/internal/roles"
|
||||
|
|
@ -17,11 +18,14 @@ import (
|
|||
"git.wzray.com/homelab/hivemind/internal/roles/host"
|
||||
"git.wzray.com/homelab/hivemind/internal/roles/master"
|
||||
"git.wzray.com/homelab/hivemind/internal/roles/node"
|
||||
"git.wzray.com/homelab/hivemind/internal/state"
|
||||
dns_transport "git.wzray.com/homelab/hivemind/internal/transport/dns"
|
||||
host_transport "git.wzray.com/homelab/hivemind/internal/transport/host"
|
||||
master_transport "git.wzray.com/homelab/hivemind/internal/transport/master"
|
||||
node_transport "git.wzray.com/homelab/hivemind/internal/transport/node"
|
||||
"git.wzray.com/homelab/hivemind/internal/types"
|
||||
"git.wzray.com/homelab/hivemind/internal/web/client"
|
||||
"git.wzray.com/homelab/hivemind/internal/web/middleware"
|
||||
"git.wzray.com/homelab/hivemind/internal/web/server"
|
||||
web_client "git.wzray.com/homelab/hivemind/internal/web/client"
|
||||
web_middleware "git.wzray.com/homelab/hivemind/internal/web/middleware"
|
||||
web_server "git.wzray.com/homelab/hivemind/internal/web/server"
|
||||
"github.com/rs/zerolog"
|
||||
"github.com/rs/zerolog/log"
|
||||
"github.com/rs/zerolog/pkgerrors"
|
||||
|
|
@ -87,17 +91,22 @@ func main() {
|
|||
filestore.EnsureExists()
|
||||
registry := registry.New(filestore, self)
|
||||
|
||||
state := state.New(registry, self)
|
||||
|
||||
nodeRole := node.New(state, configuration.Node)
|
||||
|
||||
var builder middleware.MiddlewareBuilder
|
||||
var builder web_middleware.MiddlewareBuilder
|
||||
middlewares := builder.Prepare()
|
||||
|
||||
client.Init(middlewares)
|
||||
client := web_client.New(middlewares)
|
||||
|
||||
listenAddr := fmt.Sprintf("%v:%v", configuration.Node.ListenOn, configuration.Node.Port)
|
||||
server := server.NewServer(listenAddr, middlewares)
|
||||
server := web_server.New(listenAddr, middlewares)
|
||||
|
||||
state := app.NewState(registry, self, app.Clients{
|
||||
Master: master_transport.New(client),
|
||||
DNS: dns_transport.New(client),
|
||||
Host: host_transport.New(client),
|
||||
Node: node_transport.New(client),
|
||||
})
|
||||
|
||||
nodeRole := node.New(state, configuration.Node)
|
||||
|
||||
roles := make([]roles.Role, 0)
|
||||
roles = append(roles, nodeRole)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue