k3s/pkg/registry
Tim Hockin 8ae203825b Implement multi-port endpoints
Instead of endpoints being a flat list, it is now a list of "subsets"
where each is a struct of {Addresses, Ports}.  To generate the list of
endpoints you need to take union of the Cartesian products of the
subsets.  This is compact in the vast majority of cases, yet still
represents named ports and corner cases (e.g. each pod has a different
port number).

This also stores subsets in a deterministic order (sorted by hash) to
avoid spurious updates and comparison problems.

This is a fully compatible change - old objects and clients will
keepworking as long as they don't need the new functionality.

This is the prep for multi-port Services, which will add API to produce
endpoints in this new structure.
2015-03-27 12:36:32 -07:00
..
controller Merge pull request #5971 from bprashanth/rc_watch_fields 2015-03-27 10:19:41 +01:00
endpoint Implement multi-port endpoints 2015-03-27 12:36:32 -07:00
etcd Implement multi-port endpoints 2015-03-27 12:36:32 -07:00
event Rename NewREST -> NewStorage to align on terminology 2015-03-23 16:52:21 -04:00
generic Add REST PrepareForUpdate() hook 2015-03-26 13:48:41 -07:00
limitrange Rename NewREST -> NewStorage to align on terminology 2015-03-23 16:52:21 -04:00
minion Add REST PrepareForUpdate() hook 2015-03-26 13:48:41 -07:00
namespace Add REST PrepareForUpdate() hook 2015-03-26 13:48:41 -07:00
pod Add REST PrepareForUpdate() hook 2015-03-26 13:48:41 -07:00
registrytest Move Capacity from NodeSpec to NodeStatus 2015-03-26 15:28:48 +01:00
resourcequota Add REST PrepareForUpdate() hook 2015-03-26 13:48:41 -07:00
secret Rename NewREST -> NewStorage to align on terminology 2015-03-23 16:52:21 -04:00
service Implement multi-port endpoints 2015-03-27 12:36:32 -07:00
doc.go Address package level comments for readability. 2014-06-12 20:26:12 -07:00