Skip to content

Commit

Permalink
Merge pull request #648 from juanfont/show-nodes-online
Browse files Browse the repository at this point in the history
Send Online field of tailcfg.Node based on LastSeen
  • Loading branch information
juanfont authored Jun 16, 2022
2 parents e3f99d6 + bfa9ed8 commit 3ae3405
Show file tree
Hide file tree
Showing 2 changed files with 6 additions and 0 deletions.
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@
- Add -c option to specify config file from command line [#285](https://github.com/juanfont/headscale/issues/285) [#612](https://github.com/juanfont/headscale/pull/601)
- Add configuration option to allow Tailscale clients to use a random WireGuard port. [kb/1181/firewalls](https://tailscale.com/kb/1181/firewalls) [#624](https://github.com/juanfont/headscale/pull/624)
- Improve obtuse UX regarding missing configuration (`ephemeral_node_inactivity_timeout` not set) [#639](https://github.com/juanfont/headscale/pull/639)
- Fix nodes being shown as 'offline' in `tailscale status` [648](https://github.com/juanfont/headscale/pull/648)

## 0.15.0 (2022-03-20)

Expand Down
5 changes: 5 additions & 0 deletions machine.go
Original file line number Diff line number Diff line change
Expand Up @@ -637,6 +637,10 @@ func (machine Machine) toNode(

hostInfo := machine.GetHostInfo()

// A node is Online if it is connected to the control server,
// and we now we update LastSeen every keepAliveInterval duration at least.
online := machine.LastSeen.After(time.Now().Add(-keepAliveInterval))

node := tailcfg.Node{
ID: tailcfg.NodeID(machine.ID), // this is the actual ID
StableID: tailcfg.StableNodeID(
Expand All @@ -653,6 +657,7 @@ func (machine Machine) toNode(
Endpoints: machine.Endpoints,
DERP: derp,

Online: &online,
Hostinfo: hostInfo.View(),
Created: machine.CreatedAt,
LastSeen: machine.LastSeen,
Expand Down

0 comments on commit 3ae3405

Please sign in to comment.