reduce dependencies to apiextension objects

This commit is contained in:
Konstantinos Angelopoulos
2025-10-08 15:48:09 +02:00
parent 5af2870254
commit b8670cbc31
3 changed files with 14 additions and 27 deletions

View File

@@ -25,7 +25,6 @@ import (
"sigs.k8s.io/yaml"
apiextensionsv1 "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1"
"k8s.io/apimachinery/pkg/runtime"
"k8s.io/apimachinery/pkg/util/dump"
"k8s.io/apimachinery/pkg/util/json"
@@ -98,19 +97,19 @@ type StrategicMergePatchRawTestCaseData struct {
}
type MergeItem struct {
Name string `json:"name,omitempty"`
Value string `json:"value,omitempty"`
Other string `json:"other,omitempty"`
MergingList []MergeItem `json:"mergingList,omitempty" patchStrategy:"merge" patchMergeKey:"name"`
NonMergingList []MergeItem `json:"nonMergingList,omitempty"`
MergingIntList []int `json:"mergingIntList,omitempty" patchStrategy:"merge"`
NonMergingIntList []int `json:"nonMergingIntList,omitempty"`
MergeItemPtr *MergeItem `json:"mergeItemPtr,omitempty" patchStrategy:"merge" patchMergeKey:"name"`
SimpleMap map[string]string `json:"simpleMap,omitempty"`
ReplacingItem runtime.RawExtension `json:"replacingItem,omitempty" patchStrategy:"replace"`
JsonItem *apiextensionsv1.JSON `json:"jsonItem,omitempty"`
RetainKeysMap RetainKeysMergeItem `json:"retainKeysMap,omitempty" patchStrategy:"retainKeys"`
RetainKeysMergingList []MergeItem `json:"retainKeysMergingList,omitempty" patchStrategy:"merge,retainKeys" patchMergeKey:"name"`
Name string `json:"name,omitempty"`
Value string `json:"value,omitempty"`
Other string `json:"other,omitempty"`
MergingList []MergeItem `json:"mergingList,omitempty" patchStrategy:"merge" patchMergeKey:"name"`
NonMergingList []MergeItem `json:"nonMergingList,omitempty"`
MergingIntList []int `json:"mergingIntList,omitempty" patchStrategy:"merge"`
NonMergingIntList []int `json:"nonMergingIntList,omitempty"`
MergeItemPtr *MergeItem `json:"mergeItemPtr,omitempty" patchStrategy:"merge" patchMergeKey:"name"`
SimpleMap map[string]string `json:"simpleMap,omitempty"`
ReplacingItem runtime.RawExtension `json:"replacingItem,omitempty" patchStrategy:"replace"`
JSONItem struct{ Raw []byte } `json:"jsonItem,omitempty"`
RetainKeysMap RetainKeysMergeItem `json:"retainKeysMap,omitempty" patchStrategy:"retainKeys"`
RetainKeysMergingList []MergeItem `json:"retainKeysMergingList,omitempty" patchStrategy:"merge,retainKeys" patchMergeKey:"name"`
}
type RetainKeysMergeItem struct {

View File

@@ -98,12 +98,7 @@
"x-kubernetes-patch-strategy": "merge,retainKeys"
},
"jsonItem": {
"description": "Values are the chart values.",
"allOf": [
{
"$ref": "#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSON"
}
]
"description": "Values are the chart values."
}
},
"x-kubernetes-group-version-kind": [
@@ -170,9 +165,6 @@
}
]
},
"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSON": {
"description": "JSON represents any valid JSON value. These types are supported: bool, int64, float64, string, []interface{}, map[string]interface{} and nil."
},
"io.k8s.apimachinery.pkg.runtime.RawExtension": {
"description": "RawExtension is used to hold extensions in external versions.",
"required": [

View File

@@ -89,7 +89,6 @@
},
"jsonItem": {
"description": "JSON field",
"$ref": "#/definitions/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSON",
}
},
"x-kubernetes-group-version-kind": [
@@ -157,9 +156,6 @@
}
]
},
"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSON": {
"description": "JSON represents any valid JSON value. These types are supported: bool, int64, float64, string, []interface{}, map[string]interface{} and nil."
},
"io.k8s.apimachinery.pkg.runtime.RawExtension": {
"description": "RawExtension is used to hold extensions in external versions.",
"required": [