@@ -41,6 +41,8 @@ type Client struct {
41
41
deregisterCriticalServiceAfter int
42
42
// serviceChecks user custom checks
43
43
serviceChecks api.AgentServiceChecks
44
+ //custom tags
45
+ tags []string
44
46
}
45
47
46
48
func defaultResolver(_ context.Context, entries []*api.ServiceEntry) []*registry.ServiceInstance {
@@ -143,7 +145,7 @@ func (c *Client) singleDCEntries(service, tag string, passingOnly bool, opts *ap
143
145
}
144
146
145
147
// Register register service instance to consul
146
- func (c *Client) Register(_ context.Context, svc *registry.ServiceInstance, enableHealthCheck bool) error {
148
+ func (c *Client) Register(_ context.Context, svc *registry.ServiceInstance, enableHealthCheck bool, tags []string ) error {
147
149
addresses := make(map[string]api.ServiceAddress, len(svc.Endpoints))
148
150
checkAddresses := make([]string, 0, len(svc.Endpoints))
149
151
for _, endpoint := range svc.Endpoints {
@@ -157,11 +159,12 @@ func (c *Client) Register(_ context.Context, svc *registry.ServiceInstance, enab
157
159
checkAddresses = append(checkAddresses, net.JoinHostPort(addr, strconv.FormatUint(port, 10)))
158
160
addresses[raw.Scheme] = api.ServiceAddress{Address: endpoint, Port: int(port)}
159
161
}
162
+ tags = append(tags, fmt.Sprintf("version=%s", svc.Version))
160
163
asr := &api.AgentServiceRegistration{
161
164
ID: svc.ID,
162
165
Name: svc.Name,
163
166
Meta: svc.Metadata,
164
- Tags: []string{fmt.Sprintf("version=%s", svc.Version)} ,
167
+ Tags: tags ,
165
168
TaggedAddresses: addresses,
166
169
}
167
170
if len(checkAddresses) > 0 {
0 commit comments