Sergey Sarbash
fd01ead575
Fixes nil pointer dereferencing for Consul TLS transport
2017-08-15 09:27:39 +03:00
Emil Huseynaliev
9e1550db53
Update consul_watcher.go
...
`WatchPlan` was renamed to `Plan` in the consul `watch` package in commit d7e23857ad
2017-04-25 16:38:35 -04:00
Asim Aslam
90ed1390ee
fix broken test
2017-04-17 15:31:50 +01:00
wangkechun
059b9d36d7
fix fmt str
2017-02-25 22:53:25 +08:00
Asim Aslam
71d717a06d
strip doc.go files
2016-12-14 15:41:48 +00:00
Asim
c289f6acaa
Make use of consul 0.7 deregister field. Now auto reaps dead services
2016-11-25 11:23:37 +01:00
chriss
fabdd4a704
Remove consul token helper method.
...
A Consul config struct can be passed using the `Config` helper making this helper redundant.
2016-11-21 16:16:24 +00:00
Asim
f9709ffa6e
ensure the code does not panic
2016-11-18 07:30:50 +00:00
chriss
8a25723fe0
Set consul token via registry options.
...
Optionally configure a token to use with the consul client.
2016-11-18 00:07:12 +00:00
chriss
3d7187f405
Add the ability to pass consul client config via registry options.
...
This can be used when you need to configure the consul client to use a specific configuration (E.G to pass a Token if consul is using ACL policies)
2016-11-17 23:24:14 +00:00
Jelmer Snoeck
e59f7a7ace
ConsulRegistry: use health checks to select nodes.
...
Consul sees a healthcheck that is in the warning state as a "failed"
node. This means that when we ask Consul for services that are passing,
it would not return nodes that have warning healthchecks.
In the cache, we only check on critical to skip for nodes. This makes
the cache out of sync with the non-cache implementation.
This patch reworks the non-cache implementation to ask for all nodes
(even unhealthy ones) and does the same check as within the cache, skip
nodes that have critical healthchecks.
We've noticed this issue when we deployed custom healthchecks where the
cache was acting properly, but after 1 minute we saw "None Available"
errors. This is due to the TTL expiry on the cache, which is then
followed by doing a non cached request.
2016-08-26 08:36:45 +01:00
Asim
71d64f911f
make a copy of services for handle method
2016-08-24 18:37:11 +01:00
Asim
0afaaeec8d
make a copy of services
2016-08-24 18:27:15 +01:00
Jelmer Snoeck
81231c0b6f
ConsulWatcher: deregister if service checks fail.
2016-08-11 15:18:50 +01:00
Asim
2d6c403992
don't close next chan, instead use exit chan
2016-07-30 11:58:10 +01:00
Asim
6aac602b31
return error when zero services in mock registry
2016-06-30 20:11:04 +01:00
Asim
1254a87286
Add package comments
2016-05-24 22:22:46 +01:00
Asim
04bc20798d
Don't strip decode because its good to be backwards compatible still
2016-05-22 18:43:47 +01:00
Asim
2708f9c04b
No longer need to test old encoding
2016-05-22 18:41:06 +01:00
Asim
06ee80fd0a
Strip old encoding
2016-05-22 18:34:47 +01:00
Asim
e541d45f38
When the TTL flips to critical we should issue a delete event
2016-05-03 18:34:57 +01:00
Asim
d3de45409f
Simplify watcher test
2016-05-01 22:30:33 +01:00
Asim
7996785195
Try a different way of testing
2016-05-01 22:05:21 +01:00
Asim
3709831d8e
Watch results may be unordered
2016-05-01 21:38:22 +01:00
Asim
50eb97129e
Add watcher test
2016-05-01 21:30:14 +01:00
Asim
96104aa209
Add mdns test and fix the bug it revealed
2016-05-01 21:21:15 +01:00
Asim
e14f9a0380
Add watcher.... OH YEAAA
2016-05-01 19:31:03 +01:00
Asim
59f1a9a07b
Use mdns-sd service
2016-04-30 00:22:31 +01:00
Asim
ae8c948202
Use our fork of mdns with all the updates
2016-04-30 00:15:00 +01:00
Asim
c26f989bbb
Fix encoding so we split across txt records
2016-04-28 18:36:59 +01:00
Asim
6c108d95b2
First attempt at mdns
2016-04-27 18:21:05 +01:00
Asim
3d3044404e
Don't add to defaults in func init, just add them to cmd
2016-04-26 18:49:02 +01:00
Asim
f7c57fd4f4
Mock watcher that just blocks
2016-04-26 18:32:43 +01:00
Asim
e2855c4bc2
Fix some mapping issues while we're at it
2016-04-09 22:19:03 +01:00
Asim
9d7bd3f424
God damn you nil map
2016-04-09 21:34:45 +01:00
Asim
b3fbd36ba7
Don't re-register if the state hasn't changed
2016-04-09 21:30:31 +01:00
Asim
bfe20d81d0
More linting fun
2016-04-06 18:03:27 +01:00
Asim Aslam
c462d7776c
Merge pull request #63 from micro/encoding
...
Fix Consul WARN issues for tags
2016-04-05 16:14:28 +01:00
Asim
17a97e2ef1
Set ver
2016-03-29 18:32:16 +01:00
Asim
cb89b2ebca
update encoding test
2016-03-29 18:16:55 +01:00
Asim
61178d1b45
Update encoding to be backwards compatible.
2016-03-29 17:44:46 +01:00
Asim
0a81cb1190
unexport mock registry
2016-03-17 22:54:18 +00:00
Asim
e941796234
Add encoding that does not throw warns
2016-03-16 21:23:41 +00:00
Asim
f088074f29
Registry init
2016-03-15 22:20:21 +00:00
Asim
15db053bc6
update mock tests
2016-03-14 19:15:42 +00:00
Asim
71764564e7
Add packages for the defaults
2016-03-14 10:45:38 +00:00
Asim
ad0744a95f
make the mock sliggghtly more useful
2016-02-26 00:09:06 +00:00
Asim
93b923261c
Add ErrNotFound
2016-02-25 12:42:31 +00:00
Asim
146701eeaa
Add some comments
2016-01-30 21:13:34 +00:00
Asim
013d1de2c4
Prefer RegisterTTL set through Init
2016-01-27 12:23:18 +00:00
Asim
61094fefe8
If TTL is nil it might bail
2016-01-27 00:32:16 +00:00
Asim
47bfdbe49e
Fix mock
2016-01-27 00:18:44 +00:00
Asim
55145d08a1
Use agent service for this
2016-01-27 00:15:46 +00:00
Asim
5ec9d561a6
meh
2016-01-26 23:32:27 +00:00
Asim
ce0c5908a6
Update the watcher
2016-01-26 21:10:27 +00:00
Asim
cd13f0389f
Fix this cruft
2016-01-26 20:44:29 +00:00
Asim
822cc0e5da
Use ServiceID as node.ID rather than Node.... in time remove Node/Address completely
2016-01-26 20:30:05 +00:00
Asim
a6ce435a07
If secure or tlsconfig not nil then secure
2016-01-17 00:33:07 +00:00
Asim
ae2ab911ed
Access tls config
2016-01-16 23:39:47 +00:00
Asim
60ee085cbc
Add secure option to registry
2016-01-16 20:25:18 +00:00
Asim
8bf72a3325
Replace map[string]string with Context for extra options. map[string]string is essentially useless. Context can store anything
2016-01-06 16:25:12 +00:00
Asim
191e835aa9
Add extra options to be used by others that need them
2015-12-31 18:14:40 +00:00
Asim
be43d827c7
Add String method to all interfaces
2015-12-19 21:56:14 +00:00
Asim
d7b3765c71
Allow setting of timeout for registry
2015-12-19 18:28:08 +00:00
Asim
ed75f84584
add json tags to registry service
2015-12-15 21:02:43 +00:00
Asim
eefb9c53d4
Move to a selector package
2015-12-09 19:23:16 +00:00
Asim
a2c862dd21
Add service random
2015-12-09 12:44:38 +00:00
Asim
46905347bb
unblack list when err is nil
2015-12-09 02:42:02 +00:00
Asim
f59787a906
add blacklist selector
2015-12-09 02:31:17 +00:00
Asim
9072a944e2
Add selector code
2015-12-09 00:02:45 +00:00
Asim
011a3dc9e3
Add watcher comments
2015-12-05 02:05:06 +00:00
Asim
d4f3a6070c
Update the watch interface
2015-12-05 01:12:29 +00:00
Asim
04e07f4b39
Move plugins to go-plugins
2015-11-25 00:17:15 +00:00
Asim
5d88115f2a
update links from myodc to micro
2015-11-20 16:17:33 +00:00
Asim
9b23729eac
add default port where none is specified
2015-11-16 12:11:03 +00:00
Asim
0320fc1b55
Update registry so version is surfaced
2015-11-08 01:48:48 +00:00
Asim
3302fab644
Move kubernetes registry to myodc/go-plugins because god damnit stop breaking you....
2015-10-27 19:08:45 +00:00
Asim
d9ae100524
Fix registry address usage
2015-10-26 20:23:57 +00:00
Asim
e2b849da29
Fix breaking build
2015-10-20 18:03:39 +01:00
Asim
975c6d4148
add kubernetes registry back since its being used...
2015-10-18 12:12:41 +01:00
Asim
1b1aa4915e
Remove kubernetes registry. Add v1 of in memory registry using memberlist
2015-10-18 00:01:43 +01:00
Asim
6ab6e9725d
Add endpoints in etcd
2015-10-11 16:41:55 +01:00
Asim
fcbd2acdde
add endpoint data for consul registry
2015-10-11 12:05:20 +01:00
Asim
ac995ba983
update etcd registry to use github.com/coreos/etcd/client
2015-09-26 17:09:03 +01:00
Asim
e89f31730b
Fix imports
2015-08-26 12:10:10 +01:00
Asim
113cc8a9cb
Remove service id so nodes are also removed from catalog
2015-08-15 23:03:50 +01:00
Asim
b91af916f9
Add pub/sub to client/server and make broker more low level
2015-06-12 19:52:27 +01:00
Asim
cdf2f2cbcd
Change receiver to handler, breaking change, grrr
2015-06-03 01:25:37 +01:00
Asim
09c784d294
add support for streaming requests. cleanup watcher initilisation
2015-06-01 18:55:27 +01:00
Asim
fa2c27b64f
PortalIP no longer exists
2015-05-29 09:58:49 +01:00
Asim
d23e46df3a
Add basic etcd registry implementation
2015-05-27 22:22:02 +01:00
Asim
36b5ca46fe
Change initialisation and add metadata
2015-05-26 22:39:48 +01:00
Asim
7aa2c82ced
Service and node should be structs rather than interface
2015-05-25 22:14:28 +01:00
Asim
74fd1fc989
Restructure go-micro layout and plugins
2015-05-23 20:04:16 +01:00
Asim
0e7bd77f4c
Allow configurable addresses for everything
2015-05-16 00:34:02 +01:00
Asim
52f140da5f
Add support for listing services, very rough
2015-04-03 00:52:49 +02:00
Asim
f2daa02256
Fix kubernetes compile issues
2015-04-03 00:30:18 +02:00
Asim
4b494966fb
Add consul watcher
2015-02-14 23:00:47 +00:00
Asim
b9e50324cb
Add watcher and cache for kubernetes registry
2015-02-07 23:15:35 +00:00
Asim
0e73a84857
github.com/armon/consul-api was deprecated, use official api
2015-01-19 19:37:28 +00:00
Asim
8e55cde513
First
2015-01-13 23:31:27 +00:00