Documentation ¶
Index ¶
Constants ¶
const ( // UIDDataKey is the key used in config maps to store the UID. UIDDataKey = "uid" // ProviderDataKey is the key used in config maps to store the Provider // UID which we use to ensure unique firewalls. ProviderDataKey = "provider-uid" )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type APIServerconfigMapStore ¶
type APIServerconfigMapStore struct {
// contains filtered or unexported fields
}
APIServerconfigMapStore only services Add and GetByKey from apiserver. TODO: Implement all the other store methods and make this a write through cache.
func (*APIServerconfigMapStore) Add ¶
func (a *APIServerconfigMapStore) Add(obj interface{}) error
Add adds the given config map to the apiserver's store.
func (*APIServerconfigMapStore) Delete ¶
func (a *APIServerconfigMapStore) Delete(obj interface{}) error
Delete deletes the existing config map object.
func (*APIServerconfigMapStore) GetByKey ¶
func (a *APIServerconfigMapStore) GetByKey(key string) (item interface{}, exists bool, err error)
GetByKey returns the config map for a given key. The key must take the form namespace/name.
func (*APIServerconfigMapStore) Update ¶
func (a *APIServerconfigMapStore) Update(obj interface{}) error
Update updates the existing config map object.
type ConfigMapVault ¶
type ConfigMapVault struct {
// contains filtered or unexported fields
}
ConfigMapVault stores cluster UIDs in config maps. It's a layer on top of configMapStore that just implements the utils.uidVault interface.
func NewConfigMapVault ¶
func NewConfigMapVault(c kubernetes.Interface, uidNs, uidConfigMapName string, logger klog.Logger) *ConfigMapVault
NewConfigMapVault creates a config map client. This client is essentially meant to abstract out the details of configmaps and the API, and just store/retrieve a single value, the cluster uid.
func NewFakeConfigMapVault ¶
func NewFakeConfigMapVault(ns, name string) *ConfigMapVault
NewFakeConfigMapVault is an implementation of the configMapStore that doesn't persist configmaps. Only used in testing.
func (*ConfigMapVault) Delete ¶
func (c *ConfigMapVault) Delete() error
Delete deletes the configMapStore.
func (*ConfigMapVault) Get ¶
func (c *ConfigMapVault) Get(key string) (string, bool, error)
Get retrieves the value associated to the provided 'key' from the cluster config map. If this method returns an error, it's guaranteed to be apiserver flake. If the error is a not found error it sets the boolean to false and returns and error of nil instead.