mirror of
https://github.com/helm/helm.git
synced 2026-08-04 15:10:47 +00:00
Fix broken tests for configmap and secret storage drivers
Signed-off-by: Dmitry Chepurovskiy <dm3ch@dm3ch.net> Signed-off-by: Dmitry Chepurovskiy <me@dm3ch.net>
This commit is contained in:
committed by
Dmitry Chepurovskiy
parent
627ec6a0c6
commit
95bb77c261
@@ -78,7 +78,7 @@ func (cfgmaps *ConfigMaps) Get(key string) (*rspb.Release, error) {
|
||||
cfgmaps.Log("get: failed to decode data %q: %s", key, err)
|
||||
return nil, err
|
||||
}
|
||||
r.Labels = obj.ObjectMeta.Labels
|
||||
r.Labels = filterSystemLabels(obj.ObjectMeta.Labels)
|
||||
// return the release object
|
||||
return r, nil
|
||||
}
|
||||
@@ -107,7 +107,7 @@ func (cfgmaps *ConfigMaps) List(filter func(*rspb.Release) bool) ([]*rspb.Releas
|
||||
continue
|
||||
}
|
||||
|
||||
rls.Labels = item.ObjectMeta.Labels
|
||||
rls.Labels = filterSystemLabels(item.ObjectMeta.Labels)
|
||||
|
||||
if filter(rls) {
|
||||
results = append(results, rls)
|
||||
@@ -146,7 +146,7 @@ func (cfgmaps *ConfigMaps) Query(labels map[string]string) ([]*rspb.Release, err
|
||||
cfgmaps.Log("query: failed to decode release: %s", err)
|
||||
continue
|
||||
}
|
||||
rls.Labels = item.ObjectMeta.Labels
|
||||
rls.Labels = filterSystemLabels(item.ObjectMeta.Labels)
|
||||
results = append(results, rls)
|
||||
}
|
||||
return results, nil
|
||||
|
||||
@@ -40,6 +40,7 @@ func releaseStub(name string, vers int, namespace string, status rspb.Status) *r
|
||||
Version: vers,
|
||||
Namespace: namespace,
|
||||
Info: &rspb.Info{Status: status},
|
||||
Labels: make(map[string]string),
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -72,7 +72,7 @@ func (secrets *Secrets) Get(key string) (*rspb.Release, error) {
|
||||
}
|
||||
// found the secret, decode the base64 data string
|
||||
r, err := decodeRelease(string(obj.Data["release"]))
|
||||
r.Labels = obj.ObjectMeta.Labels
|
||||
r.Labels = filterSystemLabels(obj.ObjectMeta.Labels)
|
||||
return r, errors.Wrapf(err, "get: failed to decode data %q", key)
|
||||
}
|
||||
|
||||
@@ -99,7 +99,7 @@ func (secrets *Secrets) List(filter func(*rspb.Release) bool) ([]*rspb.Release,
|
||||
continue
|
||||
}
|
||||
|
||||
rls.Labels = item.ObjectMeta.Labels
|
||||
rls.Labels = filterSystemLabels(item.ObjectMeta.Labels)
|
||||
|
||||
if filter(rls) {
|
||||
results = append(results, rls)
|
||||
@@ -137,7 +137,7 @@ func (secrets *Secrets) Query(labels map[string]string) ([]*rspb.Release, error)
|
||||
secrets.Log("query: failed to decode release: %s", err)
|
||||
continue
|
||||
}
|
||||
rls.Labels = item.ObjectMeta.Labels
|
||||
rls.Labels = filterSystemLabels(item.ObjectMeta.Labels)
|
||||
results = append(results, rls)
|
||||
}
|
||||
return results, nil
|
||||
|
||||
@@ -30,6 +30,8 @@ var b64 = base64.StdEncoding
|
||||
|
||||
var magicGzip = []byte{0x1f, 0x8b, 0x08}
|
||||
|
||||
var systemLabels = []string{"name", "owner", "status", "version", "createdAt", "modifiedAt"}
|
||||
|
||||
// encodeRelease encodes a release returning a base64 encoded
|
||||
// gzipped string representation, or error.
|
||||
func encodeRelease(rls *rspb.Release) (string, error) {
|
||||
@@ -83,3 +85,24 @@ func decodeRelease(data string) (*rspb.Release, error) {
|
||||
}
|
||||
return &rls, nil
|
||||
}
|
||||
|
||||
// Checks if label is system
|
||||
func isSystemLabel(key string) bool {
|
||||
for _, v := range systemLabels {
|
||||
if key == v {
|
||||
return true
|
||||
}
|
||||
}
|
||||
return false
|
||||
}
|
||||
|
||||
// Removes system labels from labels map
|
||||
func filterSystemLabels(lbs map[string]string) map[string]string {
|
||||
result := make(map[string]string)
|
||||
for k, v := range lbs {
|
||||
if !isSystemLabel(k) {
|
||||
result[k] = v
|
||||
}
|
||||
}
|
||||
return result
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user