diff --git a/acls_test.go b/acls_test.go index 9dcc40ba..4c63ca7e 100644 --- a/acls_test.go +++ b/acls_test.go @@ -118,7 +118,7 @@ func (s *Suite) TestValidExpandTagOwnersInUsers(c *check.C) { MachineKey: "foo", NodeKey: "bar", DiscoKey: "faa", - Name: "testmachine", + Hostname: "testmachine", IPAddresses: MachineAddresses{netaddr.MustParseIP("100.64.0.1")}, NamespaceID: namespace.ID, RegisterMethod: RegisterMethodAuthKey, @@ -164,7 +164,7 @@ func (s *Suite) TestValidExpandTagOwnersInPorts(c *check.C) { MachineKey: "12345", NodeKey: "bar", DiscoKey: "faa", - Name: "testmachine", + Hostname: "testmachine", IPAddresses: MachineAddresses{netaddr.MustParseIP("100.64.0.1")}, NamespaceID: namespace.ID, RegisterMethod: RegisterMethodAuthKey, @@ -210,7 +210,7 @@ func (s *Suite) TestInvalidTagValidNamespace(c *check.C) { MachineKey: "12345", NodeKey: "bar", DiscoKey: "faa", - Name: "testmachine", + Hostname: "testmachine", IPAddresses: MachineAddresses{netaddr.MustParseIP("100.64.0.1")}, NamespaceID: namespace.ID, RegisterMethod: RegisterMethodAuthKey, @@ -255,7 +255,7 @@ func (s *Suite) TestValidTagInvalidNamespace(c *check.C) { MachineKey: "12345", NodeKey: "bar", DiscoKey: "faa", - Name: "webserver", + Hostname: "webserver", IPAddresses: MachineAddresses{netaddr.MustParseIP("100.64.0.1")}, NamespaceID: namespace.ID, RegisterMethod: RegisterMethodAuthKey, @@ -274,7 +274,7 @@ func (s *Suite) TestValidTagInvalidNamespace(c *check.C) { MachineKey: "56789", NodeKey: "bar2", DiscoKey: "faab", - Name: "user", + Hostname: "user", IPAddresses: MachineAddresses{netaddr.MustParseIP("100.64.0.2")}, NamespaceID: namespace.ID, RegisterMethod: RegisterMethodAuthKey, @@ -368,7 +368,7 @@ func (s *Suite) TestPortNamespace(c *check.C) { MachineKey: "12345", NodeKey: "bar", DiscoKey: "faa", - Name: "testmachine", + Hostname: "testmachine", NamespaceID: namespace.ID, RegisterMethod: RegisterMethodAuthKey, IPAddresses: ips, @@ -410,7 +410,7 @@ func (s *Suite) TestPortGroup(c *check.C) { MachineKey: "foo", NodeKey: "bar", DiscoKey: "faa", - Name: "testmachine", + Hostname: "testmachine", NamespaceID: namespace.ID, RegisterMethod: RegisterMethodAuthKey, IPAddresses: ips, diff --git a/api.go b/api.go index 61ec1b5f..dcdf49a1 100644 --- a/api.go +++ b/api.go @@ -133,7 +133,7 @@ func (h *Headscale) RegistrationHandler(ctx *gin.Context) { return } - hname, err := NormalizeToFQDNRules( + normalizedHostname, err := NormalizeToFQDNRules( req.Hostinfo.Hostname, h.cfg.OIDC.StripEmaildomain, ) @@ -153,7 +153,8 @@ func (h *Headscale) RegistrationHandler(ctx *gin.Context) { // happens newMachine := Machine{ MachineKey: machineKeyStr, - Name: hname, + Hostname: req.Hostinfo.Hostname, + GivenName: normalizedHostname, NodeKey: NodePublicKeyStripPrefix(req.NodeKey), LastSeen: &now, Expiry: &time.Time{}, @@ -361,7 +362,7 @@ func (h *Headscale) handleMachineLogOut( resp := tailcfg.RegisterResponse{} log.Info(). - Str("machine", machine.Name). + Str("machine", machine.Hostname). Msg("Client requested logout") h.ExpireMachine(&machine) @@ -391,7 +392,7 @@ func (h *Headscale) handleMachineValidRegistration( // The machine registration is valid, respond with redirect to /map log.Debug(). - Str("machine", machine.Name). + Str("machine", machine.Hostname). Msg("Client is registered and we have the current NodeKey. All clear to /map") resp.AuthURL = "" @@ -426,7 +427,7 @@ func (h *Headscale) handleMachineExpired( // The client has registered before, but has expired log.Debug(). - Str("machine", machine.Name). + Str("machine", machine.Hostname). Msg("Machine registration has expired. Sending a authurl to register") if registerRequest.Auth.AuthKey != "" { @@ -469,7 +470,7 @@ func (h *Headscale) handleMachineRefreshKey( resp := tailcfg.RegisterResponse{} log.Debug(). - Str("machine", machine.Name). + Str("machine", machine.Hostname). Msg("We have the OldNodeKey in the database. This is a key refresh") machine.NodeKey = NodePublicKeyStripPrefix(registerRequest.NodeKey) h.db.Save(&machine) @@ -594,7 +595,7 @@ func (h *Headscale) handleAuthKey( if machine != nil { log.Trace(). Caller(). - Str("machine", machine.Name). + Str("machine", machine.Hostname). Msg("machine already registered, refreshing with new auth key") machine.NodeKey = nodeKey @@ -603,7 +604,7 @@ func (h *Headscale) handleAuthKey( } else { now := time.Now().UTC() machineToRegister := Machine{ - Name: registerRequest.Hostinfo.Hostname, + Hostname: registerRequest.Hostinfo.Hostname, NamespaceID: pak.Namespace.ID, MachineKey: machineKeyStr, RegisterMethod: RegisterMethodAuthKey, diff --git a/app.go b/app.go index b87fb33c..162ba98d 100644 --- a/app.go +++ b/app.go @@ -298,14 +298,14 @@ func (h *Headscale) expireEphemeralNodesWorker() { time.Now(). After(machine.LastSeen.Add(h.cfg.EphemeralNodeInactivityTimeout)) { log.Info(). - Str("machine", machine.Name). + Str("machine", machine.Hostname). Msg("Ephemeral client removed from database") err = h.db.Unscoped().Delete(machine).Error if err != nil { log.Error(). Err(err). - Str("machine", machine.Name). + Str("machine", machine.Hostname). Msg("🤮 Cannot delete ephemeral machine from the database") } } diff --git a/dns_test.go b/dns_test.go index 5fd30d3b..9df75b12 100644 --- a/dns_test.go +++ b/dns_test.go @@ -161,7 +161,7 @@ func (s *Suite) TestDNSConfigMapResponseWithMagicDNS(c *check.C) { MachineKey: "686824e749f3b7f2a5927ee6c1e422aee5292592d9179a271ed7b3e659b44a66", NodeKey: "686824e749f3b7f2a5927ee6c1e422aee5292592d9179a271ed7b3e659b44a66", DiscoKey: "686824e749f3b7f2a5927ee6c1e422aee5292592d9179a271ed7b3e659b44a66", - Name: "test_get_shared_nodes_1", + Hostname: "test_get_shared_nodes_1", NamespaceID: namespaceShared1.ID, Namespace: *namespaceShared1, RegisterMethod: RegisterMethodAuthKey, @@ -170,7 +170,7 @@ func (s *Suite) TestDNSConfigMapResponseWithMagicDNS(c *check.C) { } app.db.Save(machineInShared1) - _, err = app.GetMachine(namespaceShared1.Name, machineInShared1.Name) + _, err = app.GetMachine(namespaceShared1.Name, machineInShared1.Hostname) c.Assert(err, check.IsNil) machineInShared2 := &Machine{ @@ -178,7 +178,7 @@ func (s *Suite) TestDNSConfigMapResponseWithMagicDNS(c *check.C) { MachineKey: "dec46ef9dc45c7d2f03bfcd5a640d9e24e3cc68ce3d9da223867c9bc6d5e9863", NodeKey: "dec46ef9dc45c7d2f03bfcd5a640d9e24e3cc68ce3d9da223867c9bc6d5e9863", DiscoKey: "dec46ef9dc45c7d2f03bfcd5a640d9e24e3cc68ce3d9da223867c9bc6d5e9863", - Name: "test_get_shared_nodes_2", + Hostname: "test_get_shared_nodes_2", NamespaceID: namespaceShared2.ID, Namespace: *namespaceShared2, RegisterMethod: RegisterMethodAuthKey, @@ -187,7 +187,7 @@ func (s *Suite) TestDNSConfigMapResponseWithMagicDNS(c *check.C) { } app.db.Save(machineInShared2) - _, err = app.GetMachine(namespaceShared2.Name, machineInShared2.Name) + _, err = app.GetMachine(namespaceShared2.Name, machineInShared2.Hostname) c.Assert(err, check.IsNil) machineInShared3 := &Machine{ @@ -195,7 +195,7 @@ func (s *Suite) TestDNSConfigMapResponseWithMagicDNS(c *check.C) { MachineKey: "dec46ef9dc45c7d2f03bfcd5a640d9e24e3cc68ce3d9da223867c9bc6d5e9863", NodeKey: "dec46ef9dc45c7d2f03bfcd5a640d9e24e3cc68ce3d9da223867c9bc6d5e9863", DiscoKey: "dec46ef9dc45c7d2f03bfcd5a640d9e24e3cc68ce3d9da223867c9bc6d5e9863", - Name: "test_get_shared_nodes_3", + Hostname: "test_get_shared_nodes_3", NamespaceID: namespaceShared3.ID, Namespace: *namespaceShared3, RegisterMethod: RegisterMethodAuthKey, @@ -204,7 +204,7 @@ func (s *Suite) TestDNSConfigMapResponseWithMagicDNS(c *check.C) { } app.db.Save(machineInShared3) - _, err = app.GetMachine(namespaceShared3.Name, machineInShared3.Name) + _, err = app.GetMachine(namespaceShared3.Name, machineInShared3.Hostname) c.Assert(err, check.IsNil) machine2InShared1 := &Machine{ @@ -212,7 +212,7 @@ func (s *Suite) TestDNSConfigMapResponseWithMagicDNS(c *check.C) { MachineKey: "dec46ef9dc45c7d2f03bfcd5a640d9e24e3cc68ce3d9da223867c9bc6d5e9863", NodeKey: "dec46ef9dc45c7d2f03bfcd5a640d9e24e3cc68ce3d9da223867c9bc6d5e9863", DiscoKey: "dec46ef9dc45c7d2f03bfcd5a640d9e24e3cc68ce3d9da223867c9bc6d5e9863", - Name: "test_get_shared_nodes_4", + Hostname: "test_get_shared_nodes_4", NamespaceID: namespaceShared1.ID, Namespace: *namespaceShared1, RegisterMethod: RegisterMethodAuthKey, @@ -304,7 +304,7 @@ func (s *Suite) TestDNSConfigMapResponseWithoutMagicDNS(c *check.C) { MachineKey: "686824e749f3b7f2a5927ee6c1e422aee5292592d9179a271ed7b3e659b44a66", NodeKey: "686824e749f3b7f2a5927ee6c1e422aee5292592d9179a271ed7b3e659b44a66", DiscoKey: "686824e749f3b7f2a5927ee6c1e422aee5292592d9179a271ed7b3e659b44a66", - Name: "test_get_shared_nodes_1", + Hostname: "test_get_shared_nodes_1", NamespaceID: namespaceShared1.ID, Namespace: *namespaceShared1, RegisterMethod: RegisterMethodAuthKey, @@ -313,7 +313,7 @@ func (s *Suite) TestDNSConfigMapResponseWithoutMagicDNS(c *check.C) { } app.db.Save(machineInShared1) - _, err = app.GetMachine(namespaceShared1.Name, machineInShared1.Name) + _, err = app.GetMachine(namespaceShared1.Name, machineInShared1.Hostname) c.Assert(err, check.IsNil) machineInShared2 := &Machine{ @@ -321,7 +321,7 @@ func (s *Suite) TestDNSConfigMapResponseWithoutMagicDNS(c *check.C) { MachineKey: "dec46ef9dc45c7d2f03bfcd5a640d9e24e3cc68ce3d9da223867c9bc6d5e9863", NodeKey: "dec46ef9dc45c7d2f03bfcd5a640d9e24e3cc68ce3d9da223867c9bc6d5e9863", DiscoKey: "dec46ef9dc45c7d2f03bfcd5a640d9e24e3cc68ce3d9da223867c9bc6d5e9863", - Name: "test_get_shared_nodes_2", + Hostname: "test_get_shared_nodes_2", NamespaceID: namespaceShared2.ID, Namespace: *namespaceShared2, RegisterMethod: RegisterMethodAuthKey, @@ -330,7 +330,7 @@ func (s *Suite) TestDNSConfigMapResponseWithoutMagicDNS(c *check.C) { } app.db.Save(machineInShared2) - _, err = app.GetMachine(namespaceShared2.Name, machineInShared2.Name) + _, err = app.GetMachine(namespaceShared2.Name, machineInShared2.Hostname) c.Assert(err, check.IsNil) machineInShared3 := &Machine{ @@ -338,7 +338,7 @@ func (s *Suite) TestDNSConfigMapResponseWithoutMagicDNS(c *check.C) { MachineKey: "dec46ef9dc45c7d2f03bfcd5a640d9e24e3cc68ce3d9da223867c9bc6d5e9863", NodeKey: "dec46ef9dc45c7d2f03bfcd5a640d9e24e3cc68ce3d9da223867c9bc6d5e9863", DiscoKey: "dec46ef9dc45c7d2f03bfcd5a640d9e24e3cc68ce3d9da223867c9bc6d5e9863", - Name: "test_get_shared_nodes_3", + Hostname: "test_get_shared_nodes_3", NamespaceID: namespaceShared3.ID, Namespace: *namespaceShared3, RegisterMethod: RegisterMethodAuthKey, @@ -347,7 +347,7 @@ func (s *Suite) TestDNSConfigMapResponseWithoutMagicDNS(c *check.C) { } app.db.Save(machineInShared3) - _, err = app.GetMachine(namespaceShared3.Name, machineInShared3.Name) + _, err = app.GetMachine(namespaceShared3.Name, machineInShared3.Hostname) c.Assert(err, check.IsNil) machine2InShared1 := &Machine{ @@ -355,7 +355,7 @@ func (s *Suite) TestDNSConfigMapResponseWithoutMagicDNS(c *check.C) { MachineKey: "dec46ef9dc45c7d2f03bfcd5a640d9e24e3cc68ce3d9da223867c9bc6d5e9863", NodeKey: "dec46ef9dc45c7d2f03bfcd5a640d9e24e3cc68ce3d9da223867c9bc6d5e9863", DiscoKey: "dec46ef9dc45c7d2f03bfcd5a640d9e24e3cc68ce3d9da223867c9bc6d5e9863", - Name: "test_get_shared_nodes_4", + Hostname: "test_get_shared_nodes_4", NamespaceID: namespaceShared1.ID, Namespace: *namespaceShared1, RegisterMethod: RegisterMethodAuthKey, diff --git a/machine.go b/machine.go index e0b9130b..b1f03f0c 100644 --- a/machine.go +++ b/machine.go @@ -39,8 +39,18 @@ type Machine struct { NodeKey string DiscoKey string IPAddresses MachineAddresses - Name string - Nickname string + + // Hostname represents the name given by the Tailscale + // client during registration + Hostname string + + // Givenname represents either: + // a DNS normalized version of Hostname + // a valid name set by the User + // + // GivenName is the name used in all DNS related + // parts of headscale. + GivenName string NamespaceID uint Namespace Namespace `gorm:"foreignKey:NamespaceID"` @@ -150,7 +160,7 @@ func getFilteredByACLPeers( ) Machines { log.Trace(). Caller(). - Str("machine", machine.Name). + Str("machine", machine.Hostname). Msg("Finding peers filtered by ACLs") peers := make(map[uint64]Machine) @@ -217,7 +227,7 @@ func getFilteredByACLPeers( log.Trace(). Caller(). - Str("machine", machine.Name). + Str("machine", machine.Hostname). Msgf("Found some machines: %v", machines) return authorizedPeers @@ -226,7 +236,7 @@ func getFilteredByACLPeers( func (h *Headscale) ListPeers(machine *Machine) (Machines, error) { log.Trace(). Caller(). - Str("machine", machine.Name). + Str("machine", machine.Hostname). Msg("Finding direct peers") machines := Machines{} @@ -241,7 +251,7 @@ func (h *Headscale) ListPeers(machine *Machine) (Machines, error) { log.Trace(). Caller(). - Str("machine", machine.Name). + Str("machine", machine.Hostname). Msgf("Found peers: %s", machines.String()) return machines, nil @@ -278,7 +288,7 @@ func (h *Headscale) getPeers(machine *Machine) (Machines, error) { log.Trace(). Caller(). - Str("machine", machine.Name). + Str("machine", machine.Hostname). Msgf("Found total peers: %s", peers.String()) return peers, nil @@ -318,7 +328,7 @@ func (h *Headscale) GetMachine(namespace string, name string) (*Machine, error) } for _, m := range machines { - if m.Name == name { + if m.Hostname == name { return &m, nil } } @@ -369,26 +379,27 @@ func (h *Headscale) ExpireMachine(machine *Machine) { } // RenameMachine takes a Machine struct and sets the expire field to now. -func (h *Headscale) RenameMachine(machine *Machine, newName string) { - newNickname, err := NormalizeToFQDNRules( +func (h *Headscale) RenameMachine(machine *Machine, newName string) error { + err := CheckForFQDNRules( newName, - h.cfg.OIDC.StripEmaildomain, ) if err != nil { log.Error(). Caller(). Str("func", "RenameMachine"). - Str("machine", machine.Name). + Str("machine", machine.Hostname). Str("newName", newName). Err(err) - return + return err } - machine.Nickname = newNickname + machine.GivenName = newName h.setLastStateChangeToNow(machine.Namespace.Name) h.db.Save(machine) + + return nil } // RefreshMachine takes a Machine struct and sets the expire field to now. @@ -458,23 +469,23 @@ func (h *Headscale) isOutdated(machine *Machine) bool { } log.Trace(). Caller(). - Str("machine", machine.Name). + Str("machine", machine.Hostname). Time("last_successful_update", lastChange). Time("last_state_change", lastUpdate). - Msgf("Checking if %s is missing updates", machine.Name) + Msgf("Checking if %s is missing updates", machine.Hostname) return lastUpdate.Before(lastChange) } func (machine Machine) String() string { - return machine.Name + return machine.Hostname } func (machines Machines) String() string { temp := make([]string, len(machines)) for index, machine := range machines { - temp[index] = machine.Name + temp[index] = machine.Hostname } return fmt.Sprintf("[ %s ](%d)", strings.Join(temp, ", "), len(temp)) @@ -485,7 +496,7 @@ func (machines MachinesP) String() string { temp := make([]string, len(machines)) for index, machine := range machines { - temp[index] = machine.Name + temp[index] = machine.Hostname } return fmt.Sprintf("[ %s ](%d)", strings.Join(temp, ", "), len(temp)) @@ -578,15 +589,11 @@ func (machine Machine) toNode( keyExpiry = time.Time{} } - name := machine.Name - if len(machine.Nickname) > 0 { - name = machine.Nickname - } var hostname string if dnsConfig != nil && dnsConfig.Proxied { // MagicDNS hostname = fmt.Sprintf( "%s.%s.%s", - name, + machine.GivenName, machine.Namespace.Name, baseDomain, ) @@ -598,7 +605,7 @@ func (machine Machine) toNode( ) } } else { - hostname = machine.Name + hostname = machine.GivenName } hostInfo := machine.GetHostInfo() @@ -639,8 +646,8 @@ func (machine *Machine) toProto() *v1.Machine { NodeKey: machine.NodeKey, DiscoKey: machine.DiscoKey, IpAddresses: machine.IPAddresses.ToStringSlice(), - Name: machine.Name, - Nickname: machine.Nickname, + Name: machine.Hostname, + GivenName: machine.GivenName, Namespace: machine.Namespace.toProto(), // TODO(kradalby): Implement register method enum converter @@ -711,7 +718,7 @@ func (h *Headscale) RegisterMachine(machine Machine, log.Trace(). Caller(). - Str("machine", machine.Name). + Str("machine", machine.Hostname). Msg("Attempting to register machine") h.ipAllocationMutex.Lock() @@ -722,7 +729,7 @@ func (h *Headscale) RegisterMachine(machine Machine, log.Error(). Caller(). Err(err). - Str("machine", machine.Name). + Str("machine", machine.Hostname). Msg("Could not find IP for the new machine") return nil, err @@ -734,7 +741,7 @@ func (h *Headscale) RegisterMachine(machine Machine, log.Trace(). Caller(). - Str("machine", machine.Name). + Str("machine", machine.Hostname). Str("ip", strings.Join(ips.ToStringSlice(), ",")). Msg("Machine registered with the database") @@ -783,7 +790,7 @@ func (h *Headscale) EnableRoutes(machine *Machine, routeStrs ...string) error { if !containsIPPrefix(machine.GetAdvertisedRoutes(), newRoute) { return fmt.Errorf( "route (%s) is not available on node %s: %w", - machine.Name, + machine.Hostname, newRoute, errMachineRouteIsNotAvailable, ) } diff --git a/machine_test.go b/machine_test.go index a455a0bb..02f2d0d7 100644 --- a/machine_test.go +++ b/machine_test.go @@ -27,7 +27,7 @@ func (s *Suite) TestGetMachine(c *check.C) { MachineKey: "foo", NodeKey: "bar", DiscoKey: "faa", - Name: "testmachine", + Hostname: "testmachine", NamespaceID: namespace.ID, RegisterMethod: RegisterMethodAuthKey, AuthKeyID: uint(pak.ID), @@ -53,7 +53,7 @@ func (s *Suite) TestGetMachineByID(c *check.C) { MachineKey: "foo", NodeKey: "bar", DiscoKey: "faa", - Name: "testmachine", + Hostname: "testmachine", NamespaceID: namespace.ID, RegisterMethod: RegisterMethodAuthKey, AuthKeyID: uint(pak.ID), @@ -72,7 +72,7 @@ func (s *Suite) TestDeleteMachine(c *check.C) { MachineKey: "foo", NodeKey: "bar", DiscoKey: "faa", - Name: "testmachine", + Hostname: "testmachine", NamespaceID: namespace.ID, RegisterMethod: RegisterMethodAuthKey, AuthKeyID: uint(1), @@ -94,7 +94,7 @@ func (s *Suite) TestHardDeleteMachine(c *check.C) { MachineKey: "foo", NodeKey: "bar", DiscoKey: "faa", - Name: "testmachine3", + Hostname: "testmachine3", NamespaceID: namespace.ID, RegisterMethod: RegisterMethodAuthKey, AuthKeyID: uint(1), @@ -124,7 +124,7 @@ func (s *Suite) TestListPeers(c *check.C) { MachineKey: "foo" + strconv.Itoa(index), NodeKey: "bar" + strconv.Itoa(index), DiscoKey: "faa" + strconv.Itoa(index), - Name: "testmachine" + strconv.Itoa(index), + Hostname: "testmachine" + strconv.Itoa(index), NamespaceID: namespace.ID, RegisterMethod: RegisterMethodAuthKey, AuthKeyID: uint(pak.ID), @@ -139,9 +139,9 @@ func (s *Suite) TestListPeers(c *check.C) { c.Assert(err, check.IsNil) c.Assert(len(peersOfMachine0), check.Equals, 9) - c.Assert(peersOfMachine0[0].Name, check.Equals, "testmachine2") - c.Assert(peersOfMachine0[5].Name, check.Equals, "testmachine7") - c.Assert(peersOfMachine0[8].Name, check.Equals, "testmachine10") + c.Assert(peersOfMachine0[0].Hostname, check.Equals, "testmachine2") + c.Assert(peersOfMachine0[5].Hostname, check.Equals, "testmachine7") + c.Assert(peersOfMachine0[8].Hostname, check.Equals, "testmachine10") } func (s *Suite) TestGetACLFilteredPeers(c *check.C) { @@ -172,7 +172,7 @@ func (s *Suite) TestGetACLFilteredPeers(c *check.C) { IPAddresses: MachineAddresses{ netaddr.MustParseIP(fmt.Sprintf("100.64.0.%v", strconv.Itoa(index+1))), }, - Name: "testmachine" + strconv.Itoa(index), + Hostname: "testmachine" + strconv.Itoa(index), NamespaceID: stor[index%2].namespace.ID, RegisterMethod: RegisterMethodAuthKey, AuthKeyID: uint(stor[index%2].key.ID), @@ -197,11 +197,11 @@ func (s *Suite) TestGetACLFilteredPeers(c *check.C) { c.Assert(err, check.IsNil) adminMachine, err := app.GetMachineByID(1) - c.Logf("Machine(%v), namespace: %v", adminMachine.Name, adminMachine.Namespace) + c.Logf("Machine(%v), namespace: %v", adminMachine.Hostname, adminMachine.Namespace) c.Assert(err, check.IsNil) testMachine, err := app.GetMachineByID(2) - c.Logf("Machine(%v), namespace: %v", testMachine.Name, testMachine.Namespace) + c.Logf("Machine(%v), namespace: %v", testMachine.Hostname, testMachine.Namespace) c.Assert(err, check.IsNil) machines, err := app.ListMachines() @@ -212,15 +212,15 @@ func (s *Suite) TestGetACLFilteredPeers(c *check.C) { c.Log(peersOfTestMachine) c.Assert(len(peersOfTestMachine), check.Equals, 4) - c.Assert(peersOfTestMachine[0].Name, check.Equals, "testmachine4") - c.Assert(peersOfTestMachine[1].Name, check.Equals, "testmachine6") - c.Assert(peersOfTestMachine[3].Name, check.Equals, "testmachine10") + c.Assert(peersOfTestMachine[0].Hostname, check.Equals, "testmachine4") + c.Assert(peersOfTestMachine[1].Hostname, check.Equals, "testmachine6") + c.Assert(peersOfTestMachine[3].Hostname, check.Equals, "testmachine10") c.Log(peersOfAdminMachine) c.Assert(len(peersOfAdminMachine), check.Equals, 9) - c.Assert(peersOfAdminMachine[0].Name, check.Equals, "testmachine2") - c.Assert(peersOfAdminMachine[2].Name, check.Equals, "testmachine4") - c.Assert(peersOfAdminMachine[5].Name, check.Equals, "testmachine7") + c.Assert(peersOfAdminMachine[0].Hostname, check.Equals, "testmachine2") + c.Assert(peersOfAdminMachine[2].Hostname, check.Equals, "testmachine4") + c.Assert(peersOfAdminMachine[5].Hostname, check.Equals, "testmachine7") } func (s *Suite) TestExpireMachine(c *check.C) { @@ -238,7 +238,7 @@ func (s *Suite) TestExpireMachine(c *check.C) { MachineKey: "foo", NodeKey: "bar", DiscoKey: "faa", - Name: "testmachine", + Hostname: "testmachine", NamespaceID: namespace.ID, RegisterMethod: RegisterMethodAuthKey, AuthKeyID: uint(pak.ID), diff --git a/namespaces_test.go b/namespaces_test.go index 5d873bd6..53680374 100644 --- a/namespaces_test.go +++ b/namespaces_test.go @@ -52,7 +52,7 @@ func (s *Suite) TestDestroyNamespaceErrors(c *check.C) { MachineKey: "foo", NodeKey: "bar", DiscoKey: "faa", - Name: "testmachine", + Hostname: "testmachine", NamespaceID: namespace.ID, RegisterMethod: RegisterMethodAuthKey, AuthKeyID: uint(pak.ID), @@ -142,7 +142,7 @@ func (s *Suite) TestGetMapResponseUserProfiles(c *check.C) { MachineKey: "686824e749f3b7f2a5927ee6c1e422aee5292592d9179a271ed7b3e659b44a66", NodeKey: "686824e749f3b7f2a5927ee6c1e422aee5292592d9179a271ed7b3e659b44a66", DiscoKey: "686824e749f3b7f2a5927ee6c1e422aee5292592d9179a271ed7b3e659b44a66", - Name: "test_get_shared_nodes_1", + Hostname: "test_get_shared_nodes_1", NamespaceID: namespaceShared1.ID, Namespace: *namespaceShared1, RegisterMethod: RegisterMethodAuthKey, @@ -151,7 +151,7 @@ func (s *Suite) TestGetMapResponseUserProfiles(c *check.C) { } app.db.Save(machineInShared1) - _, err = app.GetMachine(namespaceShared1.Name, machineInShared1.Name) + _, err = app.GetMachine(namespaceShared1.Name, machineInShared1.Hostname) c.Assert(err, check.IsNil) machineInShared2 := &Machine{ @@ -159,7 +159,7 @@ func (s *Suite) TestGetMapResponseUserProfiles(c *check.C) { MachineKey: "dec46ef9dc45c7d2f03bfcd5a640d9e24e3cc68ce3d9da223867c9bc6d5e9863", NodeKey: "dec46ef9dc45c7d2f03bfcd5a640d9e24e3cc68ce3d9da223867c9bc6d5e9863", DiscoKey: "dec46ef9dc45c7d2f03bfcd5a640d9e24e3cc68ce3d9da223867c9bc6d5e9863", - Name: "test_get_shared_nodes_2", + Hostname: "test_get_shared_nodes_2", NamespaceID: namespaceShared2.ID, Namespace: *namespaceShared2, RegisterMethod: RegisterMethodAuthKey, @@ -168,7 +168,7 @@ func (s *Suite) TestGetMapResponseUserProfiles(c *check.C) { } app.db.Save(machineInShared2) - _, err = app.GetMachine(namespaceShared2.Name, machineInShared2.Name) + _, err = app.GetMachine(namespaceShared2.Name, machineInShared2.Hostname) c.Assert(err, check.IsNil) machineInShared3 := &Machine{ @@ -176,7 +176,7 @@ func (s *Suite) TestGetMapResponseUserProfiles(c *check.C) { MachineKey: "dec46ef9dc45c7d2f03bfcd5a640d9e24e3cc68ce3d9da223867c9bc6d5e9863", NodeKey: "dec46ef9dc45c7d2f03bfcd5a640d9e24e3cc68ce3d9da223867c9bc6d5e9863", DiscoKey: "dec46ef9dc45c7d2f03bfcd5a640d9e24e3cc68ce3d9da223867c9bc6d5e9863", - Name: "test_get_shared_nodes_3", + Hostname: "test_get_shared_nodes_3", NamespaceID: namespaceShared3.ID, Namespace: *namespaceShared3, RegisterMethod: RegisterMethodAuthKey, @@ -185,7 +185,7 @@ func (s *Suite) TestGetMapResponseUserProfiles(c *check.C) { } app.db.Save(machineInShared3) - _, err = app.GetMachine(namespaceShared3.Name, machineInShared3.Name) + _, err = app.GetMachine(namespaceShared3.Name, machineInShared3.Hostname) c.Assert(err, check.IsNil) machine2InShared1 := &Machine{ @@ -193,7 +193,7 @@ func (s *Suite) TestGetMapResponseUserProfiles(c *check.C) { MachineKey: "dec46ef9dc45c7d2f03bfcd5a640d9e24e3cc68ce3d9da223867c9bc6d5e9863", NodeKey: "dec46ef9dc45c7d2f03bfcd5a640d9e24e3cc68ce3d9da223867c9bc6d5e9863", DiscoKey: "dec46ef9dc45c7d2f03bfcd5a640d9e24e3cc68ce3d9da223867c9bc6d5e9863", - Name: "test_get_shared_nodes_4", + Hostname: "test_get_shared_nodes_4", NamespaceID: namespaceShared1.ID, Namespace: *namespaceShared1, RegisterMethod: RegisterMethodAuthKey, diff --git a/preauth_keys_test.go b/preauth_keys_test.go index 6f233a94..c54c1bf4 100644 --- a/preauth_keys_test.go +++ b/preauth_keys_test.go @@ -78,7 +78,7 @@ func (*Suite) TestAlreadyUsedKey(c *check.C) { MachineKey: "foo", NodeKey: "bar", DiscoKey: "faa", - Name: "testest", + Hostname: "testest", NamespaceID: namespace.ID, RegisterMethod: RegisterMethodAuthKey, AuthKeyID: uint(pak.ID), @@ -102,7 +102,7 @@ func (*Suite) TestReusableBeingUsedKey(c *check.C) { MachineKey: "foo", NodeKey: "bar", DiscoKey: "faa", - Name: "testest", + Hostname: "testest", NamespaceID: namespace.ID, RegisterMethod: RegisterMethodAuthKey, AuthKeyID: uint(pak.ID), @@ -139,7 +139,7 @@ func (*Suite) TestEphemeralKey(c *check.C) { MachineKey: "foo", NodeKey: "bar", DiscoKey: "faa", - Name: "testest", + Hostname: "testest", NamespaceID: namespace.ID, RegisterMethod: RegisterMethodAuthKey, LastSeen: &now, diff --git a/routes_test.go b/routes_test.go index 31b8d445..0108d888 100644 --- a/routes_test.go +++ b/routes_test.go @@ -28,7 +28,7 @@ func (s *Suite) TestGetRoutes(c *check.C) { MachineKey: "foo", NodeKey: "bar", DiscoKey: "faa", - Name: "test_get_route_machine", + Hostname: "test_get_route_machine", NamespaceID: namespace.ID, RegisterMethod: RegisterMethodAuthKey, AuthKeyID: uint(pak.ID), @@ -79,7 +79,7 @@ func (s *Suite) TestGetEnableRoutes(c *check.C) { MachineKey: "foo", NodeKey: "bar", DiscoKey: "faa", - Name: "test_enable_route_machine", + Hostname: "test_enable_route_machine", NamespaceID: namespace.ID, RegisterMethod: RegisterMethodAuthKey, AuthKeyID: uint(pak.ID), diff --git a/utils_test.go b/utils_test.go index 7c72c09a..ff85ac8a 100644 --- a/utils_test.go +++ b/utils_test.go @@ -34,7 +34,7 @@ func (s *Suite) TestGetUsedIps(c *check.C) { MachineKey: "foo", NodeKey: "bar", DiscoKey: "faa", - Name: "testmachine", + Hostname: "testmachine", NamespaceID: namespace.ID, RegisterMethod: RegisterMethodAuthKey, AuthKeyID: uint(pak.ID), @@ -82,7 +82,7 @@ func (s *Suite) TestGetMultiIp(c *check.C) { MachineKey: "foo", NodeKey: "bar", DiscoKey: "faa", - Name: "testmachine", + Hostname: "testmachine", NamespaceID: namespace.ID, RegisterMethod: RegisterMethodAuthKey, AuthKeyID: uint(pak.ID), @@ -172,7 +172,7 @@ func (s *Suite) TestGetAvailableIpMachineWithoutIP(c *check.C) { MachineKey: "foo", NodeKey: "bar", DiscoKey: "faa", - Name: "testmachine", + Hostname: "testmachine", NamespaceID: namespace.ID, RegisterMethod: RegisterMethodAuthKey, AuthKeyID: uint(pak.ID),