diff --git a/cmd/hivemind/main.go b/cmd/hivemind/main.go index 617dad7..7496017 100644 --- a/cmd/hivemind/main.go +++ b/cmd/hivemind/main.go @@ -9,18 +9,18 @@ import ( "strconv" "syscall" - "git.wzray.com/homelab/mastermind/internal/config" - "git.wzray.com/homelab/mastermind/internal/registry" - "git.wzray.com/homelab/mastermind/internal/roles" - "git.wzray.com/homelab/mastermind/internal/roles/dns" - "git.wzray.com/homelab/mastermind/internal/roles/host" - "git.wzray.com/homelab/mastermind/internal/roles/master" - "git.wzray.com/homelab/mastermind/internal/roles/node" - "git.wzray.com/homelab/mastermind/internal/state" - "git.wzray.com/homelab/mastermind/internal/types" - "git.wzray.com/homelab/mastermind/internal/web/client" - "git.wzray.com/homelab/mastermind/internal/web/middleware" - "git.wzray.com/homelab/mastermind/internal/web/server" + "git.wzray.com/homelab/hivemind/internal/config" + "git.wzray.com/homelab/hivemind/internal/registry" + "git.wzray.com/homelab/hivemind/internal/roles" + "git.wzray.com/homelab/hivemind/internal/roles/dns" + "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" + "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" "github.com/rs/zerolog" "github.com/rs/zerolog/log" "github.com/rs/zerolog/pkgerrors" diff --git a/config.toml b/config.toml index 092bfb1..99f01dd 100644 --- a/config.toml +++ b/config.toml @@ -1,19 +1,19 @@ [node] log_level = "DEBUG" -hostname = "" -endpoint = "" -bootstrap_master = "" -keepalive_interval = 1 +address = "laptop.spb.wzray.com" +hostname = "laptop.spb.wzray.com" +bootstrap_master = "hicpu.spb.wzray.com" +keepalive_interval = 10 [roles.master] -observer_interval = 4 +observer_interval = 1 [roles.dns] use_systemd = false [roles.host] -domain = "" -ip = "" -local_address = "" -internal_entrypoint = "" -external_entrypoint = "" +domain = "traefik.wzray.com" +ip = "10.161.4.11" +local_address = "10.161.4.11" +internal_entrypoint = "https" +external_entrypoint = "ehttps" diff --git a/go.mod b/go.mod index 9923039..eceeb1b 100644 --- a/go.mod +++ b/go.mod @@ -1,4 +1,4 @@ -module git.wzray.com/homelab/mastermind +module git.wzray.com/homelab/hivemind go 1.25.5 diff --git a/internal/config/config.go b/internal/config/config.go index dafd481..25ee12d 100644 --- a/internal/config/config.go +++ b/internal/config/config.go @@ -5,7 +5,7 @@ import ( "fmt" "os" - "git.wzray.com/homelab/mastermind/internal/types" + "git.wzray.com/homelab/hivemind/internal/types" "github.com/BurntSushi/toml" ) diff --git a/internal/registry/filestorage.go b/internal/registry/filestorage.go index 3fe4247..0891dda 100644 --- a/internal/registry/filestorage.go +++ b/internal/registry/filestorage.go @@ -8,7 +8,7 @@ import ( "sync" "time" - "git.wzray.com/homelab/mastermind/internal/types" + "git.wzray.com/homelab/hivemind/internal/types" ) type FileStorage struct { diff --git a/internal/registry/registry.go b/internal/registry/registry.go index 8269c47..17f7186 100644 --- a/internal/registry/registry.go +++ b/internal/registry/registry.go @@ -6,7 +6,7 @@ import ( "sync" "time" - "git.wzray.com/homelab/mastermind/internal/types" + "git.wzray.com/homelab/hivemind/internal/types" "github.com/rs/zerolog/log" ) diff --git a/internal/registry/storage.go b/internal/registry/storage.go index 6f8ceab..590a226 100644 --- a/internal/registry/storage.go +++ b/internal/registry/storage.go @@ -1,6 +1,6 @@ package registry -import "git.wzray.com/homelab/mastermind/internal/types" +import "git.wzray.com/homelab/hivemind/internal/types" type Storage interface { Save(*storedConfig) error diff --git a/internal/roles/dns/dns.go b/internal/roles/dns/dns.go index 2149e5e..d527c60 100644 --- a/internal/roles/dns/dns.go +++ b/internal/roles/dns/dns.go @@ -8,10 +8,10 @@ import ( "strings" "sync" - "git.wzray.com/homelab/mastermind/internal/config" - "git.wzray.com/homelab/mastermind/internal/state" - "git.wzray.com/homelab/mastermind/internal/types" - "git.wzray.com/homelab/mastermind/internal/web/client" + "git.wzray.com/homelab/hivemind/internal/config" + "git.wzray.com/homelab/hivemind/internal/state" + "git.wzray.com/homelab/hivemind/internal/types" + "git.wzray.com/homelab/hivemind/internal/web/client" "github.com/rs/zerolog/log" ) diff --git a/internal/roles/host/host.go b/internal/roles/host/host.go index ca91d8b..2b35181 100644 --- a/internal/roles/host/host.go +++ b/internal/roles/host/host.go @@ -8,10 +8,10 @@ import ( "slices" "sync" - "git.wzray.com/homelab/mastermind/internal/config" - "git.wzray.com/homelab/mastermind/internal/state" - "git.wzray.com/homelab/mastermind/internal/types" - "git.wzray.com/homelab/mastermind/internal/web/client" + "git.wzray.com/homelab/hivemind/internal/config" + "git.wzray.com/homelab/hivemind/internal/state" + "git.wzray.com/homelab/hivemind/internal/types" + "git.wzray.com/homelab/hivemind/internal/web/client" "github.com/rs/zerolog/log" ) @@ -37,8 +37,8 @@ func New(state *state.RuntimeState, config config.HostConfig) *Role { func (r *Role) sendUpdate(domains []string, role types.Role) { state := types.HostState{ Domains: domains, + Address: r.config.IpAddress, Hostname: r.state.Self.Hostname, - Address: r.state.Self.Endpoint, } for _, node := range r.state.Registry.ByRole(role) { diff --git a/internal/roles/master/master.go b/internal/roles/master/master.go index 91ffac8..6d2884b 100644 --- a/internal/roles/master/master.go +++ b/internal/roles/master/master.go @@ -4,11 +4,11 @@ import ( "context" "sync" - "git.wzray.com/homelab/mastermind/internal/config" - "git.wzray.com/homelab/mastermind/internal/roles" - "git.wzray.com/homelab/mastermind/internal/state" - "git.wzray.com/homelab/mastermind/internal/types" - "git.wzray.com/homelab/mastermind/internal/web/client" + "git.wzray.com/homelab/hivemind/internal/config" + "git.wzray.com/homelab/hivemind/internal/roles" + "git.wzray.com/homelab/hivemind/internal/state" + "git.wzray.com/homelab/hivemind/internal/types" + "git.wzray.com/homelab/hivemind/internal/web/client" ) type Role struct { @@ -72,7 +72,7 @@ func (r *Role) onLeave(node types.Node) (bool, error) { return false, err } - r.notify(types.PathNodeLeave, node.Hostname) + r.notify(types.PathNodeLeave, node) return true, nil } diff --git a/internal/roles/master/observer.go b/internal/roles/master/observer.go index 8c4c61d..64f69c8 100644 --- a/internal/roles/master/observer.go +++ b/internal/roles/master/observer.go @@ -4,9 +4,9 @@ import ( "context" "time" - "git.wzray.com/homelab/mastermind/internal/state" - "git.wzray.com/homelab/mastermind/internal/types" - "git.wzray.com/homelab/mastermind/internal/web/client" + "git.wzray.com/homelab/hivemind/internal/state" + "git.wzray.com/homelab/hivemind/internal/types" + "git.wzray.com/homelab/hivemind/internal/web/client" "github.com/rs/zerolog/log" ) diff --git a/internal/roles/node/node.go b/internal/roles/node/node.go index 9a0c1b9..762ae4b 100644 --- a/internal/roles/node/node.go +++ b/internal/roles/node/node.go @@ -6,10 +6,10 @@ import ( "sync" "time" - "git.wzray.com/homelab/mastermind/internal/config" - "git.wzray.com/homelab/mastermind/internal/state" - "git.wzray.com/homelab/mastermind/internal/types" - "git.wzray.com/homelab/mastermind/internal/web/client" + "git.wzray.com/homelab/hivemind/internal/config" + "git.wzray.com/homelab/hivemind/internal/state" + "git.wzray.com/homelab/hivemind/internal/types" + "git.wzray.com/homelab/hivemind/internal/web/client" "github.com/rs/zerolog/log" ) diff --git a/internal/roles/role.go b/internal/roles/role.go index b0e9413..4d42f6d 100644 --- a/internal/roles/role.go +++ b/internal/roles/role.go @@ -3,7 +3,7 @@ package roles import ( "context" - "git.wzray.com/homelab/mastermind/internal/types" + "git.wzray.com/homelab/hivemind/internal/types" ) type Role interface { diff --git a/internal/state/runtime.go b/internal/state/runtime.go index d6eb8ee..334b28a 100644 --- a/internal/state/runtime.go +++ b/internal/state/runtime.go @@ -1,8 +1,8 @@ package state import ( - "git.wzray.com/homelab/mastermind/internal/registry" - "git.wzray.com/homelab/mastermind/internal/types" + "git.wzray.com/homelab/hivemind/internal/registry" + "git.wzray.com/homelab/hivemind/internal/types" ) type RuntimeState struct { diff --git a/internal/web/client/client.go b/internal/web/client/client.go index 0c5f4e9..5ea63cd 100644 --- a/internal/web/client/client.go +++ b/internal/web/client/client.go @@ -10,8 +10,8 @@ import ( "net/url" "time" - "git.wzray.com/homelab/mastermind/internal/types" - "git.wzray.com/homelab/mastermind/internal/web/middleware" + "git.wzray.com/homelab/hivemind/internal/types" + "git.wzray.com/homelab/hivemind/internal/web/middleware" ) type client struct { diff --git a/internal/web/server/server.go b/internal/web/server/server.go index e9b8e8e..9ce1c53 100644 --- a/internal/web/server/server.go +++ b/internal/web/server/server.go @@ -5,8 +5,8 @@ import ( "io" "net/http" - "git.wzray.com/homelab/mastermind/internal/types" - "git.wzray.com/homelab/mastermind/internal/web/middleware" + "git.wzray.com/homelab/hivemind/internal/types" + "git.wzray.com/homelab/hivemind/internal/web/middleware" "github.com/rs/zerolog/log" ) diff --git a/internal/web/server/util.go b/internal/web/server/util.go index 78e06b8..6ba2288 100644 --- a/internal/web/server/util.go +++ b/internal/web/server/util.go @@ -4,7 +4,7 @@ import ( "encoding/json" "fmt" - "git.wzray.com/homelab/mastermind/internal/types" + "git.wzray.com/homelab/hivemind/internal/types" ) func fail(format string, a ...any) []byte {