Skip to content

Commit ec1a893

Browse files
committed
Add OpenAPIModelName() generation for v1alpha1 and lib/version types
Use openapi-gen from k8s.io/kube-openapi to generate OpenAPIModelName() accessor functions and OpenAPI schema definitions. * Add openapi-gen to bingo. * add +k8s:openapi-gen and +k8s:openapi-model-package markers to pkg/operators/v1alpha1 and pkg/lib/version. * Add a generate-openapi Makefile target. * Remove broken empty +patchMergeKey tag from SubscriptionStatus.CatalogHealth that blocked generation. Signed-off-by: Todd Short <todd.short@me.com> Assisted-By: Claude
1 parent 1b5c3ea commit ec1a893

13 files changed

Lines changed: 3899 additions & 5 deletions

File tree

.bingo/Variables.mk

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,12 @@ $(KIND): $(BINGO_DIR)/kind.mod
2929
@echo "(re)installing $(GOBIN)/kind-v0.31.0"
3030
@cd $(BINGO_DIR) && GOWORK=off $(GO) build -mod=mod -modfile=kind.mod -o=$(GOBIN)/kind-v0.31.0 "sigs.k8s.io/kind"
3131

32+
OPENAPI_GEN := $(GOBIN)/openapi-gen-v0.0.0-20260127142750-a19766b6e2d4
33+
$(OPENAPI_GEN): $(BINGO_DIR)/openapi-gen.mod
34+
@# Install binary/ries using Go 1.14+ build command. This is using bwplotka/bingo-controlled, separate go module with pinned dependencies.
35+
@echo "(re)installing $(GOBIN)/openapi-gen-v0.0.0-20260127142750-a19766b6e2d4"
36+
@cd $(BINGO_DIR) && GOWORK=off $(GO) build -mod=mod -modfile=openapi-gen.mod -o=$(GOBIN)/openapi-gen-v0.0.0-20260127142750-a19766b6e2d4 "k8s.io/kube-openapi/cmd/openapi-gen"
37+
3238
YQ := $(GOBIN)/yq-v4.45.1
3339
$(YQ): $(BINGO_DIR)/yq.mod
3440
@# Install binary/ries using Go 1.14+ build command. This is using bwplotka/bingo-controlled, separate go module with pinned dependencies.

.bingo/openapi-gen.mod

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
module _ // Auto generated by https://github.com/bwplotka/bingo. DO NOT EDIT
2+
3+
go 1.25.3
4+
5+
require k8s.io/kube-openapi v0.0.0-20260127142750-a19766b6e2d4 // cmd/openapi-gen

.bingo/openapi-gen.sum

Lines changed: 66 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,66 @@
1+
github.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E=
2+
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
3+
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
4+
github.com/emicklei/go-restful/v3 v3.11.0 h1:rAQeMHw1c7zTmncogyy8VvRZwtkmkZ4FxERmMY4rD+g=
5+
github.com/emicklei/go-restful/v3 v3.11.0/go.mod h1:6n3XBCmQQb25CM2LCACGz8ukIrRry+4bhvbpWn3mrbc=
6+
github.com/go-logr/logr v1.4.2 h1:6pFjapn8bFcIbiKo3XT4j/BhANplGihG6tvd+8rYgrY=
7+
github.com/go-logr/logr v1.4.2/go.mod h1:9T104GzyrTigFIr8wt5mBrctHMim0Nb2HLGrmQ40KvY=
8+
github.com/go-openapi/jsonpointer v0.19.6/go.mod h1:osyAmYz/mB/C3I+WsTTSgw1ONzaLJoLCyoi6/zppojs=
9+
github.com/go-openapi/jsonpointer v0.21.0 h1:YgdVicSA9vH5RiHs9TZW5oyafXZFc6+2Vc1rr/O9oNQ=
10+
github.com/go-openapi/jsonpointer v0.21.0/go.mod h1:IUyH9l/+uyhIYQ/PXVA41Rexl+kOkAPDdXEYns6fzUY=
11+
github.com/go-openapi/jsonreference v0.20.1 h1:FBLnyygC4/IZZr893oiomc9XaghoveYTrLC1F86HID8=
12+
github.com/go-openapi/jsonreference v0.20.1/go.mod h1:Bl1zwGIM8/wsvqjsOQLJ/SH+En5Ap4rVB5KVcIDZG2k=
13+
github.com/go-openapi/swag v0.22.3/go.mod h1:UzaqsxGiab7freDnrUUra0MwWfN/q7tE4j+VcZ0yl14=
14+
github.com/go-openapi/swag v0.23.0 h1:vsEVJDUo2hPJ2tu0/Xc+4noaxyEffXNIs3cOULZ+GrE=
15+
github.com/go-openapi/swag v0.23.0/go.mod h1:esZ8ITTYEsH1V2trKHjAN8Ai7xHb8RV+YSZ577vPjgQ=
16+
github.com/google/gnostic-models v0.7.0 h1:qwTtogB15McXDaNqTZdzPJRHvaVJlAl+HVQnLmJEJxo=
17+
github.com/google/gnostic-models v0.7.0/go.mod h1:whL5G0m6dmc5cPxKc5bdKdEN3UjI7OUGxBlw57miDrQ=
18+
github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg=
19+
github.com/josharian/intern v1.0.0 h1:vlS4z54oSdjm0bgjRigI+G1HpF+tI+9rE5LLzOg8HmY=
20+
github.com/josharian/intern v1.0.0/go.mod h1:5DoeVV0s6jJacbCEi61lwdGj/aVlrQvzHFFd8Hwg//Y=
21+
github.com/json-iterator/go v1.1.12 h1:PV8peI4a0ysnczrg+LtxykD8LfKY9ML6u2jnxaEnrnM=
22+
github.com/json-iterator/go v1.1.12/go.mod h1:e30LSqwooZae/UwlEbR2852Gd8hjQvJoHmT4TnhNGBo=
23+
github.com/kr/pretty v0.2.1/go.mod h1:ipq/a2n7PKx3OHsz4KJII5eveXtPO4qwEXGdVfWzfnI=
24+
github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ=
25+
github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI=
26+
github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE=
27+
github.com/mailru/easyjson v0.7.7 h1:UGYAvKxe3sBsEDzO8ZeWOSlIQfWFlxbzLZe7hwFURr0=
28+
github.com/mailru/easyjson v0.7.7/go.mod h1:xzfreul335JAWq5oZzymOObrkdz5UnU4kGfJJLY9Nlc=
29+
github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q=
30+
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd h1:TRLaZ9cD/w8PVh93nsPXa1VrQ6jlwL5oN8l14QlcNfg=
31+
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q=
32+
github.com/modern-go/reflect2 v1.0.2 h1:xBagoLtFs94CBntxluKeaWgTMpvLxC4ur3nMaC9Gz0M=
33+
github.com/modern-go/reflect2 v1.0.2/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk=
34+
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
35+
github.com/spf13/pflag v1.0.5 h1:iy+VFUOCP1a+8yFto/drg2CJ5u0yRoB7fZw3DKv/JXA=
36+
github.com/spf13/pflag v1.0.5/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg=
37+
github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
38+
github.com/stretchr/objx v0.4.0/go.mod h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSSt89Yw=
39+
github.com/stretchr/objx v0.5.0/go.mod h1:Yh+to48EsGEfYuaHDzXPcE3xhTkx73EhmCGUpEOglKo=
40+
github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI=
41+
github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg=
42+
github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU=
43+
github.com/stretchr/testify v1.8.1/go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o6fzry7u4=
44+
go.yaml.in/yaml/v3 v3.0.3 h1:bXOww4E/J3f66rav3pX3m8w6jDE4knZjGOw8b5Y6iNE=
45+
go.yaml.in/yaml/v3 v3.0.3/go.mod h1:tBHosrYAkRZjRAOREWbDnBXUf08JOwYq++0QNwQiWzI=
46+
golang.org/x/mod v0.27.0 h1:kb+q2PyFnEADO2IEF935ehFUXlWiNjJWtRNgBLSfbxQ=
47+
golang.org/x/mod v0.27.0/go.mod h1:rWI627Fq0DEoudcK+MBkNkCe0EetEaDSwJJkCcjpazc=
48+
golang.org/x/sync v0.16.0 h1:ycBJEhp9p4vXvUZNszeOq0kGTPghopOL8q0fq3vstxw=
49+
golang.org/x/sync v0.16.0/go.mod h1:1dzgHSNfp02xaA81J2MS99Qcpr2w7fw1gpm99rleRqA=
50+
golang.org/x/tools v0.36.0 h1:kWS0uv/zsvHEle1LbV5LE8QujrxB3wfQyxHfhOk0Qkg=
51+
golang.org/x/tools v0.36.0/go.mod h1:WBDiHKJK8YgLHlcQPYQzNCkUxUypCaa5ZegCVutKm+s=
52+
google.golang.org/protobuf v1.35.1 h1:m3LfL6/Ca+fqnjnlqQXNpFPABW1UD7mjh8KO2mKFytA=
53+
google.golang.org/protobuf v1.35.1/go.mod h1:9fA7Ob0pmnwhb644+1+CVWFRbNajQ6iRojtC/QF5bRE=
54+
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
55+
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c/go.mod h1:JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q=
56+
gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
57+
gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=
58+
gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
59+
k8s.io/gengo/v2 v2.0.0-20250604051438-85fd79dbfd9f h1:SLb+kxmzfA87x4E4brQzB33VBbT2+x7Zq9ROIHmGn9Q=
60+
k8s.io/gengo/v2 v2.0.0-20250604051438-85fd79dbfd9f/go.mod h1:EJykeLsmFC60UQbYJezXkEsG2FLrt0GPNkU5iK5GWxU=
61+
k8s.io/klog/v2 v2.130.1 h1:n9Xl7H1Xvksem4KFG4PYbdQCQxqc/tTUyrgXaOhHSzk=
62+
k8s.io/klog/v2 v2.130.1/go.mod h1:3Jpz1GvMt720eyJH1ckRHK1EDfpxISzJ7I9OYgaDtPE=
63+
k8s.io/kube-openapi v0.0.0-20260127142750-a19766b6e2d4 h1:HhDfevmPS+OalTjQRKbTHppRIz01AWi8s45TMXStgYY=
64+
k8s.io/kube-openapi v0.0.0-20260127142750-a19766b6e2d4/go.mod h1:kdmbQkyfwUagLfXIad1y2TdrjPFWp2Q89B3qkRwf/pQ=
65+
sigs.k8s.io/randfill v1.0.0 h1:JfjMILfT8A6RbawdsK2JXGBR5AQVfd+9TbzrlneTyrU=
66+
sigs.k8s.io/randfill v1.0.0/go.mod h1:XeLlZ/jmk4i1HRopwe7/aU3H5n1zNUcX6TM94b3QxOY=

.bingo/variables.env

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,5 +12,7 @@ CONTROLLER_GEN="${GOBIN}/controller-gen-v0.20.0"
1212

1313
KIND="${GOBIN}/kind-v0.31.0"
1414

15+
OPENAPI_GEN="${GOBIN}/openapi-gen-v0.0.0-20260127142750-a19766b6e2d4"
16+
1517
YQ="${GOBIN}/yq-v4.45.1"
1618

Makefile

Lines changed: 17 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ install: ## Build & install operator-verify
4343
###
4444
# Code management.
4545
###
46-
.PHONY: format tidy clean generate manifests
46+
.PHONY: format tidy clean generate generate-openapi manifests
4747

4848
format: ## Format the source code
4949
$(Q)go fmt $(PKGS)
@@ -55,9 +55,24 @@ tidy: ## Update dependencies
5555
clean: ## Clean up the build artifacts
5656
$(Q)rm -rf build
5757

58-
generate: $(CONTROLLER_GEN) ## Generate code
58+
generate: $(CONTROLLER_GEN) generate-openapi ## Generate code
5959
$(CONTROLLER_GEN) object:headerFile=./hack/boilerplate.go.txt paths=./...
6060

61+
generate-openapi: $(OPENAPI_GEN) ## Generate OpenAPIModelName() functions and OpenAPI definitions
62+
@# Generate OpenAPIModelName() functions (zz_generated.model_name.go) in each input package.
63+
@# Also produces a consolidated OpenAPI definitions file in pkg/generated/openapi/ (required by openapi-gen).
64+
@# API rule violations are written to api_violations.report instead of failing the build.
65+
@# New violations in api_violations.report will cause `make verify` to fail.
66+
$(OPENAPI_GEN) \
67+
--go-header-file ./hack/boilerplate.go.txt \
68+
--output-file zz_generated.openapi.go \
69+
--output-dir ./pkg/generated/openapi \
70+
--output-pkg $(REPO)/pkg/generated/openapi \
71+
--output-model-name-file zz_generated.model_name.go \
72+
--report-filename ./api_violations.report \
73+
./pkg/operators/v1alpha1 \
74+
./pkg/lib/version
75+
6176
manifests: $(CONTROLLER_GEN) $(YQ) ## Generate manifests e.g. CRD, RBAC etc
6277
@# Create CRDs for new APIs
6378
$(CONTROLLER_GEN) crd:crdVersions=v1 output:crd:dir=./crds paths=./pkg/operators/...

api_violations.report

Lines changed: 83 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,83 @@
1+
API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,APIServiceDefinitions,Owned
2+
API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,APIServiceDefinitions,Required
3+
API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,APIServiceDescription,ActionDescriptor
4+
API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,APIServiceDescription,Resources
5+
API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,APIServiceDescription,SpecDescriptors
6+
API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,APIServiceDescription,StatusDescriptors
7+
API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,ActionDescriptor,XDescriptors
8+
API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,BundleLookup,Conditions
9+
API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,CRDDescription,ActionDescriptor
10+
API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,CRDDescription,Resources
11+
API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,CRDDescription,SpecDescriptors
12+
API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,CRDDescription,StatusDescriptors
13+
API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,CatalogSourceSpec,Secrets
14+
API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,CleanupStatus,PendingDeletion
15+
API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,ClusterServiceVersionSpec,Icon
16+
API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,ClusterServiceVersionSpec,InstallModes
17+
API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,ClusterServiceVersionSpec,Keywords
18+
API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,ClusterServiceVersionSpec,Links
19+
API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,ClusterServiceVersionSpec,Maintainers
20+
API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,ClusterServiceVersionSpec,NativeAPIs
21+
API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,ClusterServiceVersionSpec,RelatedImages
22+
API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,ClusterServiceVersionSpec,Skips
23+
API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,ClusterServiceVersionSpec,WebhookDefinitions
24+
API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,ClusterServiceVersionStatus,Conditions
25+
API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,ClusterServiceVersionStatus,RequirementStatus
26+
API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,CustomResourceDefinitions,Owned
27+
API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,CustomResourceDefinitions,Required
28+
API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,GrpcPodConfig,Tolerations
29+
API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,InstallPlanSpec,ClusterServiceVersionNames
30+
API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,InstallPlanStatus,BundleLookups
31+
API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,InstallPlanStatus,CatalogSources
32+
API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,InstallPlanStatus,Conditions
33+
API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,InstallPlanStatus,Plan
34+
API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,RequirementStatus,Dependents
35+
API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,ResourceList,Instances
36+
API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,SpecDescriptor,XDescriptors
37+
API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,StatusDescriptor,XDescriptors
38+
API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,StrategyDeploymentPermissions,Rules
39+
API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,StrategyDetailsDeployment,ClusterPermissions
40+
API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,StrategyDetailsDeployment,DeploymentSpecs
41+
API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,StrategyDetailsDeployment,Permissions
42+
API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,SubscriptionConfig,Env
43+
API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,SubscriptionConfig,EnvFrom
44+
API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,SubscriptionConfig,Tolerations
45+
API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,SubscriptionConfig,VolumeMounts
46+
API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,SubscriptionConfig,Volumes
47+
API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,SubscriptionStatus,CatalogHealth
48+
API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,SubscriptionStatus,Conditions
49+
API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,WebhookDescription,AdmissionReviewVersions
50+
API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,WebhookDescription,ConversionCRDs
51+
API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,WebhookDescription,Rules
52+
API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,APIServiceDescription,ActionDescriptor
53+
API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,ActionDescriptor,XDescriptors
54+
API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,CRDDescription,ActionDescriptor
55+
API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,CatalogSourceStatus,ConfigMapResource
56+
API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,CatalogSourceStatus,GRPCConnectionState
57+
API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,CatalogSourceStatus,RegistryServiceStatus
58+
API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,ClusterServiceVersionSpec,APIServiceDefinitions
59+
API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,ClusterServiceVersionSpec,CustomResourceDefinitions
60+
API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,ClusterServiceVersionSpec,InstallStrategy
61+
API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,ClusterServiceVersionSpec,WebhookDefinitions
62+
API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,GRPCConnectionState,LastConnectTime
63+
API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,Icon,Data
64+
API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,Icon,MediaType
65+
API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,InstallPlanReference,UID
66+
API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,InstallPlanSpec,CatalogSource
67+
API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,InstallPlanSpec,CatalogSourceNamespace
68+
API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,NamedInstallStrategy,StrategyName
69+
API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,NamedInstallStrategy,StrategySpec
70+
API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,RegistryPoll,RawInterval
71+
API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,SpecDescriptor,XDescriptors
72+
API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,StatusDescriptor,XDescriptors
73+
API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,StepResource,CatalogSource
74+
API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,StepResource,CatalogSourceNamespace
75+
API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,StrategyDetailsDeployment,DeploymentSpecs
76+
API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,SubscriptionSpec,CatalogSource
77+
API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,SubscriptionSpec,CatalogSourceNamespace
78+
API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,SubscriptionSpec,Package
79+
API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,SubscriptionStatus,Install
80+
API rule violation: streaming_list_type_json_tags,github.com/operator-framework/api/pkg/operators/v1alpha1,CatalogSourceList,ListMeta
81+
API rule violation: streaming_list_type_json_tags,github.com/operator-framework/api/pkg/operators/v1alpha1,ClusterServiceVersionList,ListMeta
82+
API rule violation: streaming_list_type_json_tags,github.com/operator-framework/api/pkg/operators/v1alpha1,InstallPlanList,ListMeta
83+
API rule violation: streaming_list_type_json_tags,github.com/operator-framework/api/pkg/operators/v1alpha1,SubscriptionList,ListMeta

0 commit comments

Comments
 (0)