Skip to content

Commit 49d772f

Browse files
authored
fix: CRD schema type for x-kubernetes-embedded-resource should be object (#157)
1 parent 01358bf commit 49d772f

File tree

2 files changed

+2
-1
lines changed

2 files changed

+2
-1
lines changed

src/KubeOps/Operator/Entities/Extensions/EntityToCrdExtensions.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -180,7 +180,7 @@ private static V1JSONSchemaProps MapProperty(
180180
// check if embedded resource is set
181181
if (info.GetCustomAttribute<EmbeddedResourceAttribute>() != null)
182182
{
183-
props.Type = null;
183+
props.Type = Object;
184184
props.Properties = null;
185185
props.XKubernetesPreserveUnknownFields = true;
186186
props.XKubernetesEmbeddedResource = true;

tests/KubeOps.Test/Operator/Entities/CrdGeneration.Test.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -338,6 +338,7 @@ public void Should_Map_Embedded_Resources()
338338
var crd = _testSpecEntity.CreateCrd();
339339

340340
var specProperties = crd.Spec.Versions.First().Schema.OpenAPIV3Schema.Properties["spec"];
341+
specProperties.Properties["kubernetesObject"].Type.Should().Be("object");
341342
specProperties.Properties["kubernetesObject"].Properties.Should().BeNull();
342343
specProperties.Properties["kubernetesObject"].XKubernetesPreserveUnknownFields.Should().BeTrue();
343344
specProperties.Properties["kubernetesObject"].XKubernetesEmbeddedResource.Should().BeTrue();

0 commit comments

Comments
 (0)