diff --git a/client/fingerprint/nomad.go b/client/fingerprint/nomad.go index 0a00cc026..a8415f69d 100644 --- a/client/fingerprint/nomad.go +++ b/client/fingerprint/nomad.go @@ -19,6 +19,7 @@ func NewNomadFingerprint(logger *log.Logger) Fingerprint { } func (f *NomadFingerprint) Fingerprint(req *cstructs.FingerprintRequest, resp *cstructs.FingerprintResponse) error { + resp.AddAttribute("nomad.advertise.address", req.Node.HTTPAddr) resp.AddAttribute("nomad.version", req.Config.Version.VersionNumber()) resp.AddAttribute("nomad.revision", req.Config.Version.Revision) resp.Detected = true diff --git a/client/fingerprint/nomad_test.go b/client/fingerprint/nomad_test.go index d3bdadf45..f86eea4ba 100644 --- a/client/fingerprint/nomad_test.go +++ b/client/fingerprint/nomad_test.go @@ -12,17 +12,20 @@ import ( func TestNomadFingerprint(t *testing.T) { f := NewNomadFingerprint(testlog.Logger(t)) - node := &structs.Node{ - Attributes: make(map[string]string), - } + v := "foo" r := "123" + h := "8.8.8.8:4646" c := &config.Config{ Version: &version.VersionInfo{ Revision: r, Version: v, }, } + node := &structs.Node{ + Attributes: make(map[string]string), + HTTPAddr: h, + } request := &cstructs.FingerprintRequest{Config: c, Node: node} var response cstructs.FingerprintResponse @@ -46,4 +49,8 @@ func TestNomadFingerprint(t *testing.T) { if response.Attributes["nomad.revision"] != r { t.Fatalf("incorrect revision") } + + if response.Attributes["nomad.advertise.address"] != h { + t.Fatalf("incorrect advertise address") + } }