* PoC: memory registry using maps instead of slice madness
* Updated proto and handlers. Fixed tests across codebase.
* Implemented ttl pruning for memory registry
* Added extensive memory registry tests
* Squased a bunch of bugs
* Proto indent; memory.Registry.String() returns "memory"
* Write a test to prove memory registry TTLs are busted
Signed-off-by: Erik Hollensbe <github@hollensbe.org>
* Additional memory testing and fixups:
* DefaultTTL removed
* When TTL == 0, it is automatically removed from expiry conditions
* Additional improvements to new tests
Signed-off-by: Erik Hollensbe <github@hollensbe.org>
* Add Get() and GetOptions.
* Removed watcher. Outline of client. YAML templates
* Added default service and deployment templates and types
* Added API tests and cleaned up errors.
* Small refactoring. Template package is no more.
* Ripped out existing code in preparation to small rework
* Reshuffled the source code to make it organized better
* Create service and deployment in kubernetes runtime
* Major cleanup and refactoring of Kubernetes runtime
* Service now handles low level K8s API calls across both K8s deployment
an service API objects
* Runtime has a task queue that serves for queueing runtime action
requests
* General refactoring
* No need for Lock in k8s service
* Added kubernetes runtime env var to default deployment
* Enable running different versions of the same service
* Can't delete services through labels
* Proto cruft. Added runtime.CreateOptions implementation in proto
* Removed proxy service from default env variables
* Make service name mandatory param to Get method
* Get Delete changes from https://github.com/micro/go-micro/pull/945
* Replaced template files with global variables
* Validate service names before sending K8s API request
* Refactored Kubernetes API client. Fixed typos.
* Added client.Resource to make API resources more explicit in code
* We now purge flapping routes before regular tick processes them
* Updated comments
* Record the timestamp as soon as you receive the event
* Set route Address to routing table test
* Fixed a bunch of deadlocks. Added basic Router tests.
Previously, when syncMap iterates a list of records which have the same
content in different order, a deadlock might happen. By enforcing a certain
order, the deadlock can be avoided.