Skip to content

Commit ceecbe5

Browse files
Merge pull request #29601 from bertinatto/cbor-data-etcd
CNTRLPLANE-5: Decode CBOR data in etcd test
2 parents adfcb39 + a37ea2c commit ceecbe5

File tree

1 file changed

+9
-1
lines changed

1 file changed

+9
-1
lines changed

Diff for: test/extended/etcd/etcd_storage_path.go

+9-1
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ import (
2828
"k8s.io/apimachinery/pkg/apis/meta/v1/unstructured"
2929
"k8s.io/apimachinery/pkg/runtime"
3030
"k8s.io/apimachinery/pkg/runtime/schema"
31+
cbor "k8s.io/apimachinery/pkg/runtime/serializer/cbor/direct"
3132
"k8s.io/apimachinery/pkg/util/diff"
3233
"k8s.io/apimachinery/pkg/util/errors"
3334
"k8s.io/apimachinery/pkg/util/sets"
@@ -678,7 +679,10 @@ func JSONToUnstructured(stub, namespace string, mapping *meta.RESTMapping, dynam
678679
return dynamicClient.Resource(mapping.Resource).Namespace(namespace), &unstructured.Unstructured{Object: typeMetaAdder}, nil
679680
}
680681

681-
var protoEncodingPrefix = []byte{0x6b, 0x38, 0x73, 0x00}
682+
var (
683+
protoEncodingPrefix = []byte{0x6b, 0x38, 0x73, 0x00}
684+
cborPrefix = []byte{0xd9, 0xd9, 0xf7}
685+
)
682686

683687
func getFromEtcd(kv etcdv3.KV, path string) (*metaObject, error) {
684688
response, err := kv.Get(context.Background(), "/"+path)
@@ -712,6 +716,10 @@ func getFromEtcd(kv etcdv3.KV, path string) (*metaObject, error) {
712716
if err := json.Unmarshal(value, metaObj); err != nil {
713717
return nil, err
714718
}
719+
case bytes.HasPrefix(value, cborPrefix):
720+
if err := cbor.Unmarshal(value, metaObj); err != nil {
721+
return nil, err
722+
}
715723
default:
716724
// TODO handle encrypted data
717725
return nil, fmt.Errorf("unknown data format at path /%s: %s", path, string(value))

0 commit comments

Comments
 (0)