Skip to content

Commit

Permalink
update
Browse files Browse the repository at this point in the history
Signed-off-by: Patrick <[email protected]>
  • Loading branch information
Patrick0308 committed Aug 13, 2024
1 parent d119c17 commit 0b8c695
Show file tree
Hide file tree
Showing 3 changed files with 53 additions and 25 deletions.
33 changes: 32 additions & 1 deletion api/openapi-spec/swagger.json
Original file line number Diff line number Diff line change
Expand Up @@ -18867,7 +18867,7 @@
}
},
"com.github.karmada-io.karmada.pkg.apis.policy.v1alpha1.Overriders": {
"description": "Overriders offers various alternatives to represent the override rules.\n\nIf more than one alternative exists, they will be applied with following order: - ImageOverrider - CommandOverrider - ArgsOverrider - LabelsOverrider - AnnotationsOverrider - Plaintext",
"description": "Overriders offers various alternatives to represent the override rules.\n\nIf more than one alternative exists, they will be applied with following order: - ImageOverrider - CommandOverrider - ArgsOverrider - LabelsOverrider - AnnotationsOverrider - Plaintext - PlaintextObjectOverrider",
"type": "object",
"properties": {
"annotationsOverrider": {
Expand Down Expand Up @@ -18917,6 +18917,14 @@
"default": {},
"$ref": "#/definitions/com.github.karmada-io.karmada.pkg.apis.policy.v1alpha1.PlaintextOverrider"
}
},
"plaintextObjectOverrider": {
"description": "PlaintextObjectOverrider represents the rules dedicated to handling yaml or json object overrides",
"type": "array",
"items": {
"default": {},
"$ref": "#/definitions/com.github.karmada-io.karmada.pkg.apis.policy.v1alpha1.PlaintextObjectOverrider"
}
}
}
},
Expand Down Expand Up @@ -18958,6 +18966,29 @@
}
}
},
"com.github.karmada-io.karmada.pkg.apis.policy.v1alpha1.PlaintextObjectOverrider": {
"description": "PlaintextObjectOverrider represents the rules dedicated to handling yaml or json object overrides",
"type": "object",
"required": [
"path",
"plaintext"
],
"properties": {
"path": {
"description": "Path indicates the path of target field",
"type": "string",
"default": ""
},
"plaintext": {
"description": "Plaintext represents override rules defined with plaintext overriders.",
"type": "array",
"items": {
"default": {},
"$ref": "#/definitions/com.github.karmada-io.karmada.pkg.apis.policy.v1alpha1.PlaintextOverrider"
}
}
}
},
"com.github.karmada-io.karmada.pkg.apis.policy.v1alpha1.PlaintextOverrider": {
"description": "PlaintextOverrider is a simple overrider that overrides target fields according to path, operator and value.",
"type": "object",
Expand Down
2 changes: 1 addition & 1 deletion pkg/apis/policy/v1alpha1/override_types.go
Original file line number Diff line number Diff line change
Expand Up @@ -102,7 +102,7 @@ type RuleWithCluster struct {
// - LabelsOverrider
// - AnnotationsOverrider
// - Plaintext
// - PlaintextObjectOverrider
// - PlaintextObjectOverrider
type Overriders struct {
// Plaintext represents override rules defined with plaintext overriders.
// +optional
Expand Down
43 changes: 20 additions & 23 deletions pkg/util/overridemanager/overridemanager_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -492,9 +492,9 @@ key:
Path: "data.test\\.yaml",
Plaintext: []policyv1alpha1.PlaintextOverrider{
{
Path: "/key/key1",
Path: "/key/key1",
Operator: policyv1alpha1.OverriderOpReplace,
Value: apiextensionsv1.JSON{Raw:[]byte(`"updated_value"`)},
Value: apiextensionsv1.JSON{Raw: []byte(`"updated_value"`)},
},
},
},
Expand All @@ -518,20 +518,20 @@ key:
PolicyName: "test1",
Overriders: policyv1alpha1.Overriders{
PlaintextObjectOverrider: []policyv1alpha1.PlaintextObjectOverrider{
{
Path: "data.test\\.yaml",
Plaintext: []policyv1alpha1.PlaintextOverrider{
{
Path: "/key/key1",
Operator: policyv1alpha1.OverriderOpReplace,
Value: apiextensionsv1.JSON{Raw:[]byte(`"updated_value"`)},
{
Path: "data.test\\.yaml",
Plaintext: []policyv1alpha1.PlaintextOverrider{
{
Path: "/key/key1",
Operator: policyv1alpha1.OverriderOpReplace,
Value: apiextensionsv1.JSON{Raw: []byte(`"updated_value"`)},
},
},
},
},
},
},
},
},
},
wantErr: false,
},
Expand Down Expand Up @@ -565,7 +565,6 @@ key:
}
}


func Test_overrideManagerImpl_ApplyJSONOverridePolicies(t *testing.T) {
configmap := helper.NewConfigMap(metav1.NamespaceDefault, "test1", map[string]string{
"test.yaml": `{"key":{"key1":"value"}`,
Expand Down Expand Up @@ -612,9 +611,9 @@ func Test_overrideManagerImpl_ApplyJSONOverridePolicies(t *testing.T) {
Path: "data.test\\.yaml",
Plaintext: []policyv1alpha1.PlaintextOverrider{
{
Path: "/key/key1",
Path: "/key/key1",
Operator: policyv1alpha1.OverriderOpReplace,
Value: apiextensionsv1.JSON{Raw:[]byte(`"updated_value"`)},
Value: apiextensionsv1.JSON{Raw: []byte(`"updated_value"`)},
},
},
},
Expand All @@ -638,20 +637,20 @@ func Test_overrideManagerImpl_ApplyJSONOverridePolicies(t *testing.T) {
PolicyName: "test1",
Overriders: policyv1alpha1.Overriders{
PlaintextObjectOverrider: []policyv1alpha1.PlaintextObjectOverrider{
{
Path: "data.test\\.yaml",
Plaintext: []policyv1alpha1.PlaintextOverrider{
{
Path: "/key/key1",
Operator: policyv1alpha1.OverriderOpReplace,
Value: apiextensionsv1.JSON{Raw:[]byte(`"updated_value"`)},
{
Path: "data.test\\.yaml",
Plaintext: []policyv1alpha1.PlaintextOverrider{
{
Path: "/key/key1",
Operator: policyv1alpha1.OverriderOpReplace,
Value: apiextensionsv1.JSON{Raw: []byte(`"updated_value"`)},
},
},
},
},
},
},
},
},
},
wantErr: false,
},
Expand Down Expand Up @@ -682,5 +681,3 @@ func Test_overrideManagerImpl_ApplyJSONOverridePolicies(t *testing.T) {
})
}
}


0 comments on commit 0b8c695

Please sign in to comment.