|
1 |
| -// Copyright 2018, Oracle Corporation and/or its affiliates. All rights reserved. |
| 1 | +// Copyright 2018, 2019, Oracle Corporation and/or its affiliates. All rights reserved. |
2 | 2 | // Licensed under the Universal Permissive License v 1.0 as shown at
|
3 | 3 | // http://oss.oracle.com/licenses/upl.
|
4 | 4 |
|
|
8 | 8 |
|
9 | 9 | import com.google.gson.Gson;
|
10 | 10 | import com.google.gson.JsonElement;
|
11 |
| -import io.kubernetes.client.models.*; |
| 11 | +import io.kubernetes.client.models.V1ObjectMeta; |
| 12 | +import io.kubernetes.client.models.V1beta1CustomResourceDefinition; |
| 13 | +import io.kubernetes.client.models.V1beta1CustomResourceDefinitionNames; |
| 14 | +import io.kubernetes.client.models.V1beta1CustomResourceDefinitionSpec; |
| 15 | +import io.kubernetes.client.models.V1beta1CustomResourceSubresourceScale; |
| 16 | +import io.kubernetes.client.models.V1beta1CustomResourceSubresources; |
| 17 | +import io.kubernetes.client.models.V1beta1CustomResourceValidation; |
| 18 | +import io.kubernetes.client.models.V1beta1JSONSchemaProps; |
12 | 19 | import java.util.Collections;
|
13 | 20 | import java.util.HashMap;
|
14 | 21 | import oracle.kubernetes.json.SchemaGenerator;
|
|
23 | 30 | import oracle.kubernetes.operator.work.Packet;
|
24 | 31 | import oracle.kubernetes.operator.work.Step;
|
25 | 32 | import oracle.kubernetes.weblogic.domain.v2.DomainSpec;
|
| 33 | +import oracle.kubernetes.weblogic.domain.v2.DomainStatus; |
26 | 34 |
|
27 | 35 | /** Helper class to ensure Domain CRD is created */
|
28 | 36 | public class CRDHelper {
|
@@ -116,9 +124,16 @@ static V1beta1CustomResourceValidation createSchemaValidation() {
|
116 | 124 |
|
117 | 125 | static V1beta1JSONSchemaProps createOpenAPIV3Schema() {
|
118 | 126 | Gson gson = new Gson();
|
119 |
| - JsonElement jsonElement = gson.toJsonTree(createSchemaGenerator().generate(DomainSpec.class)); |
120 |
| - V1beta1JSONSchemaProps spec = gson.fromJson(jsonElement, V1beta1JSONSchemaProps.class); |
121 |
| - return new V1beta1JSONSchemaProps().putPropertiesItem("spec", spec); |
| 127 | + JsonElement jsonElementSpec = |
| 128 | + gson.toJsonTree(createSchemaGenerator().generate(DomainSpec.class)); |
| 129 | + V1beta1JSONSchemaProps spec = gson.fromJson(jsonElementSpec, V1beta1JSONSchemaProps.class); |
| 130 | + JsonElement jsonElementStatus = |
| 131 | + gson.toJsonTree(createSchemaGenerator().generate(DomainStatus.class)); |
| 132 | + V1beta1JSONSchemaProps status = |
| 133 | + gson.fromJson(jsonElementStatus, V1beta1JSONSchemaProps.class); |
| 134 | + return new V1beta1JSONSchemaProps() |
| 135 | + .putPropertiesItem("spec", spec) |
| 136 | + .putPropertiesItem("status", status); |
122 | 137 | }
|
123 | 138 |
|
124 | 139 | static SchemaGenerator createSchemaGenerator() {
|
|
0 commit comments