* First commit: outline of K8s runtime package * Added poller. Added auto-updater into default runtime * Added build and updated Poller interface * Added comments and NewRuntime that accepts Options * DefaultPoller; Runtime options * First commit to add Kubernetes cruft * Add comments * Add micro- prefix to K8s runtime service names * Get rid of import cycles. Move K8s runtime into main runtime package * Major refactoring: Poller replaced by Notifier POller has been replaced by Notifier which returns a channel of events that can be consumed and acted upon. * Added runtime configuration options * K8s runtime is now Kubernetes runtime in dedicated pkg. Naming kung-fu. * Fix typo in command. * Fixed typo * Dont Delete service when runtime stops. runtime.Stop stops services; no need to double-stop * Track runtime services * Parse Unix timestamps properly * Added deployments into K8s client. Debug logging
		
			
				
	
	
		
			27 lines
		
	
	
		
			500 B
		
	
	
	
		
			Go
		
	
	
	
	
	
			
		
		
	
	
			27 lines
		
	
	
		
			500 B
		
	
	
	
		
			Go
		
	
	
	
	
	
| package watch
 | |
| 
 | |
| import "encoding/json"
 | |
| 
 | |
| // Watch ...
 | |
| type Watch interface {
 | |
| 	Stop()
 | |
| 	ResultChan() <-chan Event
 | |
| }
 | |
| 
 | |
| // EventType defines the possible types of events.
 | |
| type EventType string
 | |
| 
 | |
| // EventTypes used
 | |
| const (
 | |
| 	Added    EventType = "ADDED"
 | |
| 	Modified EventType = "MODIFIED"
 | |
| 	Deleted  EventType = "DELETED"
 | |
| 	Error    EventType = "ERROR"
 | |
| )
 | |
| 
 | |
| // Event represents a single event to a watched resource.
 | |
| type Event struct {
 | |
| 	Type   EventType       `json:"type"`
 | |
| 	Object json.RawMessage `json:"object"`
 | |
| }
 |