From 12a2c954f5809ea481f0e4fe16781080103ea72e Mon Sep 17 00:00:00 2001 From: WSandboxedOCCodeBot Date: Wed, 25 Feb 2026 07:07:15 -0800 Subject: [PATCH 01/24] fix: upgrade Go to 1.25.7 to resolve CVE-2025-68121 (#3776) Co-authored-by: OpenClaw Security Upstream-repository: operator-lifecycle-manager Upstream-commit: abb8e1f9536bc067fdff6e2f0e1d13b4d6f7dafe --- go.mod | 2 +- staging/operator-lifecycle-manager/go.mod | 2 +- vendor/modules.txt | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/go.mod b/go.mod index 395656ca9e..78b02bc241 100644 --- a/go.mod +++ b/go.mod @@ -1,6 +1,6 @@ module github.com/openshift/operator-framework-olm -go 1.25.3 +go 1.25.7 require ( github.com/blang/semver/v4 v4.0.0 diff --git a/staging/operator-lifecycle-manager/go.mod b/staging/operator-lifecycle-manager/go.mod index 08b90957ce..be34789beb 100644 --- a/staging/operator-lifecycle-manager/go.mod +++ b/staging/operator-lifecycle-manager/go.mod @@ -1,6 +1,6 @@ module github.com/operator-framework/operator-lifecycle-manager -go 1.25.3 +go 1.25.7 require ( github.com/blang/semver/v4 v4.0.0 diff --git a/vendor/modules.txt b/vendor/modules.txt index 696e8977f3..e0dbc3a82f 100644 --- a/vendor/modules.txt +++ b/vendor/modules.txt @@ -658,7 +658,7 @@ github.com/operator-framework/api/pkg/validation/errors github.com/operator-framework/api/pkg/validation/interfaces github.com/operator-framework/api/pkg/validation/internal # github.com/operator-framework/operator-lifecycle-manager v0.0.0-00010101000000-000000000000 => ./staging/operator-lifecycle-manager -## explicit; go 1.25.3 +## explicit; go 1.25.7 github.com/operator-framework/operator-lifecycle-manager/cmd/catalog github.com/operator-framework/operator-lifecycle-manager/cmd/copy-content github.com/operator-framework/operator-lifecycle-manager/cmd/olm From 49d886f8787045c26a0c692d4c7475c8a0e63804 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 25 Feb 2026 20:20:47 +0000 Subject: [PATCH 02/24] Bump goreleaser/goreleaser-action from 6 to 7 (#3775) Bumps [goreleaser/goreleaser-action](https://github.com/goreleaser/goreleaser-action) from 6 to 7. - [Release notes](https://github.com/goreleaser/goreleaser-action/releases) - [Commits](https://github.com/goreleaser/goreleaser-action/compare/v6...v7) --- updated-dependencies: - dependency-name: goreleaser/goreleaser-action dependency-version: '7' dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Upstream-repository: operator-lifecycle-manager Upstream-commit: 9fe62d815c547aed09ee2439d2e3132111a6895f --- .../.github/workflows/goreleaser.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/staging/operator-lifecycle-manager/.github/workflows/goreleaser.yaml b/staging/operator-lifecycle-manager/.github/workflows/goreleaser.yaml index 91b6bb8bcc..57cb63ff6b 100644 --- a/staging/operator-lifecycle-manager/.github/workflows/goreleaser.yaml +++ b/staging/operator-lifecycle-manager/.github/workflows/goreleaser.yaml @@ -39,7 +39,7 @@ jobs: password: ${{ secrets.QUAY_PASSWORD }} - name: Run GoReleaser - uses: goreleaser/goreleaser-action@v6 + uses: goreleaser/goreleaser-action@v7 with: version: 0.177.0 args: release --rm-dist ${{ github.event_name == 'pull_request' && '--snapshot' || '' }} From ec4912775c4c6b860e70ec53bad54fc376e89fc3 Mon Sep 17 00:00:00 2001 From: Todd Short Date: Wed, 25 Feb 2026 20:01:08 -0500 Subject: [PATCH 03/24] Update operator-framework/api to v0.40.0 (#3777) * Update operator-framework/api to v0.40.0 This adds some OpenAPIModelName() functions Signed-off-by: Todd Short * Update codegen violation exceptions for operator-framework/api v0.40.0 Add new API rule violations to the exceptions list that were introduced by the operator-framework/api v0.40.0 update. Signed-off-by: Jian Zhang --------- Signed-off-by: Todd Short Signed-off-by: Jian Zhang Co-authored-by: Jian Zhang Upstream-repository: operator-lifecycle-manager Upstream-commit: 521a89f9c683b0dd37e16052b10e57585725a70d --- go.mod | 2 +- staging/operator-lifecycle-manager/go.mod | 2 +- staging/operator-lifecycle-manager/go.sum | 4 +- .../client/openapi/zz_generated.openapi.go | 3099 +++++++++++++---- .../scripts/codegen_violation_exceptions.list | 33 + .../client/openapi/zz_generated.openapi.go | 3099 +++++++++++++---- vendor/modules.txt | 2 +- 7 files changed, 4872 insertions(+), 1369 deletions(-) diff --git a/go.mod b/go.mod index 78b02bc241..bbfbc42397 100644 --- a/go.mod +++ b/go.mod @@ -13,7 +13,7 @@ require ( github.com/mikefarah/yq/v3 v3.0.0-20201202084205-8846255d1c37 github.com/onsi/ginkgo/v2 v2.28.1 github.com/openshift/api v0.0.0-20260204104751-e09e5a4ebcd0 - github.com/operator-framework/api v0.39.0 + github.com/operator-framework/api v0.40.0 github.com/operator-framework/operator-lifecycle-manager v0.0.0-00010101000000-000000000000 github.com/operator-framework/operator-registry v1.63.0 github.com/sirupsen/logrus v1.9.4 diff --git a/staging/operator-lifecycle-manager/go.mod b/staging/operator-lifecycle-manager/go.mod index be34789beb..7166338b2b 100644 --- a/staging/operator-lifecycle-manager/go.mod +++ b/staging/operator-lifecycle-manager/go.mod @@ -21,7 +21,7 @@ require ( github.com/openshift/api v0.0.0-20260204104751-e09e5a4ebcd0 github.com/openshift/client-go v0.0.0-20260108185524-48f4ccfc4e13 github.com/openshift/library-go v0.0.0-20260204111611-b7d4fa0e292a - github.com/operator-framework/api v0.39.0 + github.com/operator-framework/api v0.40.0 github.com/operator-framework/operator-registry v1.63.0 github.com/otiai10/copy v1.14.1 github.com/pkg/errors v0.9.1 diff --git a/staging/operator-lifecycle-manager/go.sum b/staging/operator-lifecycle-manager/go.sum index 32f4fc5020..dd980d8776 100644 --- a/staging/operator-lifecycle-manager/go.sum +++ b/staging/operator-lifecycle-manager/go.sum @@ -343,8 +343,8 @@ github.com/openshift/client-go v0.0.0-20260108185524-48f4ccfc4e13 h1:6rd4zSo2UaW github.com/openshift/client-go v0.0.0-20260108185524-48f4ccfc4e13/go.mod h1:YvOmPmV7wcJxpfhTDuFqqs2Xpb3M3ovsM6Qs/i2ptq4= github.com/openshift/library-go v0.0.0-20260204111611-b7d4fa0e292a h1:YLnZtVfqGUfTbQ+M06QAslEmP4WrnRoPrk4AtoBJdm8= github.com/openshift/library-go v0.0.0-20260204111611-b7d4fa0e292a/go.mod h1:DCRz1EgdayEmr9b6KXKDL+DWBN0rGHu/VYADeHzPoOk= -github.com/operator-framework/api v0.39.0 h1:9h7aVufeQ+l2ACXJE51hkMFcqrQwJOLM6/vwgGu6tgI= -github.com/operator-framework/api v0.39.0/go.mod h1:tcYIwuznZzfo4HKUTu0dbquIHqxiewnKW/ZmhHKzMH8= +github.com/operator-framework/api v0.40.0 h1:xTTKJM6Yv6sr/pLibiINlnaXy+iNClmCo5QJMeHwyuc= +github.com/operator-framework/api v0.40.0/go.mod h1:cMF6TTZ2BgBoV/sDlO4Pm7G2jma7JlEsCYXjOOqwrnw= github.com/operator-framework/operator-registry v1.63.0 h1:UIahnpjkH7y98A8AgPw3DUXVsM1yQr36JajRaJ/00nQ= github.com/operator-framework/operator-registry v1.63.0/go.mod h1:A1w3zzvxx1h5rvkuQG2FgHq6lTMHASLb/YPelq7AmxQ= github.com/otiai10/copy v1.14.1 h1:5/7E6qsUMBaH5AnQ0sSLzzTg1oTECmcCmT6lvF45Na8= diff --git a/staging/operator-lifecycle-manager/pkg/package-server/client/openapi/zz_generated.openapi.go b/staging/operator-lifecycle-manager/pkg/package-server/client/openapi/zz_generated.openapi.go index 0e3e9985f0..38cf1b474e 100644 --- a/staging/operator-lifecycle-manager/pkg/package-server/client/openapi/zz_generated.openapi.go +++ b/staging/operator-lifecycle-manager/pkg/package-server/client/openapi/zz_generated.openapi.go @@ -20,111 +20,142 @@ limitations under the License. package openapi import ( - libversion "github.com/operator-framework/api/pkg/lib/version" + version "github.com/operator-framework/api/pkg/lib/version" + v1alpha1 "github.com/operator-framework/api/pkg/operators/v1alpha1" v1 "github.com/operator-framework/operator-lifecycle-manager/pkg/package-server/apis/operators/v1" resource "k8s.io/apimachinery/pkg/api/resource" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" runtime "k8s.io/apimachinery/pkg/runtime" - version "k8s.io/apimachinery/pkg/version" + pkgversion "k8s.io/apimachinery/pkg/version" common "k8s.io/kube-openapi/pkg/common" spec "k8s.io/kube-openapi/pkg/validation/spec" ) func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenAPIDefinition { return map[string]common.OpenAPIDefinition{ - "github.com/operator-framework/api/pkg/lib/version.OperatorVersion": schema_api_pkg_lib_version_OperatorVersion(ref), - "github.com/operator-framework/api/pkg/operators/v1alpha1.APIResourceReference": schema_api_pkg_operators_v1alpha1_APIResourceReference(ref), - "github.com/operator-framework/api/pkg/operators/v1alpha1.APIServiceDefinitions": schema_api_pkg_operators_v1alpha1_APIServiceDefinitions(ref), - "github.com/operator-framework/api/pkg/operators/v1alpha1.APIServiceDescription": schema_api_pkg_operators_v1alpha1_APIServiceDescription(ref), - "github.com/operator-framework/api/pkg/operators/v1alpha1.ActionDescriptor": schema_api_pkg_operators_v1alpha1_ActionDescriptor(ref), - "github.com/operator-framework/api/pkg/operators/v1alpha1.AppLink": schema_api_pkg_operators_v1alpha1_AppLink(ref), - "github.com/operator-framework/api/pkg/operators/v1alpha1.CRDDescription": schema_api_pkg_operators_v1alpha1_CRDDescription(ref), - "github.com/operator-framework/api/pkg/operators/v1alpha1.CleanupSpec": schema_api_pkg_operators_v1alpha1_CleanupSpec(ref), - "github.com/operator-framework/api/pkg/operators/v1alpha1.CleanupStatus": schema_api_pkg_operators_v1alpha1_CleanupStatus(ref), - "github.com/operator-framework/api/pkg/operators/v1alpha1.ClusterServiceVersionCondition": schema_api_pkg_operators_v1alpha1_ClusterServiceVersionCondition(ref), - "github.com/operator-framework/api/pkg/operators/v1alpha1.ClusterServiceVersionSpec": schema_api_pkg_operators_v1alpha1_ClusterServiceVersionSpec(ref), - "github.com/operator-framework/api/pkg/operators/v1alpha1.ClusterServiceVersionStatus": schema_api_pkg_operators_v1alpha1_ClusterServiceVersionStatus(ref), - "github.com/operator-framework/api/pkg/operators/v1alpha1.CustomResourceDefinitions": schema_api_pkg_operators_v1alpha1_CustomResourceDefinitions(ref), - "github.com/operator-framework/api/pkg/operators/v1alpha1.DependentStatus": schema_api_pkg_operators_v1alpha1_DependentStatus(ref), - "github.com/operator-framework/api/pkg/operators/v1alpha1.Icon": schema_api_pkg_operators_v1alpha1_Icon(ref), - "github.com/operator-framework/api/pkg/operators/v1alpha1.InstallMode": schema_api_pkg_operators_v1alpha1_InstallMode(ref), - "github.com/operator-framework/api/pkg/operators/v1alpha1.Maintainer": schema_api_pkg_operators_v1alpha1_Maintainer(ref), - "github.com/operator-framework/api/pkg/operators/v1alpha1.NamedInstallStrategy": schema_api_pkg_operators_v1alpha1_NamedInstallStrategy(ref), - "github.com/operator-framework/api/pkg/operators/v1alpha1.RelatedImage": schema_api_pkg_operators_v1alpha1_RelatedImage(ref), - "github.com/operator-framework/api/pkg/operators/v1alpha1.RequirementStatus": schema_api_pkg_operators_v1alpha1_RequirementStatus(ref), - "github.com/operator-framework/api/pkg/operators/v1alpha1.ResourceInstance": schema_api_pkg_operators_v1alpha1_ResourceInstance(ref), - "github.com/operator-framework/api/pkg/operators/v1alpha1.ResourceList": schema_api_pkg_operators_v1alpha1_ResourceList(ref), - "github.com/operator-framework/api/pkg/operators/v1alpha1.SpecDescriptor": schema_api_pkg_operators_v1alpha1_SpecDescriptor(ref), - "github.com/operator-framework/api/pkg/operators/v1alpha1.StatusDescriptor": schema_api_pkg_operators_v1alpha1_StatusDescriptor(ref), - "github.com/operator-framework/api/pkg/operators/v1alpha1.StrategyDeploymentPermissions": schema_api_pkg_operators_v1alpha1_StrategyDeploymentPermissions(ref), - "github.com/operator-framework/api/pkg/operators/v1alpha1.StrategyDeploymentSpec": schema_api_pkg_operators_v1alpha1_StrategyDeploymentSpec(ref), - "github.com/operator-framework/api/pkg/operators/v1alpha1.StrategyDetailsDeployment": schema_api_pkg_operators_v1alpha1_StrategyDetailsDeployment(ref), - "github.com/operator-framework/api/pkg/operators/v1alpha1.WebhookDescription": schema_api_pkg_operators_v1alpha1_WebhookDescription(ref), - v1.AppLink{}.OpenAPIModelName(): schema_package_server_apis_operators_v1_AppLink(ref), - v1.CSVDescription{}.OpenAPIModelName(): schema_package_server_apis_operators_v1_CSVDescription(ref), - v1.ChannelEntry{}.OpenAPIModelName(): schema_package_server_apis_operators_v1_ChannelEntry(ref), - v1.Deprecation{}.OpenAPIModelName(): schema_package_server_apis_operators_v1_Deprecation(ref), - v1.Icon{}.OpenAPIModelName(): schema_package_server_apis_operators_v1_Icon(ref), - v1.Maintainer{}.OpenAPIModelName(): schema_package_server_apis_operators_v1_Maintainer(ref), - v1.PackageChannel{}.OpenAPIModelName(): schema_package_server_apis_operators_v1_PackageChannel(ref), - v1.PackageManifest{}.OpenAPIModelName(): schema_package_server_apis_operators_v1_PackageManifest(ref), - v1.PackageManifestList{}.OpenAPIModelName(): schema_package_server_apis_operators_v1_PackageManifestList(ref), - v1.PackageManifestSpec{}.OpenAPIModelName(): schema_package_server_apis_operators_v1_PackageManifestSpec(ref), - v1.PackageManifestStatus{}.OpenAPIModelName(): schema_package_server_apis_operators_v1_PackageManifestStatus(ref), - resource.Quantity{}.OpenAPIModelName(): schema_apimachinery_pkg_api_resource_Quantity(ref), - metav1.APIGroup{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_APIGroup(ref), - metav1.APIGroupList{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_APIGroupList(ref), - metav1.APIResource{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_APIResource(ref), - metav1.APIResourceList{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_APIResourceList(ref), - metav1.APIVersions{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_APIVersions(ref), - metav1.ApplyOptions{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_ApplyOptions(ref), - metav1.Condition{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_Condition(ref), - metav1.CreateOptions{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_CreateOptions(ref), - metav1.DeleteOptions{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_DeleteOptions(ref), - metav1.Duration{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_Duration(ref), - metav1.FieldSelectorRequirement{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_FieldSelectorRequirement(ref), - metav1.FieldsV1{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_FieldsV1(ref), - metav1.GetOptions{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_GetOptions(ref), - metav1.GroupKind{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_GroupKind(ref), - metav1.GroupResource{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_GroupResource(ref), - metav1.GroupVersion{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_GroupVersion(ref), - metav1.GroupVersionForDiscovery{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_GroupVersionForDiscovery(ref), - metav1.GroupVersionKind{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_GroupVersionKind(ref), - metav1.GroupVersionResource{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_GroupVersionResource(ref), - metav1.InternalEvent{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_InternalEvent(ref), - metav1.LabelSelector{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_LabelSelector(ref), - metav1.LabelSelectorRequirement{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_LabelSelectorRequirement(ref), - metav1.List{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_List(ref), - metav1.ListMeta{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_ListMeta(ref), - metav1.ListOptions{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_ListOptions(ref), - metav1.ManagedFieldsEntry{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_ManagedFieldsEntry(ref), - metav1.MicroTime{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_MicroTime(ref), - metav1.ObjectMeta{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_ObjectMeta(ref), - metav1.OwnerReference{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_OwnerReference(ref), - metav1.PartialObjectMetadata{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_PartialObjectMetadata(ref), - metav1.PartialObjectMetadataList{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_PartialObjectMetadataList(ref), - metav1.Patch{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_Patch(ref), - metav1.PatchOptions{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_PatchOptions(ref), - metav1.Preconditions{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_Preconditions(ref), - metav1.RootPaths{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_RootPaths(ref), - metav1.ServerAddressByClientCIDR{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_ServerAddressByClientCIDR(ref), - metav1.Status{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_Status(ref), - metav1.StatusCause{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_StatusCause(ref), - metav1.StatusDetails{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_StatusDetails(ref), - metav1.Table{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_Table(ref), - metav1.TableColumnDefinition{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_TableColumnDefinition(ref), - metav1.TableOptions{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_TableOptions(ref), - metav1.TableRow{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_TableRow(ref), - metav1.TableRowCondition{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_TableRowCondition(ref), - metav1.Time{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_Time(ref), - metav1.Timestamp{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_Timestamp(ref), - metav1.TypeMeta{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_TypeMeta(ref), - metav1.UpdateOptions{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_UpdateOptions(ref), - metav1.WatchEvent{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_WatchEvent(ref), - runtime.RawExtension{}.OpenAPIModelName(): schema_k8sio_apimachinery_pkg_runtime_RawExtension(ref), - runtime.TypeMeta{}.OpenAPIModelName(): schema_k8sio_apimachinery_pkg_runtime_TypeMeta(ref), - runtime.Unknown{}.OpenAPIModelName(): schema_k8sio_apimachinery_pkg_runtime_Unknown(ref), - version.Info{}.OpenAPIModelName(): schema_k8sio_apimachinery_pkg_version_Info(ref), + version.OperatorVersion{}.OpenAPIModelName(): schema_api_pkg_lib_version_OperatorVersion(ref), + v1alpha1.APIResourceReference{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_APIResourceReference(ref), + v1alpha1.APIServiceDefinitions{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_APIServiceDefinitions(ref), + v1alpha1.APIServiceDescription{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_APIServiceDescription(ref), + v1alpha1.ActionDescriptor{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_ActionDescriptor(ref), + v1alpha1.AppLink{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_AppLink(ref), + v1alpha1.BundleLookup{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_BundleLookup(ref), + v1alpha1.BundleLookupCondition{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_BundleLookupCondition(ref), + v1alpha1.CRDDescription{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_CRDDescription(ref), + v1alpha1.CatalogSource{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_CatalogSource(ref), + v1alpha1.CatalogSourceList{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_CatalogSourceList(ref), + v1alpha1.CatalogSourceSpec{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_CatalogSourceSpec(ref), + v1alpha1.CatalogSourceStatus{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_CatalogSourceStatus(ref), + v1alpha1.CleanupSpec{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_CleanupSpec(ref), + v1alpha1.CleanupStatus{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_CleanupStatus(ref), + v1alpha1.ClusterServiceVersion{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_ClusterServiceVersion(ref), + v1alpha1.ClusterServiceVersionCondition{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_ClusterServiceVersionCondition(ref), + v1alpha1.ClusterServiceVersionList{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_ClusterServiceVersionList(ref), + v1alpha1.ClusterServiceVersionSpec{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_ClusterServiceVersionSpec(ref), + v1alpha1.ClusterServiceVersionStatus{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_ClusterServiceVersionStatus(ref), + v1alpha1.ConfigMapResourceReference{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_ConfigMapResourceReference(ref), + v1alpha1.CustomResourceDefinitions{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_CustomResourceDefinitions(ref), + v1alpha1.DependentStatus{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_DependentStatus(ref), + v1alpha1.ExtractContentConfig{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_ExtractContentConfig(ref), + v1alpha1.GRPCConnectionState{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_GRPCConnectionState(ref), + v1alpha1.GrpcPodConfig{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_GrpcPodConfig(ref), + v1alpha1.Icon{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_Icon(ref), + v1alpha1.InstallMode{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_InstallMode(ref), + v1alpha1.InstallPlan{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_InstallPlan(ref), + v1alpha1.InstallPlanCondition{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_InstallPlanCondition(ref), + v1alpha1.InstallPlanList{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_InstallPlanList(ref), + v1alpha1.InstallPlanReference{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_InstallPlanReference(ref), + v1alpha1.InstallPlanSpec{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_InstallPlanSpec(ref), + v1alpha1.InstallPlanStatus{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_InstallPlanStatus(ref), + v1alpha1.Maintainer{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_Maintainer(ref), + v1alpha1.NamedInstallStrategy{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_NamedInstallStrategy(ref), + v1alpha1.RegistryPoll{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_RegistryPoll(ref), + v1alpha1.RegistryServiceStatus{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_RegistryServiceStatus(ref), + v1alpha1.RelatedImage{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_RelatedImage(ref), + v1alpha1.RequirementStatus{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_RequirementStatus(ref), + v1alpha1.ResourceInstance{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_ResourceInstance(ref), + v1alpha1.ResourceList{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_ResourceList(ref), + v1alpha1.SpecDescriptor{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_SpecDescriptor(ref), + v1alpha1.StatusDescriptor{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_StatusDescriptor(ref), + v1alpha1.Step{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_Step(ref), + v1alpha1.StepResource{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_StepResource(ref), + v1alpha1.StrategyDeploymentPermissions{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_StrategyDeploymentPermissions(ref), + v1alpha1.StrategyDeploymentSpec{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_StrategyDeploymentSpec(ref), + v1alpha1.StrategyDetailsDeployment{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_StrategyDetailsDeployment(ref), + v1alpha1.Subscription{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_Subscription(ref), + v1alpha1.SubscriptionCatalogHealth{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_SubscriptionCatalogHealth(ref), + v1alpha1.SubscriptionCondition{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_SubscriptionCondition(ref), + v1alpha1.SubscriptionConfig{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_SubscriptionConfig(ref), + v1alpha1.SubscriptionList{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_SubscriptionList(ref), + v1alpha1.SubscriptionSpec{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_SubscriptionSpec(ref), + v1alpha1.SubscriptionStatus{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_SubscriptionStatus(ref), + v1alpha1.UpdateStrategy{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_UpdateStrategy(ref), + v1alpha1.WebhookDescription{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_WebhookDescription(ref), + v1.AppLink{}.OpenAPIModelName(): schema_package_server_apis_operators_v1_AppLink(ref), + v1.CSVDescription{}.OpenAPIModelName(): schema_package_server_apis_operators_v1_CSVDescription(ref), + v1.ChannelEntry{}.OpenAPIModelName(): schema_package_server_apis_operators_v1_ChannelEntry(ref), + v1.Deprecation{}.OpenAPIModelName(): schema_package_server_apis_operators_v1_Deprecation(ref), + v1.Icon{}.OpenAPIModelName(): schema_package_server_apis_operators_v1_Icon(ref), + v1.Maintainer{}.OpenAPIModelName(): schema_package_server_apis_operators_v1_Maintainer(ref), + v1.PackageChannel{}.OpenAPIModelName(): schema_package_server_apis_operators_v1_PackageChannel(ref), + v1.PackageManifest{}.OpenAPIModelName(): schema_package_server_apis_operators_v1_PackageManifest(ref), + v1.PackageManifestList{}.OpenAPIModelName(): schema_package_server_apis_operators_v1_PackageManifestList(ref), + v1.PackageManifestSpec{}.OpenAPIModelName(): schema_package_server_apis_operators_v1_PackageManifestSpec(ref), + v1.PackageManifestStatus{}.OpenAPIModelName(): schema_package_server_apis_operators_v1_PackageManifestStatus(ref), + resource.Quantity{}.OpenAPIModelName(): schema_apimachinery_pkg_api_resource_Quantity(ref), + metav1.APIGroup{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_APIGroup(ref), + metav1.APIGroupList{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_APIGroupList(ref), + metav1.APIResource{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_APIResource(ref), + metav1.APIResourceList{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_APIResourceList(ref), + metav1.APIVersions{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_APIVersions(ref), + metav1.ApplyOptions{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_ApplyOptions(ref), + metav1.Condition{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_Condition(ref), + metav1.CreateOptions{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_CreateOptions(ref), + metav1.DeleteOptions{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_DeleteOptions(ref), + metav1.Duration{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_Duration(ref), + metav1.FieldSelectorRequirement{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_FieldSelectorRequirement(ref), + metav1.FieldsV1{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_FieldsV1(ref), + metav1.GetOptions{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_GetOptions(ref), + metav1.GroupKind{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_GroupKind(ref), + metav1.GroupResource{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_GroupResource(ref), + metav1.GroupVersion{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_GroupVersion(ref), + metav1.GroupVersionForDiscovery{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_GroupVersionForDiscovery(ref), + metav1.GroupVersionKind{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_GroupVersionKind(ref), + metav1.GroupVersionResource{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_GroupVersionResource(ref), + metav1.InternalEvent{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_InternalEvent(ref), + metav1.LabelSelector{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_LabelSelector(ref), + metav1.LabelSelectorRequirement{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_LabelSelectorRequirement(ref), + metav1.List{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_List(ref), + metav1.ListMeta{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_ListMeta(ref), + metav1.ListOptions{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_ListOptions(ref), + metav1.ManagedFieldsEntry{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_ManagedFieldsEntry(ref), + metav1.MicroTime{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_MicroTime(ref), + metav1.ObjectMeta{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_ObjectMeta(ref), + metav1.OwnerReference{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_OwnerReference(ref), + metav1.PartialObjectMetadata{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_PartialObjectMetadata(ref), + metav1.PartialObjectMetadataList{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_PartialObjectMetadataList(ref), + metav1.Patch{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_Patch(ref), + metav1.PatchOptions{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_PatchOptions(ref), + metav1.Preconditions{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_Preconditions(ref), + metav1.RootPaths{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_RootPaths(ref), + metav1.ServerAddressByClientCIDR{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_ServerAddressByClientCIDR(ref), + metav1.Status{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_Status(ref), + metav1.StatusCause{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_StatusCause(ref), + metav1.StatusDetails{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_StatusDetails(ref), + metav1.Table{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_Table(ref), + metav1.TableColumnDefinition{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_TableColumnDefinition(ref), + metav1.TableOptions{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_TableOptions(ref), + metav1.TableRow{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_TableRow(ref), + metav1.TableRowCondition{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_TableRowCondition(ref), + metav1.Time{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_Time(ref), + metav1.Timestamp{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_Timestamp(ref), + metav1.TypeMeta{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_TypeMeta(ref), + metav1.UpdateOptions{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_UpdateOptions(ref), + metav1.WatchEvent{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_WatchEvent(ref), + runtime.RawExtension{}.OpenAPIModelName(): schema_k8sio_apimachinery_pkg_runtime_RawExtension(ref), + runtime.TypeMeta{}.OpenAPIModelName(): schema_k8sio_apimachinery_pkg_runtime_TypeMeta(ref), + runtime.Unknown{}.OpenAPIModelName(): schema_k8sio_apimachinery_pkg_runtime_Unknown(ref), + pkgversion.Info{}.OpenAPIModelName(): schema_k8sio_apimachinery_pkg_version_Info(ref), } } @@ -133,8 +164,8 @@ func schema_api_pkg_lib_version_OperatorVersion(ref common.ReferenceCallback) co Schema: spec.Schema{ SchemaProps: spec.SchemaProps{ Description: "OperatorVersion is a wrapper around semver.Version which supports correct marshaling to YAML and JSON.", - Type: libversion.OperatorVersion{}.OpenAPISchemaType(), - Format: libversion.OperatorVersion{}.OpenAPISchemaFormat(), + Type: version.OperatorVersion{}.OpenAPISchemaType(), + Format: version.OperatorVersion{}.OpenAPISchemaFormat(), }, }, } @@ -192,7 +223,7 @@ func schema_api_pkg_operators_v1alpha1_APIServiceDefinitions(ref common.Referenc Schema: &spec.Schema{ SchemaProps: spec.SchemaProps{ Default: map[string]interface{}{}, - Ref: ref("github.com/operator-framework/api/pkg/operators/v1alpha1.APIServiceDescription"), + Ref: ref(v1alpha1.APIServiceDescription{}.OpenAPIModelName()), }, }, }, @@ -205,7 +236,7 @@ func schema_api_pkg_operators_v1alpha1_APIServiceDefinitions(ref common.Referenc Schema: &spec.Schema{ SchemaProps: spec.SchemaProps{ Default: map[string]interface{}{}, - Ref: ref("github.com/operator-framework/api/pkg/operators/v1alpha1.APIServiceDescription"), + Ref: ref(v1alpha1.APIServiceDescription{}.OpenAPIModelName()), }, }, }, @@ -215,7 +246,7 @@ func schema_api_pkg_operators_v1alpha1_APIServiceDefinitions(ref common.Referenc }, }, Dependencies: []string{ - "github.com/operator-framework/api/pkg/operators/v1alpha1.APIServiceDescription"}, + v1alpha1.APIServiceDescription{}.OpenAPIModelName()}, } } @@ -285,7 +316,7 @@ func schema_api_pkg_operators_v1alpha1_APIServiceDescription(ref common.Referenc Schema: &spec.Schema{ SchemaProps: spec.SchemaProps{ Default: map[string]interface{}{}, - Ref: ref("github.com/operator-framework/api/pkg/operators/v1alpha1.APIResourceReference"), + Ref: ref(v1alpha1.APIResourceReference{}.OpenAPIModelName()), }, }, }, @@ -298,7 +329,7 @@ func schema_api_pkg_operators_v1alpha1_APIServiceDescription(ref common.Referenc Schema: &spec.Schema{ SchemaProps: spec.SchemaProps{ Default: map[string]interface{}{}, - Ref: ref("github.com/operator-framework/api/pkg/operators/v1alpha1.StatusDescriptor"), + Ref: ref(v1alpha1.StatusDescriptor{}.OpenAPIModelName()), }, }, }, @@ -311,7 +342,7 @@ func schema_api_pkg_operators_v1alpha1_APIServiceDescription(ref common.Referenc Schema: &spec.Schema{ SchemaProps: spec.SchemaProps{ Default: map[string]interface{}{}, - Ref: ref("github.com/operator-framework/api/pkg/operators/v1alpha1.SpecDescriptor"), + Ref: ref(v1alpha1.SpecDescriptor{}.OpenAPIModelName()), }, }, }, @@ -324,7 +355,7 @@ func schema_api_pkg_operators_v1alpha1_APIServiceDescription(ref common.Referenc Schema: &spec.Schema{ SchemaProps: spec.SchemaProps{ Default: map[string]interface{}{}, - Ref: ref("github.com/operator-framework/api/pkg/operators/v1alpha1.ActionDescriptor"), + Ref: ref(v1alpha1.ActionDescriptor{}.OpenAPIModelName()), }, }, }, @@ -335,7 +366,7 @@ func schema_api_pkg_operators_v1alpha1_APIServiceDescription(ref common.Referenc }, }, Dependencies: []string{ - "github.com/operator-framework/api/pkg/operators/v1alpha1.APIResourceReference", "github.com/operator-framework/api/pkg/operators/v1alpha1.ActionDescriptor", "github.com/operator-framework/api/pkg/operators/v1alpha1.SpecDescriptor", "github.com/operator-framework/api/pkg/operators/v1alpha1.StatusDescriptor"}, + v1alpha1.APIResourceReference{}.OpenAPIModelName(), v1alpha1.ActionDescriptor{}.OpenAPIModelName(), v1alpha1.SpecDescriptor{}.OpenAPIModelName(), v1alpha1.StatusDescriptor{}.OpenAPIModelName()}, } } @@ -416,6 +447,136 @@ func schema_api_pkg_operators_v1alpha1_AppLink(ref common.ReferenceCallback) com } } +func schema_api_pkg_operators_v1alpha1_BundleLookup(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "BundleLookup is a request to pull and unpackage the content of a bundle to the cluster.", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "path": { + SchemaProps: spec.SchemaProps{ + Description: "Path refers to the location of a bundle to pull. It's typically an image reference.", + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "identifier": { + SchemaProps: spec.SchemaProps{ + Description: "Identifier is the catalog-unique name of the operator (the name of the CSV for bundles that contain CSVs)", + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "replaces": { + SchemaProps: spec.SchemaProps{ + Description: "Replaces is the name of the bundle to replace with the one found at Path.", + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "catalogSourceRef": { + SchemaProps: spec.SchemaProps{ + Description: "CatalogSourceRef is a reference to the CatalogSource the bundle path was resolved from.", + Ref: ref("k8s.io/api/core/v1.ObjectReference"), + }, + }, + "conditions": { + VendorExtensible: spec.VendorExtensible{ + Extensions: spec.Extensions{ + "x-kubernetes-patch-merge-key": "type", + "x-kubernetes-patch-strategy": "merge", + }, + }, + SchemaProps: spec.SchemaProps{ + Description: "Conditions represents the overall state of a BundleLookup.", + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.BundleLookupCondition{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + "properties": { + SchemaProps: spec.SchemaProps{ + Description: "The effective properties of the unpacked bundle.", + Type: []string{"string"}, + Format: "", + }, + }, + }, + Required: []string{"path", "identifier", "replaces", "catalogSourceRef"}, + }, + }, + Dependencies: []string{ + v1alpha1.BundleLookupCondition{}.OpenAPIModelName(), "k8s.io/api/core/v1.ObjectReference"}, + } +} + +func schema_api_pkg_operators_v1alpha1_BundleLookupCondition(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "type": { + SchemaProps: spec.SchemaProps{ + Description: "Type of condition.", + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "status": { + SchemaProps: spec.SchemaProps{ + Description: "Status of the condition, one of True, False, Unknown.", + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "reason": { + SchemaProps: spec.SchemaProps{ + Description: "The reason for the condition's last transition.", + Type: []string{"string"}, + Format: "", + }, + }, + "message": { + SchemaProps: spec.SchemaProps{ + Description: "A human readable message indicating details about the transition.", + Type: []string{"string"}, + Format: "", + }, + }, + "lastUpdateTime": { + SchemaProps: spec.SchemaProps{ + Description: "Last time the condition was probed.", + Ref: ref(metav1.Time{}.OpenAPIModelName()), + }, + }, + "lastTransitionTime": { + SchemaProps: spec.SchemaProps{ + Description: "Last time the condition transitioned from one status to another.", + Ref: ref(metav1.Time{}.OpenAPIModelName()), + }, + }, + }, + Required: []string{"type", "status"}, + }, + }, + Dependencies: []string{ + metav1.Time{}.OpenAPIModelName()}, + } +} + func schema_api_pkg_operators_v1alpha1_CRDDescription(ref common.ReferenceCallback) common.OpenAPIDefinition { return common.OpenAPIDefinition{ Schema: spec.Schema{ @@ -463,7 +624,7 @@ func schema_api_pkg_operators_v1alpha1_CRDDescription(ref common.ReferenceCallba Schema: &spec.Schema{ SchemaProps: spec.SchemaProps{ Default: map[string]interface{}{}, - Ref: ref("github.com/operator-framework/api/pkg/operators/v1alpha1.APIResourceReference"), + Ref: ref(v1alpha1.APIResourceReference{}.OpenAPIModelName()), }, }, }, @@ -476,7 +637,7 @@ func schema_api_pkg_operators_v1alpha1_CRDDescription(ref common.ReferenceCallba Schema: &spec.Schema{ SchemaProps: spec.SchemaProps{ Default: map[string]interface{}{}, - Ref: ref("github.com/operator-framework/api/pkg/operators/v1alpha1.StatusDescriptor"), + Ref: ref(v1alpha1.StatusDescriptor{}.OpenAPIModelName()), }, }, }, @@ -489,7 +650,7 @@ func schema_api_pkg_operators_v1alpha1_CRDDescription(ref common.ReferenceCallba Schema: &spec.Schema{ SchemaProps: spec.SchemaProps{ Default: map[string]interface{}{}, - Ref: ref("github.com/operator-framework/api/pkg/operators/v1alpha1.SpecDescriptor"), + Ref: ref(v1alpha1.SpecDescriptor{}.OpenAPIModelName()), }, }, }, @@ -502,7 +663,7 @@ func schema_api_pkg_operators_v1alpha1_CRDDescription(ref common.ReferenceCallba Schema: &spec.Schema{ SchemaProps: spec.SchemaProps{ Default: map[string]interface{}{}, - Ref: ref("github.com/operator-framework/api/pkg/operators/v1alpha1.ActionDescriptor"), + Ref: ref(v1alpha1.ActionDescriptor{}.OpenAPIModelName()), }, }, }, @@ -513,374 +674,393 @@ func schema_api_pkg_operators_v1alpha1_CRDDescription(ref common.ReferenceCallba }, }, Dependencies: []string{ - "github.com/operator-framework/api/pkg/operators/v1alpha1.APIResourceReference", "github.com/operator-framework/api/pkg/operators/v1alpha1.ActionDescriptor", "github.com/operator-framework/api/pkg/operators/v1alpha1.SpecDescriptor", "github.com/operator-framework/api/pkg/operators/v1alpha1.StatusDescriptor"}, + v1alpha1.APIResourceReference{}.OpenAPIModelName(), v1alpha1.ActionDescriptor{}.OpenAPIModelName(), v1alpha1.SpecDescriptor{}.OpenAPIModelName(), v1alpha1.StatusDescriptor{}.OpenAPIModelName()}, } } -func schema_api_pkg_operators_v1alpha1_CleanupSpec(ref common.ReferenceCallback) common.OpenAPIDefinition { +func schema_api_pkg_operators_v1alpha1_CatalogSource(ref common.ReferenceCallback) common.OpenAPIDefinition { return common.OpenAPIDefinition{ Schema: spec.Schema{ SchemaProps: spec.SchemaProps{ - Type: []string{"object"}, + Description: "CatalogSource is a repository of CSVs, CRDs, and operator packages.", + Type: []string{"object"}, Properties: map[string]spec.Schema{ - "enabled": { + "kind": { SchemaProps: spec.SchemaProps{ - Default: false, - Type: []string{"boolean"}, - Format: "", + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", }, }, - }, - Required: []string{"enabled"}, - }, - }, - } -} - -func schema_api_pkg_operators_v1alpha1_CleanupStatus(ref common.ReferenceCallback) common.OpenAPIDefinition { - return common.OpenAPIDefinition{ - Schema: spec.Schema{ - SchemaProps: spec.SchemaProps{ - Description: "CleanupStatus represents information about the status of cleanup while a CSV is pending deletion", - Type: []string{"object"}, - Properties: map[string]spec.Schema{ - "pendingDeletion": { + "apiVersion": { SchemaProps: spec.SchemaProps{ - Description: "PendingDeletion is the list of custom resource objects that are pending deletion and blocked on finalizers. This indicates the progress of cleanup that is blocking CSV deletion or operator uninstall.", - Type: []string{"array"}, - Items: &spec.SchemaOrArray{ - Schema: &spec.Schema{ - SchemaProps: spec.SchemaProps{ - Default: map[string]interface{}{}, - Ref: ref("github.com/operator-framework/api/pkg/operators/v1alpha1.ResourceList"), - }, - }, - }, + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, + "metadata": { + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(metav1.ObjectMeta{}.OpenAPIModelName()), + }, + }, + "spec": { + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.CatalogSourceSpec{}.OpenAPIModelName()), + }, + }, + "status": { + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.CatalogSourceStatus{}.OpenAPIModelName()), }, }, }, + Required: []string{"metadata", "spec"}, }, }, Dependencies: []string{ - "github.com/operator-framework/api/pkg/operators/v1alpha1.ResourceList"}, + v1alpha1.CatalogSourceSpec{}.OpenAPIModelName(), v1alpha1.CatalogSourceStatus{}.OpenAPIModelName(), metav1.ObjectMeta{}.OpenAPIModelName()}, } } -func schema_api_pkg_operators_v1alpha1_ClusterServiceVersionCondition(ref common.ReferenceCallback) common.OpenAPIDefinition { +func schema_api_pkg_operators_v1alpha1_CatalogSourceList(ref common.ReferenceCallback) common.OpenAPIDefinition { return common.OpenAPIDefinition{ Schema: spec.Schema{ SchemaProps: spec.SchemaProps{ - Description: "Conditions appear in the status as a record of state transitions on the ClusterServiceVersion", + Description: "CatalogSourceList is a repository of CSVs, CRDs, and operator packages.", Type: []string{"object"}, Properties: map[string]spec.Schema{ - "phase": { - SchemaProps: spec.SchemaProps{ - Description: "Condition of the ClusterServiceVersion", - Type: []string{"string"}, - Format: "", - }, - }, - "message": { + "kind": { SchemaProps: spec.SchemaProps{ - Description: "A human readable message indicating details about why the ClusterServiceVersion is in this condition.", + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds", Type: []string{"string"}, Format: "", }, }, - "reason": { + "apiVersion": { SchemaProps: spec.SchemaProps{ - Description: "A brief CamelCase message indicating details about why the ClusterServiceVersion is in this state. e.g. 'RequirementsNotMet'", + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources", Type: []string{"string"}, Format: "", }, }, - "lastUpdateTime": { + "metadata": { SchemaProps: spec.SchemaProps{ - Description: "Last time we updated the status", - Ref: ref(metav1.Time{}.OpenAPIModelName()), + Default: map[string]interface{}{}, + Ref: ref(metav1.ListMeta{}.OpenAPIModelName()), }, }, - "lastTransitionTime": { + "items": { SchemaProps: spec.SchemaProps{ - Description: "Last time the status transitioned from one status to another.", - Ref: ref(metav1.Time{}.OpenAPIModelName()), + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.CatalogSource{}.OpenAPIModelName()), + }, + }, + }, }, }, }, + Required: []string{"metadata", "items"}, }, }, Dependencies: []string{ - metav1.Time{}.OpenAPIModelName()}, + v1alpha1.CatalogSource{}.OpenAPIModelName(), metav1.ListMeta{}.OpenAPIModelName()}, } } -func schema_api_pkg_operators_v1alpha1_ClusterServiceVersionSpec(ref common.ReferenceCallback) common.OpenAPIDefinition { +func schema_api_pkg_operators_v1alpha1_CatalogSourceSpec(ref common.ReferenceCallback) common.OpenAPIDefinition { return common.OpenAPIDefinition{ Schema: spec.Schema{ SchemaProps: spec.SchemaProps{ - Description: "ClusterServiceVersionSpec declarations tell OLM how to install an operator that can manage apps for a given version.", - Type: []string{"object"}, + Type: []string{"object"}, Properties: map[string]spec.Schema{ - "install": { + "sourceType": { SchemaProps: spec.SchemaProps{ - Default: map[string]interface{}{}, - Ref: ref("github.com/operator-framework/api/pkg/operators/v1alpha1.NamedInstallStrategy"), + Description: "SourceType is the type of source", + Default: "", + Type: []string{"string"}, + Format: "", }, }, - "version": { + "priority": { SchemaProps: spec.SchemaProps{ - Ref: ref("github.com/operator-framework/api/pkg/lib/version.OperatorVersion"), + Description: "Priority field assigns a weight to the catalog source to prioritize them so that it can be consumed by the dependency resolver. Usage: Higher weight indicates that this catalog source is preferred over lower weighted catalog sources during dependency resolution. The range of the priority value can go from positive to negative in the range of int32. The default value to a catalog source with unassigned priority would be 0. The catalog source with the same priority values will be ranked lexicographically based on its name.", + Type: []string{"integer"}, + Format: "int32", }, }, - "release": { + "configMap": { SchemaProps: spec.SchemaProps{ - Description: "release specifies the packaging version of the operator, defaulting to empty release is optional\n\nA ClusterServiceVersion's release field is used to distinguish between different builds of the same operator version This is useful for operators that need to make changes to the CSV which don't affect their functionality, for example: - to fix a typo in their description - to add/amend annotations or labels - to amend examples or documentation - to produce different builds for different environments\n\nIt is up to operator authors to determine the semantics of release versions they use for their operator. All release versions must conform to the semver prerelease format (dot-separated identifiers containing only alphanumerics and hyphens) and are limited to a maximum length of 20 characters.", - Ref: ref("github.com/operator-framework/api/pkg/lib/release.OperatorRelease"), + Description: "ConfigMap is the name of the ConfigMap to be used to back a configmap-server registry. Only used when SourceType = SourceTypeConfigmap or SourceTypeInternal.", + Type: []string{"string"}, + Format: "", }, }, - "maturity": { + "address": { SchemaProps: spec.SchemaProps{ - Type: []string{"string"}, - Format: "", + Description: "Address is a host that OLM can use to connect to a pre-existing registry. Format: : Only used when SourceType = SourceTypeGrpc. Ignored when the Image field is set.", + Type: []string{"string"}, + Format: "", }, }, - "customresourcedefinitions": { + "image": { SchemaProps: spec.SchemaProps{ - Default: map[string]interface{}{}, - Ref: ref("github.com/operator-framework/api/pkg/operators/v1alpha1.CustomResourceDefinitions"), + Description: "Image is an operator-registry container image to instantiate a registry-server with. Only used when SourceType = SourceTypeGrpc. If present, the address field is ignored.", + Type: []string{"string"}, + Format: "", }, }, - "apiservicedefinitions": { + "grpcPodConfig": { SchemaProps: spec.SchemaProps{ - Default: map[string]interface{}{}, - Ref: ref("github.com/operator-framework/api/pkg/operators/v1alpha1.APIServiceDefinitions"), + Description: "GrpcPodConfig exposes different overrides for the pod spec of the CatalogSource Pod. Only used when SourceType = SourceTypeGrpc and Image is set.", + Ref: ref(v1alpha1.GrpcPodConfig{}.OpenAPIModelName()), }, }, - "webhookdefinitions": { + "updateStrategy": { SchemaProps: spec.SchemaProps{ - Type: []string{"array"}, - Items: &spec.SchemaOrArray{ - Schema: &spec.Schema{ - SchemaProps: spec.SchemaProps{ - Default: map[string]interface{}{}, - Ref: ref("github.com/operator-framework/api/pkg/operators/v1alpha1.WebhookDescription"), - }, - }, - }, + Description: "UpdateStrategy defines how updated catalog source images can be discovered Consists of an interval that defines polling duration and an embedded strategy type", + Ref: ref(v1alpha1.UpdateStrategy{}.OpenAPIModelName()), }, }, - "nativeAPIs": { + "secrets": { SchemaProps: spec.SchemaProps{ - Type: []string{"array"}, + Description: "Secrets represent set of secrets that can be used to access the contents of the catalog. It is best to keep this list small, since each will need to be tried for every catalog entry.", + Type: []string{"array"}, Items: &spec.SchemaOrArray{ Schema: &spec.Schema{ SchemaProps: spec.SchemaProps{ - Default: map[string]interface{}{}, - Ref: ref(metav1.GroupVersionKind{}.OpenAPIModelName()), + Default: "", + Type: []string{"string"}, + Format: "", }, }, }, }, }, - "minKubeVersion": { - SchemaProps: spec.SchemaProps{ - Type: []string{"string"}, - Format: "", - }, - }, "displayName": { SchemaProps: spec.SchemaProps{ - Description: "The name of the operator in display format.", - Default: "", + Description: "Metadata", Type: []string{"string"}, Format: "", }, }, "description": { SchemaProps: spec.SchemaProps{ - Description: "Description of the operator. Can include the features, limitations or use-cases of the operator.", - Type: []string{"string"}, + Type: []string{"string"}, + Format: "", + }, + }, + "publisher": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "icon": { + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.Icon{}.OpenAPIModelName()), + }, + }, + }, + Required: []string{"sourceType"}, + }, + }, + Dependencies: []string{ + v1alpha1.GrpcPodConfig{}.OpenAPIModelName(), v1alpha1.Icon{}.OpenAPIModelName(), v1alpha1.UpdateStrategy{}.OpenAPIModelName()}, + } +} + +func schema_api_pkg_operators_v1alpha1_CatalogSourceStatus(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "message": { + SchemaProps: spec.SchemaProps{ + Description: "A human readable message indicating details about why the CatalogSource is in this condition.", + Type: []string{"string"}, Format: "", }, }, - "keywords": { + "reason": { SchemaProps: spec.SchemaProps{ - Description: "A list of keywords describing the operator.", - Type: []string{"array"}, - Items: &spec.SchemaOrArray{ - Schema: &spec.Schema{ - SchemaProps: spec.SchemaProps{ - Default: "", - Type: []string{"string"}, - Format: "", - }, - }, - }, + Description: "Reason is the reason the CatalogSource was transitioned to its current state.", + Type: []string{"string"}, + Format: "", }, }, - "maintainers": { + "latestImageRegistryPoll": { SchemaProps: spec.SchemaProps{ - Description: "A list of organizational entities maintaining the operator.", - Type: []string{"array"}, - Items: &spec.SchemaOrArray{ - Schema: &spec.Schema{ - SchemaProps: spec.SchemaProps{ - Default: map[string]interface{}{}, - Ref: ref("github.com/operator-framework/api/pkg/operators/v1alpha1.Maintainer"), - }, - }, - }, + Description: "The last time the CatalogSource image registry has been polled to ensure the image is up-to-date", + Ref: ref(metav1.Time{}.OpenAPIModelName()), }, }, - "provider": { + "configMapReference": { SchemaProps: spec.SchemaProps{ - Description: "The publishing entity behind the operator.", - Default: map[string]interface{}{}, - Ref: ref("github.com/operator-framework/api/pkg/operators/v1alpha1.AppLink"), + Description: "ConfigMapReference (deprecated) is the reference to the ConfigMap containing the catalog source's configuration, when the catalog source is a ConfigMap", + Ref: ref(v1alpha1.ConfigMapResourceReference{}.OpenAPIModelName()), }, }, - "links": { + "registryService": { SchemaProps: spec.SchemaProps{ - Description: "A list of links related to the operator.", - Type: []string{"array"}, - Items: &spec.SchemaOrArray{ - Schema: &spec.Schema{ - SchemaProps: spec.SchemaProps{ - Default: map[string]interface{}{}, - Ref: ref("github.com/operator-framework/api/pkg/operators/v1alpha1.AppLink"), - }, - }, - }, + Description: "RegistryService represents the current state of the GRPC service used to serve the catalog", + Ref: ref(v1alpha1.RegistryServiceStatus{}.OpenAPIModelName()), }, }, - "icon": { + "connectionState": { SchemaProps: spec.SchemaProps{ - Description: "The icon for this operator.", - Type: []string{"array"}, - Items: &spec.SchemaOrArray{ - Schema: &spec.Schema{ - SchemaProps: spec.SchemaProps{ - Default: map[string]interface{}{}, - Ref: ref("github.com/operator-framework/api/pkg/operators/v1alpha1.Icon"), - }, + Description: "ConnectionState represents the current state of the CatalogSource's connection to the registry", + Ref: ref(v1alpha1.GRPCConnectionState{}.OpenAPIModelName()), + }, + }, + "conditions": { + VendorExtensible: spec.VendorExtensible{ + Extensions: spec.Extensions{ + "x-kubernetes-list-map-keys": []interface{}{ + "type", }, + "x-kubernetes-list-type": "map", + "x-kubernetes-patch-merge-key": "type", + "x-kubernetes-patch-strategy": "merge", }, }, - }, - "installModes": { SchemaProps: spec.SchemaProps{ - Description: "InstallModes specify supported installation types", + Description: "Represents the state of a CatalogSource. Note that Message and Reason represent the original status information, which may be migrated to be conditions based in the future. Any new features introduced will use conditions.", Type: []string{"array"}, Items: &spec.SchemaOrArray{ Schema: &spec.Schema{ SchemaProps: spec.SchemaProps{ Default: map[string]interface{}{}, - Ref: ref("github.com/operator-framework/api/pkg/operators/v1alpha1.InstallMode"), + Ref: ref(metav1.Condition{}.OpenAPIModelName()), }, }, }, }, }, - "replaces": { + }, + }, + }, + Dependencies: []string{ + v1alpha1.ConfigMapResourceReference{}.OpenAPIModelName(), v1alpha1.GRPCConnectionState{}.OpenAPIModelName(), v1alpha1.RegistryServiceStatus{}.OpenAPIModelName(), metav1.Condition{}.OpenAPIModelName(), metav1.Time{}.OpenAPIModelName()}, + } +} + +func schema_api_pkg_operators_v1alpha1_CleanupSpec(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "enabled": { SchemaProps: spec.SchemaProps{ - Description: "The name of a CSV this one replaces. Should match the `metadata.Name` field of the old CSV.", - Type: []string{"string"}, - Format: "", + Default: false, + Type: []string{"boolean"}, + Format: "", }, }, - "labels": { + }, + Required: []string{"enabled"}, + }, + }, + } +} + +func schema_api_pkg_operators_v1alpha1_CleanupStatus(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "CleanupStatus represents information about the status of cleanup while a CSV is pending deletion", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "pendingDeletion": { SchemaProps: spec.SchemaProps{ - Description: "Map of string keys and values that can be used to organize and categorize (scope and select) objects.", - Type: []string{"object"}, - AdditionalProperties: &spec.SchemaOrBool{ - Allows: true, + Description: "PendingDeletion is the list of custom resource objects that are pending deletion and blocked on finalizers. This indicates the progress of cleanup that is blocking CSV deletion or operator uninstall.", + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ Schema: &spec.Schema{ SchemaProps: spec.SchemaProps{ - Default: "", - Type: []string{"string"}, - Format: "", + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.ResourceList{}.OpenAPIModelName()), }, }, }, }, }, - "annotations": { + }, + }, + }, + Dependencies: []string{ + v1alpha1.ResourceList{}.OpenAPIModelName()}, + } +} + +func schema_api_pkg_operators_v1alpha1_ClusterServiceVersion(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "ClusterServiceVersion is a Custom Resource of type `ClusterServiceVersionSpec`.", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "kind": { SchemaProps: spec.SchemaProps{ - Description: "Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata.", - Type: []string{"object"}, - AdditionalProperties: &spec.SchemaOrBool{ - Allows: true, - Schema: &spec.Schema{ - SchemaProps: spec.SchemaProps{ - Default: "", - Type: []string{"string"}, - Format: "", - }, - }, - }, + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", }, }, - "selector": { + "apiVersion": { SchemaProps: spec.SchemaProps{ - Description: "Label selector for related resources.", - Ref: ref(metav1.LabelSelector{}.OpenAPIModelName()), + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", }, }, - "cleanup": { + "metadata": { SchemaProps: spec.SchemaProps{ - Description: "Cleanup specifies the cleanup behaviour when the CSV gets deleted", - Default: map[string]interface{}{}, - Ref: ref("github.com/operator-framework/api/pkg/operators/v1alpha1.CleanupSpec"), + Default: map[string]interface{}{}, + Ref: ref(metav1.ObjectMeta{}.OpenAPIModelName()), }, }, - "skips": { + "spec": { SchemaProps: spec.SchemaProps{ - Description: "The name(s) of one or more CSV(s) that should be skipped in the upgrade graph. Should match the `metadata.Name` field of the CSV that should be skipped. This field is only used during catalog creation and plays no part in cluster runtime.", - Type: []string{"array"}, - Items: &spec.SchemaOrArray{ - Schema: &spec.Schema{ - SchemaProps: spec.SchemaProps{ - Default: "", - Type: []string{"string"}, - Format: "", - }, - }, - }, + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.ClusterServiceVersionSpec{}.OpenAPIModelName()), }, }, - "relatedImages": { + "status": { SchemaProps: spec.SchemaProps{ - Description: "List any related images, or other container images that your Operator might require to perform their functions. This list should also include operand images as well. All image references should be specified by digest (SHA) and not by tag. This field is only used during catalog creation and plays no part in cluster runtime.", - Type: []string{"array"}, - Items: &spec.SchemaOrArray{ - Schema: &spec.Schema{ - SchemaProps: spec.SchemaProps{ - Default: map[string]interface{}{}, - Ref: ref("github.com/operator-framework/api/pkg/operators/v1alpha1.RelatedImage"), - }, - }, - }, + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.ClusterServiceVersionStatus{}.OpenAPIModelName()), }, }, }, - Required: []string{"install", "displayName"}, + Required: []string{"metadata", "spec"}, }, }, Dependencies: []string{ - "github.com/operator-framework/api/pkg/lib/release.OperatorRelease", "github.com/operator-framework/api/pkg/lib/version.OperatorVersion", "github.com/operator-framework/api/pkg/operators/v1alpha1.APIServiceDefinitions", "github.com/operator-framework/api/pkg/operators/v1alpha1.AppLink", "github.com/operator-framework/api/pkg/operators/v1alpha1.CleanupSpec", "github.com/operator-framework/api/pkg/operators/v1alpha1.CustomResourceDefinitions", "github.com/operator-framework/api/pkg/operators/v1alpha1.Icon", "github.com/operator-framework/api/pkg/operators/v1alpha1.InstallMode", "github.com/operator-framework/api/pkg/operators/v1alpha1.Maintainer", "github.com/operator-framework/api/pkg/operators/v1alpha1.NamedInstallStrategy", "github.com/operator-framework/api/pkg/operators/v1alpha1.RelatedImage", "github.com/operator-framework/api/pkg/operators/v1alpha1.WebhookDescription", metav1.GroupVersionKind{}.OpenAPIModelName(), metav1.LabelSelector{}.OpenAPIModelName()}, + v1alpha1.ClusterServiceVersionSpec{}.OpenAPIModelName(), v1alpha1.ClusterServiceVersionStatus{}.OpenAPIModelName(), metav1.ObjectMeta{}.OpenAPIModelName()}, } } -func schema_api_pkg_operators_v1alpha1_ClusterServiceVersionStatus(ref common.ReferenceCallback) common.OpenAPIDefinition { +func schema_api_pkg_operators_v1alpha1_ClusterServiceVersionCondition(ref common.ReferenceCallback) common.OpenAPIDefinition { return common.OpenAPIDefinition{ Schema: spec.Schema{ SchemaProps: spec.SchemaProps{ - Description: "ClusterServiceVersionStatus represents information about the status of a CSV. Status may trail the actual state of a system.", + Description: "Conditions appear in the status as a record of state transitions on the ClusterServiceVersion", Type: []string{"object"}, Properties: map[string]spec.Schema{ "phase": { SchemaProps: spec.SchemaProps{ - Description: "Current condition of the ClusterServiceVersion", + Description: "Condition of the ClusterServiceVersion", Type: []string{"string"}, Format: "", }, @@ -911,675 +1091,2230 @@ func schema_api_pkg_operators_v1alpha1_ClusterServiceVersionStatus(ref common.Re Ref: ref(metav1.Time{}.OpenAPIModelName()), }, }, - "conditions": { + }, + }, + }, + Dependencies: []string{ + metav1.Time{}.OpenAPIModelName()}, + } +} + +func schema_api_pkg_operators_v1alpha1_ClusterServiceVersionList(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "ClusterServiceVersionList represents a list of ClusterServiceVersions.", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "kind": { SchemaProps: spec.SchemaProps{ - Description: "List of conditions, a history of state transitions", - Type: []string{"array"}, - Items: &spec.SchemaOrArray{ - Schema: &spec.Schema{ - SchemaProps: spec.SchemaProps{ - Default: map[string]interface{}{}, - Ref: ref("github.com/operator-framework/api/pkg/operators/v1alpha1.ClusterServiceVersionCondition"), - }, - }, - }, + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", }, }, - "requirementStatus": { + "apiVersion": { SchemaProps: spec.SchemaProps{ - Description: "The status of each requirement for this CSV", - Type: []string{"array"}, + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, + "metadata": { + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(metav1.ListMeta{}.OpenAPIModelName()), + }, + }, + "items": { + SchemaProps: spec.SchemaProps{ + Type: []string{"array"}, Items: &spec.SchemaOrArray{ Schema: &spec.Schema{ SchemaProps: spec.SchemaProps{ Default: map[string]interface{}{}, - Ref: ref("github.com/operator-framework/api/pkg/operators/v1alpha1.RequirementStatus"), + Ref: ref(v1alpha1.ClusterServiceVersion{}.OpenAPIModelName()), }, }, }, }, }, - "certsLastUpdated": { + }, + Required: []string{"metadata", "items"}, + }, + }, + Dependencies: []string{ + v1alpha1.ClusterServiceVersion{}.OpenAPIModelName(), metav1.ListMeta{}.OpenAPIModelName()}, + } +} + +func schema_api_pkg_operators_v1alpha1_ClusterServiceVersionSpec(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "ClusterServiceVersionSpec declarations tell OLM how to install an operator that can manage apps for a given version.", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "install": { SchemaProps: spec.SchemaProps{ - Description: "Last time the owned APIService certs were updated", - Ref: ref(metav1.Time{}.OpenAPIModelName()), + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.NamedInstallStrategy{}.OpenAPIModelName()), }, }, - "certsRotateAt": { + "version": { SchemaProps: spec.SchemaProps{ - Description: "Time the owned APIService certs will rotate next", - Ref: ref(metav1.Time{}.OpenAPIModelName()), + Ref: ref(version.OperatorVersion{}.OpenAPIModelName()), + }, + }, + "release": { + SchemaProps: spec.SchemaProps{ + Description: "release specifies the packaging version of the operator, defaulting to empty release is optional\n\nA ClusterServiceVersion's release field is used to distinguish between different builds of the same operator version This is useful for operators that need to make changes to the CSV which don't affect their functionality, for example: - to fix a typo in their description - to add/amend annotations or labels - to amend examples or documentation - to produce different builds for different environments\n\nIt is up to operator authors to determine the semantics of release versions they use for their operator. All release versions must conform to the semver prerelease format (dot-separated identifiers containing only alphanumerics and hyphens) and are limited to a maximum length of 20 characters.", + Ref: ref("github.com/operator-framework/api/pkg/lib/release.OperatorRelease"), + }, + }, + "maturity": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "customresourcedefinitions": { + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.CustomResourceDefinitions{}.OpenAPIModelName()), + }, + }, + "apiservicedefinitions": { + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.APIServiceDefinitions{}.OpenAPIModelName()), + }, + }, + "webhookdefinitions": { + SchemaProps: spec.SchemaProps{ + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.WebhookDescription{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + "nativeAPIs": { + SchemaProps: spec.SchemaProps{ + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(metav1.GroupVersionKind{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + "minKubeVersion": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "displayName": { + SchemaProps: spec.SchemaProps{ + Description: "The name of the operator in display format.", + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "description": { + SchemaProps: spec.SchemaProps{ + Description: "Description of the operator. Can include the features, limitations or use-cases of the operator.", + Type: []string{"string"}, + Format: "", + }, + }, + "keywords": { + SchemaProps: spec.SchemaProps{ + Description: "A list of keywords describing the operator.", + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + }, + }, + }, + "maintainers": { + SchemaProps: spec.SchemaProps{ + Description: "A list of organizational entities maintaining the operator.", + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.Maintainer{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + "provider": { + SchemaProps: spec.SchemaProps{ + Description: "The publishing entity behind the operator.", + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.AppLink{}.OpenAPIModelName()), + }, + }, + "links": { + SchemaProps: spec.SchemaProps{ + Description: "A list of links related to the operator.", + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.AppLink{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + "icon": { + SchemaProps: spec.SchemaProps{ + Description: "The icon for this operator.", + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.Icon{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + "installModes": { + SchemaProps: spec.SchemaProps{ + Description: "InstallModes specify supported installation types", + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.InstallMode{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + "replaces": { + SchemaProps: spec.SchemaProps{ + Description: "The name of a CSV this one replaces. Should match the `metadata.Name` field of the old CSV.", + Type: []string{"string"}, + Format: "", + }, + }, + "labels": { + SchemaProps: spec.SchemaProps{ + Description: "Map of string keys and values that can be used to organize and categorize (scope and select) objects.", + Type: []string{"object"}, + AdditionalProperties: &spec.SchemaOrBool{ + Allows: true, + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + }, + }, + }, + "annotations": { + SchemaProps: spec.SchemaProps{ + Description: "Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata.", + Type: []string{"object"}, + AdditionalProperties: &spec.SchemaOrBool{ + Allows: true, + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + }, + }, + }, + "selector": { + SchemaProps: spec.SchemaProps{ + Description: "Label selector for related resources.", + Ref: ref(metav1.LabelSelector{}.OpenAPIModelName()), }, }, "cleanup": { SchemaProps: spec.SchemaProps{ - Description: "CleanupStatus represents information about the status of cleanup while a CSV is pending deletion", + Description: "Cleanup specifies the cleanup behaviour when the CSV gets deleted", Default: map[string]interface{}{}, - Ref: ref("github.com/operator-framework/api/pkg/operators/v1alpha1.CleanupStatus"), + Ref: ref(v1alpha1.CleanupSpec{}.OpenAPIModelName()), + }, + }, + "skips": { + SchemaProps: spec.SchemaProps{ + Description: "The name(s) of one or more CSV(s) that should be skipped in the upgrade graph. Should match the `metadata.Name` field of the CSV that should be skipped. This field is only used during catalog creation and plays no part in cluster runtime.", + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + }, + }, + }, + "relatedImages": { + SchemaProps: spec.SchemaProps{ + Description: "List any related images, or other container images that your Operator might require to perform their functions. This list should also include operand images as well. All image references should be specified by digest (SHA) and not by tag. This field is only used during catalog creation and plays no part in cluster runtime.", + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.RelatedImage{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + }, + Required: []string{"install", "displayName"}, + }, + }, + Dependencies: []string{ + "github.com/operator-framework/api/pkg/lib/release.OperatorRelease", version.OperatorVersion{}.OpenAPIModelName(), v1alpha1.APIServiceDefinitions{}.OpenAPIModelName(), v1alpha1.AppLink{}.OpenAPIModelName(), v1alpha1.CleanupSpec{}.OpenAPIModelName(), v1alpha1.CustomResourceDefinitions{}.OpenAPIModelName(), v1alpha1.Icon{}.OpenAPIModelName(), v1alpha1.InstallMode{}.OpenAPIModelName(), v1alpha1.Maintainer{}.OpenAPIModelName(), v1alpha1.NamedInstallStrategy{}.OpenAPIModelName(), v1alpha1.RelatedImage{}.OpenAPIModelName(), v1alpha1.WebhookDescription{}.OpenAPIModelName(), metav1.GroupVersionKind{}.OpenAPIModelName(), metav1.LabelSelector{}.OpenAPIModelName()}, + } +} + +func schema_api_pkg_operators_v1alpha1_ClusterServiceVersionStatus(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "ClusterServiceVersionStatus represents information about the status of a CSV. Status may trail the actual state of a system.", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "phase": { + SchemaProps: spec.SchemaProps{ + Description: "Current condition of the ClusterServiceVersion", + Type: []string{"string"}, + Format: "", + }, + }, + "message": { + SchemaProps: spec.SchemaProps{ + Description: "A human readable message indicating details about why the ClusterServiceVersion is in this condition.", + Type: []string{"string"}, + Format: "", + }, + }, + "reason": { + SchemaProps: spec.SchemaProps{ + Description: "A brief CamelCase message indicating details about why the ClusterServiceVersion is in this state. e.g. 'RequirementsNotMet'", + Type: []string{"string"}, + Format: "", + }, + }, + "lastUpdateTime": { + SchemaProps: spec.SchemaProps{ + Description: "Last time we updated the status", + Ref: ref(metav1.Time{}.OpenAPIModelName()), + }, + }, + "lastTransitionTime": { + SchemaProps: spec.SchemaProps{ + Description: "Last time the status transitioned from one status to another.", + Ref: ref(metav1.Time{}.OpenAPIModelName()), + }, + }, + "conditions": { + SchemaProps: spec.SchemaProps{ + Description: "List of conditions, a history of state transitions", + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.ClusterServiceVersionCondition{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + "requirementStatus": { + SchemaProps: spec.SchemaProps{ + Description: "The status of each requirement for this CSV", + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.RequirementStatus{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + "certsLastUpdated": { + SchemaProps: spec.SchemaProps{ + Description: "Last time the owned APIService certs were updated", + Ref: ref(metav1.Time{}.OpenAPIModelName()), + }, + }, + "certsRotateAt": { + SchemaProps: spec.SchemaProps{ + Description: "Time the owned APIService certs will rotate next", + Ref: ref(metav1.Time{}.OpenAPIModelName()), + }, + }, + "cleanup": { + SchemaProps: spec.SchemaProps{ + Description: "CleanupStatus represents information about the status of cleanup while a CSV is pending deletion", + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.CleanupStatus{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + Dependencies: []string{ + v1alpha1.CleanupStatus{}.OpenAPIModelName(), v1alpha1.ClusterServiceVersionCondition{}.OpenAPIModelName(), v1alpha1.RequirementStatus{}.OpenAPIModelName(), metav1.Time{}.OpenAPIModelName()}, + } +} + +func schema_api_pkg_operators_v1alpha1_ConfigMapResourceReference(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "name": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "namespace": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "uid": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "resourceVersion": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "lastUpdateTime": { + SchemaProps: spec.SchemaProps{ + Ref: ref(metav1.Time{}.OpenAPIModelName()), + }, + }, + }, + Required: []string{"name", "namespace"}, + }, + }, + Dependencies: []string{ + metav1.Time{}.OpenAPIModelName()}, + } +} + +func schema_api_pkg_operators_v1alpha1_CustomResourceDefinitions(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "CustomResourceDefinitions declares all of the CRDs managed or required by an operator being ran by ClusterServiceVersion.\n\nIf the CRD is present in the Owned list, it is implicitly required.", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "owned": { + SchemaProps: spec.SchemaProps{ + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.CRDDescription{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + "required": { + SchemaProps: spec.SchemaProps{ + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.CRDDescription{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + }, + }, + }, + Dependencies: []string{ + v1alpha1.CRDDescription{}.OpenAPIModelName()}, + } +} + +func schema_api_pkg_operators_v1alpha1_DependentStatus(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "DependentStatus is the status for a dependent requirement (to prevent infinite nesting)", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "group": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "version": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "kind": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "status": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "uuid": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "message": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + }, + Required: []string{"group", "version", "kind", "status"}, + }, + }, + } +} + +func schema_api_pkg_operators_v1alpha1_ExtractContentConfig(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "ExtractContentConfig configures context extraction from a file-based catalog index image.", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "cacheDir": { + SchemaProps: spec.SchemaProps{ + Description: "CacheDir is the (optional) directory storing the pre-calculated API cache.", + Type: []string{"string"}, + Format: "", + }, + }, + "catalogDir": { + SchemaProps: spec.SchemaProps{ + Description: "CatalogDir is the directory storing the file-based catalog contents.", + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + }, + Required: []string{"catalogDir"}, + }, + }, + } +} + +func schema_api_pkg_operators_v1alpha1_GRPCConnectionState(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "address": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "lastObservedState": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "lastConnect": { + SchemaProps: spec.SchemaProps{ + Ref: ref(metav1.Time{}.OpenAPIModelName()), + }, + }, + }, + Required: []string{"lastObservedState"}, + }, + }, + Dependencies: []string{ + metav1.Time{}.OpenAPIModelName()}, + } +} + +func schema_api_pkg_operators_v1alpha1_GrpcPodConfig(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "GrpcPodConfig contains configuration specified for a catalog source", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "nodeSelector": { + SchemaProps: spec.SchemaProps{ + Description: "NodeSelector is a selector which must be true for the pod to fit on a node. Selector which must match a node's labels for the pod to be scheduled on that node.", + Type: []string{"object"}, + AdditionalProperties: &spec.SchemaOrBool{ + Allows: true, + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + }, + }, + }, + "tolerations": { + SchemaProps: spec.SchemaProps{ + Description: "Tolerations are the catalog source's pod's tolerations.", + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref("k8s.io/api/core/v1.Toleration"), + }, + }, + }, + }, + }, + "affinity": { + SchemaProps: spec.SchemaProps{ + Description: "Affinity is the catalog source's pod's affinity.", + Ref: ref("k8s.io/api/core/v1.Affinity"), + }, + }, + "priorityClassName": { + SchemaProps: spec.SchemaProps{ + Description: "If specified, indicates the pod's priority. If not specified, the pod priority will be default or zero if there is no default.", + Type: []string{"string"}, + Format: "", + }, + }, + "securityContextConfig": { + SchemaProps: spec.SchemaProps{ + Description: "SecurityContextConfig can be one of `legacy` or `restricted`. The CatalogSource's pod is either injected with the right pod.spec.securityContext and pod.spec.container[*].securityContext values to allow the pod to run in Pod Security Admission (PSA) `restricted` mode, or doesn't set these values at all, in which case the pod can only be run in PSA `baseline` or `privileged` namespaces. If the SecurityContextConfig is unspecified, the mode will be determined by the namespace's PSA configuration. If the namespace is enforcing `restricted` mode, then the pod will be configured as if `restricted` was specified. Otherwise, it will be configured as if `legacy` was specified. Specifying a value other than `legacy` or `restricted` result in a validation error. When using older catalog images, which can not run in `restricted` mode, the SecurityContextConfig should be set to `legacy`.\n\nMore information about PSA can be found here: https://kubernetes.io/docs/concepts/security/pod-security-admission/", + Type: []string{"string"}, + Format: "", + }, + }, + "memoryTarget": { + SchemaProps: spec.SchemaProps{ + Description: "MemoryTarget configures the $GOMEMLIMIT value for the gRPC catalog Pod. This is a soft memory limit for the server, which the runtime will attempt to meet but makes no guarantees that it will do so. If this value is set, the Pod will have the following modifications made to the container running the server: - the $GOMEMLIMIT environment variable will be set to this value in bytes - the memory request will be set to this value\n\nThis field should be set if it's desired to reduce the footprint of a catalog server as much as possible, or if a catalog being served is very large and needs more than the default allocation. If your index image has a file- system cache, determine a good approximation for this value by doubling the size of the package cache at /tmp/cache/cache/packages.json in the index image.\n\nThis field is best-effort; if unset, no default will be used and no Pod memory limit or $GOMEMLIMIT value will be set.", + Ref: ref(resource.Quantity{}.OpenAPIModelName()), + }, + }, + "extractContent": { + SchemaProps: spec.SchemaProps{ + Description: "ExtractContent configures the gRPC catalog Pod to extract catalog metadata from the provided index image and use a well-known version of the `opm` server to expose it. The catalog index image that this CatalogSource is configured to use *must* be using the file-based catalogs in order to utilize this feature.", + Ref: ref(v1alpha1.ExtractContentConfig{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + Dependencies: []string{ + v1alpha1.ExtractContentConfig{}.OpenAPIModelName(), "k8s.io/api/core/v1.Affinity", "k8s.io/api/core/v1.Toleration", resource.Quantity{}.OpenAPIModelName()}, + } +} + +func schema_api_pkg_operators_v1alpha1_Icon(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "base64data": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "mediatype": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + }, + Required: []string{"base64data", "mediatype"}, + }, + }, + } +} + +func schema_api_pkg_operators_v1alpha1_InstallMode(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "InstallMode associates an InstallModeType with a flag representing if the CSV supports it", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "type": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "supported": { + SchemaProps: spec.SchemaProps{ + Default: false, + Type: []string{"boolean"}, + Format: "", + }, + }, + }, + Required: []string{"type", "supported"}, + }, + }, + } +} + +func schema_api_pkg_operators_v1alpha1_InstallPlan(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "InstallPlan defines the installation of a set of operators.", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, + "metadata": { + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(metav1.ObjectMeta{}.OpenAPIModelName()), + }, + }, + "spec": { + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.InstallPlanSpec{}.OpenAPIModelName()), + }, + }, + "status": { + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.InstallPlanStatus{}.OpenAPIModelName()), + }, + }, + }, + Required: []string{"metadata", "spec"}, + }, + }, + Dependencies: []string{ + v1alpha1.InstallPlanSpec{}.OpenAPIModelName(), v1alpha1.InstallPlanStatus{}.OpenAPIModelName(), metav1.ObjectMeta{}.OpenAPIModelName()}, + } +} + +func schema_api_pkg_operators_v1alpha1_InstallPlanCondition(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "InstallPlanCondition represents the overall status of the execution of an InstallPlan.", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "type": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "status": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "lastUpdateTime": { + SchemaProps: spec.SchemaProps{ + Description: "True, False, or Unknown", + Ref: ref(metav1.Time{}.OpenAPIModelName()), + }, + }, + "lastTransitionTime": { + SchemaProps: spec.SchemaProps{ + Ref: ref(metav1.Time{}.OpenAPIModelName()), + }, + }, + "reason": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "message": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + }, + }, + }, + Dependencies: []string{ + metav1.Time{}.OpenAPIModelName()}, + } +} + +func schema_api_pkg_operators_v1alpha1_InstallPlanList(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "InstallPlanList is a list of InstallPlan resources.", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, + "metadata": { + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(metav1.ListMeta{}.OpenAPIModelName()), + }, + }, + "items": { + SchemaProps: spec.SchemaProps{ + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.InstallPlan{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + }, + Required: []string{"metadata", "items"}, + }, + }, + Dependencies: []string{ + v1alpha1.InstallPlan{}.OpenAPIModelName(), metav1.ListMeta{}.OpenAPIModelName()}, + } +} + +func schema_api_pkg_operators_v1alpha1_InstallPlanReference(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "kind": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "name": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "uuid": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + }, + Required: []string{"apiVersion", "kind", "name", "uuid"}, + }, + }, + } +} + +func schema_api_pkg_operators_v1alpha1_InstallPlanSpec(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "InstallPlanSpec defines a set of Application resources to be installed", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "source": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "sourceNamespace": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "clusterServiceVersionNames": { + SchemaProps: spec.SchemaProps{ + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + }, + }, + }, + "approval": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "approved": { + SchemaProps: spec.SchemaProps{ + Default: false, + Type: []string{"boolean"}, + Format: "", + }, + }, + "generation": { + SchemaProps: spec.SchemaProps{ + Type: []string{"integer"}, + Format: "int32", + }, + }, + }, + Required: []string{"clusterServiceVersionNames", "approval", "approved"}, + }, + }, + } +} + +func schema_api_pkg_operators_v1alpha1_InstallPlanStatus(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "InstallPlanStatus represents the information about the status of steps required to complete installation.\n\nStatus may trail the actual state of a system.", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "phase": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "conditions": { + SchemaProps: spec.SchemaProps{ + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.InstallPlanCondition{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + "catalogSources": { + SchemaProps: spec.SchemaProps{ + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + }, + }, + }, + "plan": { + SchemaProps: spec.SchemaProps{ + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Ref: ref(v1alpha1.Step{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + "bundleLookups": { + SchemaProps: spec.SchemaProps{ + Description: "BundleLookups is the set of in-progress requests to pull and unpackage bundle content to the cluster.", + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.BundleLookup{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + "attenuatedServiceAccountRef": { + SchemaProps: spec.SchemaProps{ + Description: "AttenuatedServiceAccountRef references the service account that is used to do scoped operator install.", + Ref: ref("k8s.io/api/core/v1.ObjectReference"), + }, + }, + "startTime": { + SchemaProps: spec.SchemaProps{ + Description: "StartTime is the time when the controller began applying the resources listed in the plan to the cluster.", + Ref: ref(metav1.Time{}.OpenAPIModelName()), + }, + }, + "message": { + SchemaProps: spec.SchemaProps{ + Description: "Message is a human-readable message containing detailed information that may be important to understanding why the plan has its current status.", + Type: []string{"string"}, + Format: "", + }, + }, + }, + Required: []string{"phase", "catalogSources"}, + }, + }, + Dependencies: []string{ + v1alpha1.BundleLookup{}.OpenAPIModelName(), v1alpha1.InstallPlanCondition{}.OpenAPIModelName(), v1alpha1.Step{}.OpenAPIModelName(), "k8s.io/api/core/v1.ObjectReference", metav1.Time{}.OpenAPIModelName()}, + } +} + +func schema_api_pkg_operators_v1alpha1_Maintainer(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "name": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "email": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + }, + }, + }, + } +} + +func schema_api_pkg_operators_v1alpha1_NamedInstallStrategy(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "NamedInstallStrategy represents the block of an ClusterServiceVersion resource where the install strategy is specified.", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "strategy": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "spec": { + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.StrategyDetailsDeployment{}.OpenAPIModelName()), + }, + }, + }, + Required: []string{"strategy"}, + }, + }, + Dependencies: []string{ + v1alpha1.StrategyDetailsDeployment{}.OpenAPIModelName()}, + } +} + +func schema_api_pkg_operators_v1alpha1_RegistryPoll(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "interval": { + SchemaProps: spec.SchemaProps{ + Description: "Interval is used to determine the time interval between checks of the latest catalog source version. The catalog operator polls to see if a new version of the catalog source is available. If available, the latest image is pulled and gRPC traffic is directed to the latest catalog source.", + Type: []string{"string"}, + Format: "", + }, + }, + }, + }, + }, + } +} + +func schema_api_pkg_operators_v1alpha1_RegistryServiceStatus(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "protocol": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "serviceName": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "serviceNamespace": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "port": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "createdAt": { + SchemaProps: spec.SchemaProps{ + Ref: ref(metav1.Time{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + Dependencies: []string{ + metav1.Time{}.OpenAPIModelName()}, + } +} + +func schema_api_pkg_operators_v1alpha1_RelatedImage(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "name": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "image": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + }, + Required: []string{"name", "image"}, + }, + }, + } +} + +func schema_api_pkg_operators_v1alpha1_RequirementStatus(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "group": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "version": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "kind": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "name": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "status": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "message": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "uuid": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "dependents": { + SchemaProps: spec.SchemaProps{ + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.DependentStatus{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + }, + Required: []string{"group", "version", "kind", "name", "status", "message"}, + }, + }, + Dependencies: []string{ + v1alpha1.DependentStatus{}.OpenAPIModelName()}, + } +} + +func schema_api_pkg_operators_v1alpha1_ResourceInstance(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "name": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "namespace": { + SchemaProps: spec.SchemaProps{ + Description: "Namespace can be empty for cluster-scoped resources", + Type: []string{"string"}, + Format: "", + }, + }, + }, + Required: []string{"name"}, + }, + }, + } +} + +func schema_api_pkg_operators_v1alpha1_ResourceList(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "ResourceList represents a list of resources which are of the same Group/Kind", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "group": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "kind": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "instances": { + SchemaProps: spec.SchemaProps{ + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.ResourceInstance{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + }, + Required: []string{"group", "kind", "instances"}, + }, + }, + Dependencies: []string{ + v1alpha1.ResourceInstance{}.OpenAPIModelName()}, + } +} + +func schema_api_pkg_operators_v1alpha1_SpecDescriptor(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "SpecDescriptor describes a field in a spec block of a CRD so that OLM can consume it", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "path": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "displayName": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "description": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "x-descriptors": { + SchemaProps: spec.SchemaProps{ + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + }, + }, + }, + "value": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "byte", + }, + }, + }, + Required: []string{"path"}, + }, + }, + } +} + +func schema_api_pkg_operators_v1alpha1_StatusDescriptor(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "StatusDescriptor describes a field in a status block of a CRD so that OLM can consume it", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "path": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "displayName": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "description": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "x-descriptors": { + SchemaProps: spec.SchemaProps{ + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + }, + }, + }, + "value": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "byte", + }, + }, + }, + Required: []string{"path"}, + }, + }, + } +} + +func schema_api_pkg_operators_v1alpha1_Step(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "Step represents the status of an individual step in an InstallPlan.", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "resolving": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "resource": { + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.StepResource{}.OpenAPIModelName()), + }, + }, + "optional": { + SchemaProps: spec.SchemaProps{ + Type: []string{"boolean"}, + Format: "", + }, + }, + "status": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + }, + Required: []string{"resolving", "resource", "status"}, + }, + }, + Dependencies: []string{ + v1alpha1.StepResource{}.OpenAPIModelName()}, + } +} + +func schema_api_pkg_operators_v1alpha1_StepResource(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "StepResource represents the status of a resource to be tracked by an InstallPlan.", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "sourceName": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "sourceNamespace": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "group": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "version": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "kind": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "name": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "manifest": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + }, + Required: []string{"sourceName", "sourceNamespace", "group", "version", "kind", "name"}, + }, + }, + } +} + +func schema_api_pkg_operators_v1alpha1_StrategyDeploymentPermissions(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "StrategyDeploymentPermissions describe the rbac rules and service account needed by the install strategy", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "serviceAccountName": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "rules": { + SchemaProps: spec.SchemaProps{ + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref("k8s.io/api/rbac/v1.PolicyRule"), + }, + }, + }, + }, + }, + }, + Required: []string{"serviceAccountName", "rules"}, + }, + }, + Dependencies: []string{ + "k8s.io/api/rbac/v1.PolicyRule"}, + } +} + +func schema_api_pkg_operators_v1alpha1_StrategyDeploymentSpec(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "StrategyDeploymentSpec contains the name, spec and labels for the deployment ALM should create", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "name": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "spec": { + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref("k8s.io/api/apps/v1.DeploymentSpec"), + }, + }, + "label": { + SchemaProps: spec.SchemaProps{ + Type: []string{"object"}, + AdditionalProperties: &spec.SchemaOrBool{ + Allows: true, + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + }, }, }, }, + Required: []string{"name", "spec"}, }, }, Dependencies: []string{ - "github.com/operator-framework/api/pkg/operators/v1alpha1.CleanupStatus", "github.com/operator-framework/api/pkg/operators/v1alpha1.ClusterServiceVersionCondition", "github.com/operator-framework/api/pkg/operators/v1alpha1.RequirementStatus", metav1.Time{}.OpenAPIModelName()}, + "k8s.io/api/apps/v1.DeploymentSpec"}, } } -func schema_api_pkg_operators_v1alpha1_CustomResourceDefinitions(ref common.ReferenceCallback) common.OpenAPIDefinition { +func schema_api_pkg_operators_v1alpha1_StrategyDetailsDeployment(ref common.ReferenceCallback) common.OpenAPIDefinition { return common.OpenAPIDefinition{ Schema: spec.Schema{ SchemaProps: spec.SchemaProps{ - Description: "CustomResourceDefinitions declares all of the CRDs managed or required by an operator being ran by ClusterServiceVersion.\n\nIf the CRD is present in the Owned list, it is implicitly required.", + Description: "StrategyDetailsDeployment represents the parsed details of a Deployment InstallStrategy.", Type: []string{"object"}, Properties: map[string]spec.Schema{ - "owned": { + "deployments": { SchemaProps: spec.SchemaProps{ Type: []string{"array"}, Items: &spec.SchemaOrArray{ Schema: &spec.Schema{ SchemaProps: spec.SchemaProps{ Default: map[string]interface{}{}, - Ref: ref("github.com/operator-framework/api/pkg/operators/v1alpha1.CRDDescription"), + Ref: ref(v1alpha1.StrategyDeploymentSpec{}.OpenAPIModelName()), }, }, }, }, }, - "required": { + "permissions": { + SchemaProps: spec.SchemaProps{ + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.StrategyDeploymentPermissions{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + "clusterPermissions": { SchemaProps: spec.SchemaProps{ Type: []string{"array"}, Items: &spec.SchemaOrArray{ Schema: &spec.Schema{ SchemaProps: spec.SchemaProps{ Default: map[string]interface{}{}, - Ref: ref("github.com/operator-framework/api/pkg/operators/v1alpha1.CRDDescription"), + Ref: ref(v1alpha1.StrategyDeploymentPermissions{}.OpenAPIModelName()), }, }, }, }, }, }, + Required: []string{"deployments"}, }, }, Dependencies: []string{ - "github.com/operator-framework/api/pkg/operators/v1alpha1.CRDDescription"}, + v1alpha1.StrategyDeploymentPermissions{}.OpenAPIModelName(), v1alpha1.StrategyDeploymentSpec{}.OpenAPIModelName()}, } } -func schema_api_pkg_operators_v1alpha1_DependentStatus(ref common.ReferenceCallback) common.OpenAPIDefinition { +func schema_api_pkg_operators_v1alpha1_Subscription(ref common.ReferenceCallback) common.OpenAPIDefinition { return common.OpenAPIDefinition{ Schema: spec.Schema{ SchemaProps: spec.SchemaProps{ - Description: "DependentStatus is the status for a dependent requirement (to prevent infinite nesting)", + Description: "Subscription keeps operators up to date by tracking changes to Catalogs.", Type: []string{"object"}, Properties: map[string]spec.Schema{ - "group": { - SchemaProps: spec.SchemaProps{ - Default: "", - Type: []string{"string"}, - Format: "", - }, - }, - "version": { + "kind": { SchemaProps: spec.SchemaProps{ - Default: "", - Type: []string{"string"}, - Format: "", + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", }, }, - "kind": { + "apiVersion": { SchemaProps: spec.SchemaProps{ - Default: "", - Type: []string{"string"}, - Format: "", + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", }, }, - "status": { + "metadata": { SchemaProps: spec.SchemaProps{ - Default: "", - Type: []string{"string"}, - Format: "", + Default: map[string]interface{}{}, + Ref: ref(metav1.ObjectMeta{}.OpenAPIModelName()), }, }, - "uuid": { + "spec": { SchemaProps: spec.SchemaProps{ - Type: []string{"string"}, - Format: "", + Ref: ref(v1alpha1.SubscriptionSpec{}.OpenAPIModelName()), }, }, - "message": { + "status": { SchemaProps: spec.SchemaProps{ - Type: []string{"string"}, - Format: "", + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.SubscriptionStatus{}.OpenAPIModelName()), }, }, }, - Required: []string{"group", "version", "kind", "status"}, + Required: []string{"metadata", "spec"}, }, }, + Dependencies: []string{ + v1alpha1.SubscriptionSpec{}.OpenAPIModelName(), v1alpha1.SubscriptionStatus{}.OpenAPIModelName(), metav1.ObjectMeta{}.OpenAPIModelName()}, } } -func schema_api_pkg_operators_v1alpha1_Icon(ref common.ReferenceCallback) common.OpenAPIDefinition { +func schema_api_pkg_operators_v1alpha1_SubscriptionCatalogHealth(ref common.ReferenceCallback) common.OpenAPIDefinition { return common.OpenAPIDefinition{ Schema: spec.Schema{ SchemaProps: spec.SchemaProps{ - Type: []string{"object"}, + Description: "SubscriptionCatalogHealth describes the health of a CatalogSource the Subscription knows about.", + Type: []string{"object"}, Properties: map[string]spec.Schema{ - "base64data": { + "catalogSourceRef": { SchemaProps: spec.SchemaProps{ - Default: "", - Type: []string{"string"}, - Format: "", + Description: "CatalogSourceRef is a reference to a CatalogSource.", + Ref: ref("k8s.io/api/core/v1.ObjectReference"), }, }, - "mediatype": { + "lastUpdated": { SchemaProps: spec.SchemaProps{ - Default: "", - Type: []string{"string"}, - Format: "", + Description: "LastUpdated represents the last time that the CatalogSourceHealth changed", + Ref: ref(metav1.Time{}.OpenAPIModelName()), + }, + }, + "healthy": { + SchemaProps: spec.SchemaProps{ + Description: "Healthy is true if the CatalogSource is healthy; false otherwise.", + Default: false, + Type: []string{"boolean"}, + Format: "", }, }, }, - Required: []string{"base64data", "mediatype"}, + Required: []string{"catalogSourceRef", "lastUpdated", "healthy"}, }, }, + Dependencies: []string{ + "k8s.io/api/core/v1.ObjectReference", metav1.Time{}.OpenAPIModelName()}, } } -func schema_api_pkg_operators_v1alpha1_InstallMode(ref common.ReferenceCallback) common.OpenAPIDefinition { +func schema_api_pkg_operators_v1alpha1_SubscriptionCondition(ref common.ReferenceCallback) common.OpenAPIDefinition { return common.OpenAPIDefinition{ Schema: spec.Schema{ SchemaProps: spec.SchemaProps{ - Description: "InstallMode associates an InstallModeType with a flag representing if the CSV supports it", + Description: "SubscriptionCondition represents the latest available observations of a Subscription's state.", Type: []string{"object"}, Properties: map[string]spec.Schema{ "type": { SchemaProps: spec.SchemaProps{ - Default: "", - Type: []string{"string"}, - Format: "", + Description: "Type is the type of Subscription condition.", + Default: "", + Type: []string{"string"}, + Format: "", }, }, - "supported": { + "status": { SchemaProps: spec.SchemaProps{ - Default: false, - Type: []string{"boolean"}, - Format: "", + Description: "Status is the status of the condition, one of True, False, Unknown.", + Default: "", + Type: []string{"string"}, + Format: "", }, }, - }, - Required: []string{"type", "supported"}, - }, - }, - } -} - -func schema_api_pkg_operators_v1alpha1_Maintainer(ref common.ReferenceCallback) common.OpenAPIDefinition { - return common.OpenAPIDefinition{ - Schema: spec.Schema{ - SchemaProps: spec.SchemaProps{ - Type: []string{"object"}, - Properties: map[string]spec.Schema{ - "name": { + "reason": { SchemaProps: spec.SchemaProps{ - Type: []string{"string"}, - Format: "", + Description: "Reason is a one-word CamelCase reason for the condition's last transition.", + Type: []string{"string"}, + Format: "", }, }, - "email": { + "message": { SchemaProps: spec.SchemaProps{ - Type: []string{"string"}, - Format: "", + Description: "Message is a human-readable message indicating details about last transition.", + Type: []string{"string"}, + Format: "", }, }, - }, - }, - }, - } -} - -func schema_api_pkg_operators_v1alpha1_NamedInstallStrategy(ref common.ReferenceCallback) common.OpenAPIDefinition { - return common.OpenAPIDefinition{ - Schema: spec.Schema{ - SchemaProps: spec.SchemaProps{ - Description: "NamedInstallStrategy represents the block of an ClusterServiceVersion resource where the install strategy is specified.", - Type: []string{"object"}, - Properties: map[string]spec.Schema{ - "strategy": { + "lastHeartbeatTime": { SchemaProps: spec.SchemaProps{ - Default: "", - Type: []string{"string"}, - Format: "", + Description: "LastHeartbeatTime is the last time we got an update on a given condition", + Ref: ref(metav1.Time{}.OpenAPIModelName()), }, }, - "spec": { + "lastTransitionTime": { SchemaProps: spec.SchemaProps{ - Default: map[string]interface{}{}, - Ref: ref("github.com/operator-framework/api/pkg/operators/v1alpha1.StrategyDetailsDeployment"), + Description: "LastTransitionTime is the last time the condition transit from one status to another", + Ref: ref(metav1.Time{}.OpenAPIModelName()), }, }, }, - Required: []string{"strategy"}, + Required: []string{"type", "status"}, }, }, Dependencies: []string{ - "github.com/operator-framework/api/pkg/operators/v1alpha1.StrategyDetailsDeployment"}, + metav1.Time{}.OpenAPIModelName()}, } } -func schema_api_pkg_operators_v1alpha1_RelatedImage(ref common.ReferenceCallback) common.OpenAPIDefinition { +func schema_api_pkg_operators_v1alpha1_SubscriptionConfig(ref common.ReferenceCallback) common.OpenAPIDefinition { return common.OpenAPIDefinition{ Schema: spec.Schema{ SchemaProps: spec.SchemaProps{ - Type: []string{"object"}, + Description: "SubscriptionConfig contains configuration specified for a subscription.", + Type: []string{"object"}, Properties: map[string]spec.Schema{ - "name": { + "selector": { SchemaProps: spec.SchemaProps{ - Default: "", - Type: []string{"string"}, - Format: "", + Description: "Selector is the label selector for pods to be configured. Existing ReplicaSets whose pods are selected by this will be the ones affected by this deployment. It must match the pod template's labels.", + Ref: ref(metav1.LabelSelector{}.OpenAPIModelName()), }, }, - "image": { + "nodeSelector": { SchemaProps: spec.SchemaProps{ - Default: "", - Type: []string{"string"}, - Format: "", + Description: "NodeSelector is a selector which must be true for the pod to fit on a node. Selector which must match a node's labels for the pod to be scheduled on that node. More info: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/", + Type: []string{"object"}, + AdditionalProperties: &spec.SchemaOrBool{ + Allows: true, + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + }, }, }, - }, - Required: []string{"name", "image"}, - }, - }, - } -} - -func schema_api_pkg_operators_v1alpha1_RequirementStatus(ref common.ReferenceCallback) common.OpenAPIDefinition { - return common.OpenAPIDefinition{ - Schema: spec.Schema{ - SchemaProps: spec.SchemaProps{ - Type: []string{"object"}, - Properties: map[string]spec.Schema{ - "group": { + "tolerations": { SchemaProps: spec.SchemaProps{ - Default: "", - Type: []string{"string"}, - Format: "", + Description: "Tolerations are the pod's tolerations.", + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref("k8s.io/api/core/v1.Toleration"), + }, + }, + }, }, }, - "version": { + "resources": { SchemaProps: spec.SchemaProps{ - Default: "", - Type: []string{"string"}, - Format: "", + Description: "Resources represents compute resources required by this container. Immutable. More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/", + Ref: ref("k8s.io/api/core/v1.ResourceRequirements"), }, }, - "kind": { + "envFrom": { SchemaProps: spec.SchemaProps{ - Default: "", - Type: []string{"string"}, - Format: "", + Description: "EnvFrom is a list of sources to populate environment variables in the container. The keys defined within a source must be a C_IDENTIFIER. All invalid keys will be reported as an event when the container is starting. When a key exists in multiple sources, the value associated with the last source will take precedence. Values defined by an Env with a duplicate key will take precedence. Immutable.", + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref("k8s.io/api/core/v1.EnvFromSource"), + }, + }, + }, }, }, - "name": { + "env": { + VendorExtensible: spec.VendorExtensible{ + Extensions: spec.Extensions{ + "x-kubernetes-patch-merge-key": "name", + "x-kubernetes-patch-strategy": "merge", + }, + }, SchemaProps: spec.SchemaProps{ - Default: "", - Type: []string{"string"}, - Format: "", + Description: "Env is a list of environment variables to set in the container. Cannot be updated.", + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref("k8s.io/api/core/v1.EnvVar"), + }, + }, + }, }, }, - "status": { + "volumes": { SchemaProps: spec.SchemaProps{ - Default: "", - Type: []string{"string"}, - Format: "", + Description: "List of Volumes to set in the podSpec.", + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref("k8s.io/api/core/v1.Volume"), + }, + }, + }, }, }, - "message": { + "volumeMounts": { SchemaProps: spec.SchemaProps{ - Default: "", - Type: []string{"string"}, - Format: "", + Description: "List of VolumeMounts to set in the container.", + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref("k8s.io/api/core/v1.VolumeMount"), + }, + }, + }, }, }, - "uuid": { + "affinity": { SchemaProps: spec.SchemaProps{ - Type: []string{"string"}, - Format: "", + Description: "If specified, overrides the pod's scheduling constraints. nil sub-attributes will *not* override the original values in the pod.spec for those sub-attributes. Use empty object ({}) to erase original sub-attribute values.", + Ref: ref("k8s.io/api/core/v1.Affinity"), }, }, - "dependents": { + "annotations": { SchemaProps: spec.SchemaProps{ - Type: []string{"array"}, - Items: &spec.SchemaOrArray{ + Description: "Annotations is an unstructured key value map stored with each Deployment, Pod, APIService in the Operator. Typically, annotations may be set by external tools to store and retrieve arbitrary metadata. Use this field to pre-define annotations that OLM should add to each of the Subscription's deployments, pods, and apiservices.", + Type: []string{"object"}, + AdditionalProperties: &spec.SchemaOrBool{ + Allows: true, Schema: &spec.Schema{ SchemaProps: spec.SchemaProps{ - Default: map[string]interface{}{}, - Ref: ref("github.com/operator-framework/api/pkg/operators/v1alpha1.DependentStatus"), + Default: "", + Type: []string{"string"}, + Format: "", }, }, }, }, }, }, - Required: []string{"group", "version", "kind", "name", "status", "message"}, }, }, Dependencies: []string{ - "github.com/operator-framework/api/pkg/operators/v1alpha1.DependentStatus"}, + "k8s.io/api/core/v1.Affinity", "k8s.io/api/core/v1.EnvFromSource", "k8s.io/api/core/v1.EnvVar", "k8s.io/api/core/v1.ResourceRequirements", "k8s.io/api/core/v1.Toleration", "k8s.io/api/core/v1.Volume", "k8s.io/api/core/v1.VolumeMount", metav1.LabelSelector{}.OpenAPIModelName()}, } } -func schema_api_pkg_operators_v1alpha1_ResourceInstance(ref common.ReferenceCallback) common.OpenAPIDefinition { +func schema_api_pkg_operators_v1alpha1_SubscriptionList(ref common.ReferenceCallback) common.OpenAPIDefinition { return common.OpenAPIDefinition{ Schema: spec.Schema{ SchemaProps: spec.SchemaProps{ - Type: []string{"object"}, + Description: "SubscriptionList is a list of Subscription resources.", + Type: []string{"object"}, Properties: map[string]spec.Schema{ - "name": { - SchemaProps: spec.SchemaProps{ - Default: "", - Type: []string{"string"}, - Format: "", - }, - }, - "namespace": { + "kind": { SchemaProps: spec.SchemaProps{ - Description: "Namespace can be empty for cluster-scoped resources", + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds", Type: []string{"string"}, Format: "", }, }, - }, - Required: []string{"name"}, - }, - }, - } -} - -func schema_api_pkg_operators_v1alpha1_ResourceList(ref common.ReferenceCallback) common.OpenAPIDefinition { - return common.OpenAPIDefinition{ - Schema: spec.Schema{ - SchemaProps: spec.SchemaProps{ - Description: "ResourceList represents a list of resources which are of the same Group/Kind", - Type: []string{"object"}, - Properties: map[string]spec.Schema{ - "group": { + "apiVersion": { SchemaProps: spec.SchemaProps{ - Default: "", - Type: []string{"string"}, - Format: "", + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", }, }, - "kind": { + "metadata": { SchemaProps: spec.SchemaProps{ - Default: "", - Type: []string{"string"}, - Format: "", + Default: map[string]interface{}{}, + Ref: ref(metav1.ListMeta{}.OpenAPIModelName()), }, }, - "instances": { + "items": { SchemaProps: spec.SchemaProps{ Type: []string{"array"}, Items: &spec.SchemaOrArray{ Schema: &spec.Schema{ SchemaProps: spec.SchemaProps{ Default: map[string]interface{}{}, - Ref: ref("github.com/operator-framework/api/pkg/operators/v1alpha1.ResourceInstance"), + Ref: ref(v1alpha1.Subscription{}.OpenAPIModelName()), }, }, }, }, }, }, - Required: []string{"group", "kind", "instances"}, + Required: []string{"metadata", "items"}, }, }, Dependencies: []string{ - "github.com/operator-framework/api/pkg/operators/v1alpha1.ResourceInstance"}, + v1alpha1.Subscription{}.OpenAPIModelName(), metav1.ListMeta{}.OpenAPIModelName()}, } } -func schema_api_pkg_operators_v1alpha1_SpecDescriptor(ref common.ReferenceCallback) common.OpenAPIDefinition { +func schema_api_pkg_operators_v1alpha1_SubscriptionSpec(ref common.ReferenceCallback) common.OpenAPIDefinition { return common.OpenAPIDefinition{ Schema: spec.Schema{ SchemaProps: spec.SchemaProps{ - Description: "SpecDescriptor describes a field in a spec block of a CRD so that OLM can consume it", + Description: "SubscriptionSpec defines an Application that can be installed", Type: []string{"object"}, Properties: map[string]spec.Schema{ - "path": { + "source": { SchemaProps: spec.SchemaProps{ Default: "", Type: []string{"string"}, Format: "", }, }, - "displayName": { + "sourceNamespace": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "name": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "channel": { SchemaProps: spec.SchemaProps{ Type: []string{"string"}, Format: "", }, }, - "description": { + "startingCSV": { SchemaProps: spec.SchemaProps{ Type: []string{"string"}, Format: "", }, }, - "x-descriptors": { + "installPlanApproval": { SchemaProps: spec.SchemaProps{ - Type: []string{"array"}, - Items: &spec.SchemaOrArray{ - Schema: &spec.Schema{ - SchemaProps: spec.SchemaProps{ - Default: "", - Type: []string{"string"}, - Format: "", - }, - }, - }, + Type: []string{"string"}, + Format: "", }, }, - "value": { + "config": { SchemaProps: spec.SchemaProps{ - Type: []string{"string"}, - Format: "byte", + Ref: ref(v1alpha1.SubscriptionConfig{}.OpenAPIModelName()), }, }, }, - Required: []string{"path"}, + Required: []string{"source", "sourceNamespace", "name"}, }, }, + Dependencies: []string{ + v1alpha1.SubscriptionConfig{}.OpenAPIModelName()}, } } -func schema_api_pkg_operators_v1alpha1_StatusDescriptor(ref common.ReferenceCallback) common.OpenAPIDefinition { +func schema_api_pkg_operators_v1alpha1_SubscriptionStatus(ref common.ReferenceCallback) common.OpenAPIDefinition { return common.OpenAPIDefinition{ Schema: spec.Schema{ SchemaProps: spec.SchemaProps{ - Description: "StatusDescriptor describes a field in a status block of a CRD so that OLM can consume it", - Type: []string{"object"}, + Type: []string{"object"}, Properties: map[string]spec.Schema{ - "path": { + "currentCSV": { SchemaProps: spec.SchemaProps{ - Default: "", - Type: []string{"string"}, - Format: "", + Description: "CurrentCSV is the CSV the Subscription is progressing to.", + Type: []string{"string"}, + Format: "", }, }, - "displayName": { + "installedCSV": { SchemaProps: spec.SchemaProps{ - Type: []string{"string"}, - Format: "", + Description: "InstalledCSV is the CSV currently installed by the Subscription.", + Type: []string{"string"}, + Format: "", }, }, - "description": { + "installplan": { SchemaProps: spec.SchemaProps{ - Type: []string{"string"}, - Format: "", + Description: "Install is a reference to the latest InstallPlan generated for the Subscription. DEPRECATED: InstallPlanRef", + Ref: ref(v1alpha1.InstallPlanReference{}.OpenAPIModelName()), }, }, - "x-descriptors": { + "state": { SchemaProps: spec.SchemaProps{ - Type: []string{"array"}, - Items: &spec.SchemaOrArray{ - Schema: &spec.Schema{ - SchemaProps: spec.SchemaProps{ - Default: "", - Type: []string{"string"}, - Format: "", - }, - }, - }, + Description: "State represents the current state of the Subscription", + Type: []string{"string"}, + Format: "", }, }, - "value": { + "reason": { SchemaProps: spec.SchemaProps{ - Type: []string{"string"}, - Format: "byte", + Description: "Reason is the reason the Subscription was transitioned to its current state.", + Type: []string{"string"}, + Format: "", }, }, - }, - Required: []string{"path"}, - }, - }, - } -} - -func schema_api_pkg_operators_v1alpha1_StrategyDeploymentPermissions(ref common.ReferenceCallback) common.OpenAPIDefinition { - return common.OpenAPIDefinition{ - Schema: spec.Schema{ - SchemaProps: spec.SchemaProps{ - Description: "StrategyDeploymentPermissions describe the rbac rules and service account needed by the install strategy", - Type: []string{"object"}, - Properties: map[string]spec.Schema{ - "serviceAccountName": { + "installPlanGeneration": { SchemaProps: spec.SchemaProps{ - Default: "", - Type: []string{"string"}, - Format: "", + Description: "InstallPlanGeneration is the current generation of the installplan", + Type: []string{"integer"}, + Format: "int32", }, }, - "rules": { + "installPlanRef": { SchemaProps: spec.SchemaProps{ - Type: []string{"array"}, + Description: "InstallPlanRef is a reference to the latest InstallPlan that contains the Subscription's current CSV.", + Ref: ref("k8s.io/api/core/v1.ObjectReference"), + }, + }, + "catalogHealth": { + SchemaProps: spec.SchemaProps{ + Description: "CatalogHealth contains the Subscription's view of its relevant CatalogSources' status. It is used to determine SubscriptionStatusConditions related to CatalogSources.", + Type: []string{"array"}, Items: &spec.SchemaOrArray{ Schema: &spec.Schema{ SchemaProps: spec.SchemaProps{ Default: map[string]interface{}{}, - Ref: ref("k8s.io/api/rbac/v1.PolicyRule"), + Ref: ref(v1alpha1.SubscriptionCatalogHealth{}.OpenAPIModelName()), }, }, }, }, }, - }, - Required: []string{"serviceAccountName", "rules"}, - }, - }, - Dependencies: []string{ - "k8s.io/api/rbac/v1.PolicyRule"}, - } -} - -func schema_api_pkg_operators_v1alpha1_StrategyDeploymentSpec(ref common.ReferenceCallback) common.OpenAPIDefinition { - return common.OpenAPIDefinition{ - Schema: spec.Schema{ - SchemaProps: spec.SchemaProps{ - Description: "StrategyDeploymentSpec contains the name, spec and labels for the deployment ALM should create", - Type: []string{"object"}, - Properties: map[string]spec.Schema{ - "name": { - SchemaProps: spec.SchemaProps{ - Default: "", - Type: []string{"string"}, - Format: "", - }, - }, - "spec": { - SchemaProps: spec.SchemaProps{ - Default: map[string]interface{}{}, - Ref: ref("k8s.io/api/apps/v1.DeploymentSpec"), - }, - }, - "label": { + "conditions": { SchemaProps: spec.SchemaProps{ - Type: []string{"object"}, - AdditionalProperties: &spec.SchemaOrBool{ - Allows: true, + Description: "Conditions is a list of the latest available observations about a Subscription's current state.", + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ Schema: &spec.Schema{ SchemaProps: spec.SchemaProps{ - Default: "", - Type: []string{"string"}, - Format: "", + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.SubscriptionCondition{}.OpenAPIModelName()), }, }, }, }, }, + "lastUpdated": { + SchemaProps: spec.SchemaProps{ + Description: "LastUpdated represents the last time that the Subscription status was updated.", + Ref: ref(metav1.Time{}.OpenAPIModelName()), + }, + }, }, - Required: []string{"name", "spec"}, + Required: []string{"lastUpdated"}, }, }, Dependencies: []string{ - "k8s.io/api/apps/v1.DeploymentSpec"}, + v1alpha1.InstallPlanReference{}.OpenAPIModelName(), v1alpha1.SubscriptionCatalogHealth{}.OpenAPIModelName(), v1alpha1.SubscriptionCondition{}.OpenAPIModelName(), "k8s.io/api/core/v1.ObjectReference", metav1.Time{}.OpenAPIModelName()}, } } -func schema_api_pkg_operators_v1alpha1_StrategyDetailsDeployment(ref common.ReferenceCallback) common.OpenAPIDefinition { +func schema_api_pkg_operators_v1alpha1_UpdateStrategy(ref common.ReferenceCallback) common.OpenAPIDefinition { return common.OpenAPIDefinition{ Schema: spec.Schema{ SchemaProps: spec.SchemaProps{ - Description: "StrategyDetailsDeployment represents the parsed details of a Deployment InstallStrategy.", + Description: "UpdateStrategy holds all the different types of catalog source update strategies Currently only registry polling strategy is implemented", Type: []string{"object"}, Properties: map[string]spec.Schema{ - "deployments": { - SchemaProps: spec.SchemaProps{ - Type: []string{"array"}, - Items: &spec.SchemaOrArray{ - Schema: &spec.Schema{ - SchemaProps: spec.SchemaProps{ - Default: map[string]interface{}{}, - Ref: ref("github.com/operator-framework/api/pkg/operators/v1alpha1.StrategyDeploymentSpec"), - }, - }, - }, - }, - }, - "permissions": { - SchemaProps: spec.SchemaProps{ - Type: []string{"array"}, - Items: &spec.SchemaOrArray{ - Schema: &spec.Schema{ - SchemaProps: spec.SchemaProps{ - Default: map[string]interface{}{}, - Ref: ref("github.com/operator-framework/api/pkg/operators/v1alpha1.StrategyDeploymentPermissions"), - }, - }, - }, - }, - }, - "clusterPermissions": { + "registryPoll": { SchemaProps: spec.SchemaProps{ - Type: []string{"array"}, - Items: &spec.SchemaOrArray{ - Schema: &spec.Schema{ - SchemaProps: spec.SchemaProps{ - Default: map[string]interface{}{}, - Ref: ref("github.com/operator-framework/api/pkg/operators/v1alpha1.StrategyDeploymentPermissions"), - }, - }, - }, + Ref: ref(v1alpha1.RegistryPoll{}.OpenAPIModelName()), }, }, }, - Required: []string{"deployments"}, }, }, Dependencies: []string{ - "github.com/operator-framework/api/pkg/operators/v1alpha1.StrategyDeploymentPermissions", "github.com/operator-framework/api/pkg/operators/v1alpha1.StrategyDeploymentSpec"}, + v1alpha1.RegistryPoll{}.OpenAPIModelName()}, } } @@ -1773,7 +3508,7 @@ func schema_package_server_apis_operators_v1_CSVDescription(ref common.Reference "version": { SchemaProps: spec.SchemaProps{ Description: "Version is the CSV's semantic version", - Ref: ref("github.com/operator-framework/api/pkg/lib/version.OperatorVersion"), + Ref: ref(version.OperatorVersion{}.OpenAPIModelName()), }, }, "provider": { @@ -1884,7 +3619,7 @@ func schema_package_server_apis_operators_v1_CSVDescription(ref common.Reference Schema: &spec.Schema{ SchemaProps: spec.SchemaProps{ Default: map[string]interface{}{}, - Ref: ref("github.com/operator-framework/api/pkg/operators/v1alpha1.InstallMode"), + Ref: ref(v1alpha1.InstallMode{}.OpenAPIModelName()), }, }, }, @@ -1893,13 +3628,13 @@ func schema_package_server_apis_operators_v1_CSVDescription(ref common.Reference "customresourcedefinitions": { SchemaProps: spec.SchemaProps{ Default: map[string]interface{}{}, - Ref: ref("github.com/operator-framework/api/pkg/operators/v1alpha1.CustomResourceDefinitions"), + Ref: ref(v1alpha1.CustomResourceDefinitions{}.OpenAPIModelName()), }, }, "apiservicedefinitions": { SchemaProps: spec.SchemaProps{ Default: map[string]interface{}{}, - Ref: ref("github.com/operator-framework/api/pkg/operators/v1alpha1.APIServiceDefinitions"), + Ref: ref(v1alpha1.APIServiceDefinitions{}.OpenAPIModelName()), }, }, "nativeApis": { @@ -1941,7 +3676,7 @@ func schema_package_server_apis_operators_v1_CSVDescription(ref common.Reference }, }, Dependencies: []string{ - "github.com/operator-framework/api/pkg/lib/version.OperatorVersion", "github.com/operator-framework/api/pkg/operators/v1alpha1.APIServiceDefinitions", "github.com/operator-framework/api/pkg/operators/v1alpha1.CustomResourceDefinitions", "github.com/operator-framework/api/pkg/operators/v1alpha1.InstallMode", v1.AppLink{}.OpenAPIModelName(), v1.Icon{}.OpenAPIModelName(), v1.Maintainer{}.OpenAPIModelName(), metav1.GroupVersionKind{}.OpenAPIModelName()}, + version.OperatorVersion{}.OpenAPIModelName(), v1alpha1.APIServiceDefinitions{}.OpenAPIModelName(), v1alpha1.CustomResourceDefinitions{}.OpenAPIModelName(), v1alpha1.InstallMode{}.OpenAPIModelName(), v1.AppLink{}.OpenAPIModelName(), v1.Icon{}.OpenAPIModelName(), v1.Maintainer{}.OpenAPIModelName(), metav1.GroupVersionKind{}.OpenAPIModelName()}, } } diff --git a/staging/operator-lifecycle-manager/scripts/codegen_violation_exceptions.list b/staging/operator-lifecycle-manager/scripts/codegen_violation_exceptions.list index ba2f1c0ca2..45b1f0c292 100644 --- a/staging/operator-lifecycle-manager/scripts/codegen_violation_exceptions.list +++ b/staging/operator-lifecycle-manager/scripts/codegen_violation_exceptions.list @@ -5,10 +5,12 @@ API rule violation: list_type_missing,github.com/operator-framework/api/pkg/oper API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,APIServiceDescription,SpecDescriptors API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,APIServiceDescription,StatusDescriptors API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,ActionDescriptor,XDescriptors +API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,BundleLookup,Conditions API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,CRDDescription,ActionDescriptor API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,CRDDescription,Resources API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,CRDDescription,SpecDescriptors API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,CRDDescription,StatusDescriptors +API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,CatalogSourceSpec,Secrets API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,CleanupStatus,PendingDeletion API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,ClusterServiceVersionSpec,Icon API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,ClusterServiceVersionSpec,InstallModes @@ -23,6 +25,12 @@ API rule violation: list_type_missing,github.com/operator-framework/api/pkg/oper API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,ClusterServiceVersionStatus,RequirementStatus API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,CustomResourceDefinitions,Owned API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,CustomResourceDefinitions,Required +API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,GrpcPodConfig,Tolerations +API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,InstallPlanSpec,ClusterServiceVersionNames +API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,InstallPlanStatus,BundleLookups +API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,InstallPlanStatus,CatalogSources +API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,InstallPlanStatus,Conditions +API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,InstallPlanStatus,Plan API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,RequirementStatus,Dependents API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,ResourceList,Instances API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,SpecDescriptor,XDescriptors @@ -31,6 +39,13 @@ API rule violation: list_type_missing,github.com/operator-framework/api/pkg/oper API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,StrategyDetailsDeployment,ClusterPermissions API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,StrategyDetailsDeployment,DeploymentSpecs API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,StrategyDetailsDeployment,Permissions +API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,SubscriptionConfig,Env +API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,SubscriptionConfig,EnvFrom +API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,SubscriptionConfig,Tolerations +API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,SubscriptionConfig,VolumeMounts +API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,SubscriptionConfig,Volumes +API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,SubscriptionStatus,CatalogHealth +API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,SubscriptionStatus,Conditions API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,WebhookDescription,AdmissionReviewVersions API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,WebhookDescription,ConversionCRDs API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,WebhookDescription,Rules @@ -41,17 +56,31 @@ API rule violation: list_type_missing,github.com/operator-framework/operator-lif API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,APIServiceDescription,ActionDescriptor API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,ActionDescriptor,XDescriptors API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,CRDDescription,ActionDescriptor +API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,CatalogSourceStatus,ConfigMapResource +API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,CatalogSourceStatus,GRPCConnectionState +API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,CatalogSourceStatus,RegistryServiceStatus API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,ClusterServiceVersionSpec,APIServiceDefinitions API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,ClusterServiceVersionSpec,CustomResourceDefinitions API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,ClusterServiceVersionSpec,InstallStrategy API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,ClusterServiceVersionSpec,WebhookDefinitions +API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,GRPCConnectionState,LastConnectTime API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,Icon,Data API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,Icon,MediaType +API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,InstallPlanReference,UID +API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,InstallPlanSpec,CatalogSource +API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,InstallPlanSpec,CatalogSourceNamespace API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,NamedInstallStrategy,StrategyName API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,NamedInstallStrategy,StrategySpec +API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,RegistryPoll,RawInterval API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,SpecDescriptor,XDescriptors API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,StatusDescriptor,XDescriptors +API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,StepResource,CatalogSource +API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,StepResource,CatalogSourceNamespace API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,StrategyDetailsDeployment,DeploymentSpecs +API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,SubscriptionSpec,CatalogSource +API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,SubscriptionSpec,CatalogSourceNamespace +API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,SubscriptionSpec,Package +API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,SubscriptionStatus,Install API rule violation: names_match,github.com/operator-framework/operator-lifecycle-manager/pkg/package-server/apis/operators/v1,CSVDescription,APIServiceDefinitions API rule violation: names_match,github.com/operator-framework/operator-lifecycle-manager/pkg/package-server/apis/operators/v1,CSVDescription,CustomResourceDefinitions API rule violation: names_match,github.com/operator-framework/operator-lifecycle-manager/pkg/package-server/apis/operators/v1,CSVDescription,LongDescription @@ -72,3 +101,7 @@ API rule violation: names_match,k8s.io/apimachinery/pkg/apis/meta/v1,StatusCause API rule violation: names_match,k8s.io/apimachinery/pkg/apis/meta/v1,Time,Time API rule violation: names_match,k8s.io/apimachinery/pkg/runtime,Unknown,ContentEncoding API rule violation: names_match,k8s.io/apimachinery/pkg/runtime,Unknown,ContentType +API rule violation: streaming_list_type_json_tags,github.com/operator-framework/api/pkg/operators/v1alpha1,CatalogSourceList,ListMeta +API rule violation: streaming_list_type_json_tags,github.com/operator-framework/api/pkg/operators/v1alpha1,ClusterServiceVersionList,ListMeta +API rule violation: streaming_list_type_json_tags,github.com/operator-framework/api/pkg/operators/v1alpha1,InstallPlanList,ListMeta +API rule violation: streaming_list_type_json_tags,github.com/operator-framework/api/pkg/operators/v1alpha1,SubscriptionList,ListMeta diff --git a/vendor/github.com/operator-framework/operator-lifecycle-manager/pkg/package-server/client/openapi/zz_generated.openapi.go b/vendor/github.com/operator-framework/operator-lifecycle-manager/pkg/package-server/client/openapi/zz_generated.openapi.go index 0e3e9985f0..38cf1b474e 100644 --- a/vendor/github.com/operator-framework/operator-lifecycle-manager/pkg/package-server/client/openapi/zz_generated.openapi.go +++ b/vendor/github.com/operator-framework/operator-lifecycle-manager/pkg/package-server/client/openapi/zz_generated.openapi.go @@ -20,111 +20,142 @@ limitations under the License. package openapi import ( - libversion "github.com/operator-framework/api/pkg/lib/version" + version "github.com/operator-framework/api/pkg/lib/version" + v1alpha1 "github.com/operator-framework/api/pkg/operators/v1alpha1" v1 "github.com/operator-framework/operator-lifecycle-manager/pkg/package-server/apis/operators/v1" resource "k8s.io/apimachinery/pkg/api/resource" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" runtime "k8s.io/apimachinery/pkg/runtime" - version "k8s.io/apimachinery/pkg/version" + pkgversion "k8s.io/apimachinery/pkg/version" common "k8s.io/kube-openapi/pkg/common" spec "k8s.io/kube-openapi/pkg/validation/spec" ) func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenAPIDefinition { return map[string]common.OpenAPIDefinition{ - "github.com/operator-framework/api/pkg/lib/version.OperatorVersion": schema_api_pkg_lib_version_OperatorVersion(ref), - "github.com/operator-framework/api/pkg/operators/v1alpha1.APIResourceReference": schema_api_pkg_operators_v1alpha1_APIResourceReference(ref), - "github.com/operator-framework/api/pkg/operators/v1alpha1.APIServiceDefinitions": schema_api_pkg_operators_v1alpha1_APIServiceDefinitions(ref), - "github.com/operator-framework/api/pkg/operators/v1alpha1.APIServiceDescription": schema_api_pkg_operators_v1alpha1_APIServiceDescription(ref), - "github.com/operator-framework/api/pkg/operators/v1alpha1.ActionDescriptor": schema_api_pkg_operators_v1alpha1_ActionDescriptor(ref), - "github.com/operator-framework/api/pkg/operators/v1alpha1.AppLink": schema_api_pkg_operators_v1alpha1_AppLink(ref), - "github.com/operator-framework/api/pkg/operators/v1alpha1.CRDDescription": schema_api_pkg_operators_v1alpha1_CRDDescription(ref), - "github.com/operator-framework/api/pkg/operators/v1alpha1.CleanupSpec": schema_api_pkg_operators_v1alpha1_CleanupSpec(ref), - "github.com/operator-framework/api/pkg/operators/v1alpha1.CleanupStatus": schema_api_pkg_operators_v1alpha1_CleanupStatus(ref), - "github.com/operator-framework/api/pkg/operators/v1alpha1.ClusterServiceVersionCondition": schema_api_pkg_operators_v1alpha1_ClusterServiceVersionCondition(ref), - "github.com/operator-framework/api/pkg/operators/v1alpha1.ClusterServiceVersionSpec": schema_api_pkg_operators_v1alpha1_ClusterServiceVersionSpec(ref), - "github.com/operator-framework/api/pkg/operators/v1alpha1.ClusterServiceVersionStatus": schema_api_pkg_operators_v1alpha1_ClusterServiceVersionStatus(ref), - "github.com/operator-framework/api/pkg/operators/v1alpha1.CustomResourceDefinitions": schema_api_pkg_operators_v1alpha1_CustomResourceDefinitions(ref), - "github.com/operator-framework/api/pkg/operators/v1alpha1.DependentStatus": schema_api_pkg_operators_v1alpha1_DependentStatus(ref), - "github.com/operator-framework/api/pkg/operators/v1alpha1.Icon": schema_api_pkg_operators_v1alpha1_Icon(ref), - "github.com/operator-framework/api/pkg/operators/v1alpha1.InstallMode": schema_api_pkg_operators_v1alpha1_InstallMode(ref), - "github.com/operator-framework/api/pkg/operators/v1alpha1.Maintainer": schema_api_pkg_operators_v1alpha1_Maintainer(ref), - "github.com/operator-framework/api/pkg/operators/v1alpha1.NamedInstallStrategy": schema_api_pkg_operators_v1alpha1_NamedInstallStrategy(ref), - "github.com/operator-framework/api/pkg/operators/v1alpha1.RelatedImage": schema_api_pkg_operators_v1alpha1_RelatedImage(ref), - "github.com/operator-framework/api/pkg/operators/v1alpha1.RequirementStatus": schema_api_pkg_operators_v1alpha1_RequirementStatus(ref), - "github.com/operator-framework/api/pkg/operators/v1alpha1.ResourceInstance": schema_api_pkg_operators_v1alpha1_ResourceInstance(ref), - "github.com/operator-framework/api/pkg/operators/v1alpha1.ResourceList": schema_api_pkg_operators_v1alpha1_ResourceList(ref), - "github.com/operator-framework/api/pkg/operators/v1alpha1.SpecDescriptor": schema_api_pkg_operators_v1alpha1_SpecDescriptor(ref), - "github.com/operator-framework/api/pkg/operators/v1alpha1.StatusDescriptor": schema_api_pkg_operators_v1alpha1_StatusDescriptor(ref), - "github.com/operator-framework/api/pkg/operators/v1alpha1.StrategyDeploymentPermissions": schema_api_pkg_operators_v1alpha1_StrategyDeploymentPermissions(ref), - "github.com/operator-framework/api/pkg/operators/v1alpha1.StrategyDeploymentSpec": schema_api_pkg_operators_v1alpha1_StrategyDeploymentSpec(ref), - "github.com/operator-framework/api/pkg/operators/v1alpha1.StrategyDetailsDeployment": schema_api_pkg_operators_v1alpha1_StrategyDetailsDeployment(ref), - "github.com/operator-framework/api/pkg/operators/v1alpha1.WebhookDescription": schema_api_pkg_operators_v1alpha1_WebhookDescription(ref), - v1.AppLink{}.OpenAPIModelName(): schema_package_server_apis_operators_v1_AppLink(ref), - v1.CSVDescription{}.OpenAPIModelName(): schema_package_server_apis_operators_v1_CSVDescription(ref), - v1.ChannelEntry{}.OpenAPIModelName(): schema_package_server_apis_operators_v1_ChannelEntry(ref), - v1.Deprecation{}.OpenAPIModelName(): schema_package_server_apis_operators_v1_Deprecation(ref), - v1.Icon{}.OpenAPIModelName(): schema_package_server_apis_operators_v1_Icon(ref), - v1.Maintainer{}.OpenAPIModelName(): schema_package_server_apis_operators_v1_Maintainer(ref), - v1.PackageChannel{}.OpenAPIModelName(): schema_package_server_apis_operators_v1_PackageChannel(ref), - v1.PackageManifest{}.OpenAPIModelName(): schema_package_server_apis_operators_v1_PackageManifest(ref), - v1.PackageManifestList{}.OpenAPIModelName(): schema_package_server_apis_operators_v1_PackageManifestList(ref), - v1.PackageManifestSpec{}.OpenAPIModelName(): schema_package_server_apis_operators_v1_PackageManifestSpec(ref), - v1.PackageManifestStatus{}.OpenAPIModelName(): schema_package_server_apis_operators_v1_PackageManifestStatus(ref), - resource.Quantity{}.OpenAPIModelName(): schema_apimachinery_pkg_api_resource_Quantity(ref), - metav1.APIGroup{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_APIGroup(ref), - metav1.APIGroupList{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_APIGroupList(ref), - metav1.APIResource{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_APIResource(ref), - metav1.APIResourceList{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_APIResourceList(ref), - metav1.APIVersions{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_APIVersions(ref), - metav1.ApplyOptions{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_ApplyOptions(ref), - metav1.Condition{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_Condition(ref), - metav1.CreateOptions{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_CreateOptions(ref), - metav1.DeleteOptions{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_DeleteOptions(ref), - metav1.Duration{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_Duration(ref), - metav1.FieldSelectorRequirement{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_FieldSelectorRequirement(ref), - metav1.FieldsV1{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_FieldsV1(ref), - metav1.GetOptions{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_GetOptions(ref), - metav1.GroupKind{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_GroupKind(ref), - metav1.GroupResource{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_GroupResource(ref), - metav1.GroupVersion{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_GroupVersion(ref), - metav1.GroupVersionForDiscovery{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_GroupVersionForDiscovery(ref), - metav1.GroupVersionKind{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_GroupVersionKind(ref), - metav1.GroupVersionResource{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_GroupVersionResource(ref), - metav1.InternalEvent{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_InternalEvent(ref), - metav1.LabelSelector{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_LabelSelector(ref), - metav1.LabelSelectorRequirement{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_LabelSelectorRequirement(ref), - metav1.List{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_List(ref), - metav1.ListMeta{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_ListMeta(ref), - metav1.ListOptions{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_ListOptions(ref), - metav1.ManagedFieldsEntry{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_ManagedFieldsEntry(ref), - metav1.MicroTime{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_MicroTime(ref), - metav1.ObjectMeta{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_ObjectMeta(ref), - metav1.OwnerReference{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_OwnerReference(ref), - metav1.PartialObjectMetadata{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_PartialObjectMetadata(ref), - metav1.PartialObjectMetadataList{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_PartialObjectMetadataList(ref), - metav1.Patch{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_Patch(ref), - metav1.PatchOptions{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_PatchOptions(ref), - metav1.Preconditions{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_Preconditions(ref), - metav1.RootPaths{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_RootPaths(ref), - metav1.ServerAddressByClientCIDR{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_ServerAddressByClientCIDR(ref), - metav1.Status{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_Status(ref), - metav1.StatusCause{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_StatusCause(ref), - metav1.StatusDetails{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_StatusDetails(ref), - metav1.Table{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_Table(ref), - metav1.TableColumnDefinition{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_TableColumnDefinition(ref), - metav1.TableOptions{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_TableOptions(ref), - metav1.TableRow{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_TableRow(ref), - metav1.TableRowCondition{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_TableRowCondition(ref), - metav1.Time{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_Time(ref), - metav1.Timestamp{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_Timestamp(ref), - metav1.TypeMeta{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_TypeMeta(ref), - metav1.UpdateOptions{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_UpdateOptions(ref), - metav1.WatchEvent{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_WatchEvent(ref), - runtime.RawExtension{}.OpenAPIModelName(): schema_k8sio_apimachinery_pkg_runtime_RawExtension(ref), - runtime.TypeMeta{}.OpenAPIModelName(): schema_k8sio_apimachinery_pkg_runtime_TypeMeta(ref), - runtime.Unknown{}.OpenAPIModelName(): schema_k8sio_apimachinery_pkg_runtime_Unknown(ref), - version.Info{}.OpenAPIModelName(): schema_k8sio_apimachinery_pkg_version_Info(ref), + version.OperatorVersion{}.OpenAPIModelName(): schema_api_pkg_lib_version_OperatorVersion(ref), + v1alpha1.APIResourceReference{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_APIResourceReference(ref), + v1alpha1.APIServiceDefinitions{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_APIServiceDefinitions(ref), + v1alpha1.APIServiceDescription{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_APIServiceDescription(ref), + v1alpha1.ActionDescriptor{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_ActionDescriptor(ref), + v1alpha1.AppLink{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_AppLink(ref), + v1alpha1.BundleLookup{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_BundleLookup(ref), + v1alpha1.BundleLookupCondition{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_BundleLookupCondition(ref), + v1alpha1.CRDDescription{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_CRDDescription(ref), + v1alpha1.CatalogSource{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_CatalogSource(ref), + v1alpha1.CatalogSourceList{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_CatalogSourceList(ref), + v1alpha1.CatalogSourceSpec{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_CatalogSourceSpec(ref), + v1alpha1.CatalogSourceStatus{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_CatalogSourceStatus(ref), + v1alpha1.CleanupSpec{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_CleanupSpec(ref), + v1alpha1.CleanupStatus{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_CleanupStatus(ref), + v1alpha1.ClusterServiceVersion{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_ClusterServiceVersion(ref), + v1alpha1.ClusterServiceVersionCondition{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_ClusterServiceVersionCondition(ref), + v1alpha1.ClusterServiceVersionList{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_ClusterServiceVersionList(ref), + v1alpha1.ClusterServiceVersionSpec{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_ClusterServiceVersionSpec(ref), + v1alpha1.ClusterServiceVersionStatus{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_ClusterServiceVersionStatus(ref), + v1alpha1.ConfigMapResourceReference{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_ConfigMapResourceReference(ref), + v1alpha1.CustomResourceDefinitions{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_CustomResourceDefinitions(ref), + v1alpha1.DependentStatus{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_DependentStatus(ref), + v1alpha1.ExtractContentConfig{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_ExtractContentConfig(ref), + v1alpha1.GRPCConnectionState{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_GRPCConnectionState(ref), + v1alpha1.GrpcPodConfig{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_GrpcPodConfig(ref), + v1alpha1.Icon{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_Icon(ref), + v1alpha1.InstallMode{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_InstallMode(ref), + v1alpha1.InstallPlan{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_InstallPlan(ref), + v1alpha1.InstallPlanCondition{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_InstallPlanCondition(ref), + v1alpha1.InstallPlanList{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_InstallPlanList(ref), + v1alpha1.InstallPlanReference{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_InstallPlanReference(ref), + v1alpha1.InstallPlanSpec{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_InstallPlanSpec(ref), + v1alpha1.InstallPlanStatus{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_InstallPlanStatus(ref), + v1alpha1.Maintainer{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_Maintainer(ref), + v1alpha1.NamedInstallStrategy{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_NamedInstallStrategy(ref), + v1alpha1.RegistryPoll{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_RegistryPoll(ref), + v1alpha1.RegistryServiceStatus{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_RegistryServiceStatus(ref), + v1alpha1.RelatedImage{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_RelatedImage(ref), + v1alpha1.RequirementStatus{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_RequirementStatus(ref), + v1alpha1.ResourceInstance{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_ResourceInstance(ref), + v1alpha1.ResourceList{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_ResourceList(ref), + v1alpha1.SpecDescriptor{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_SpecDescriptor(ref), + v1alpha1.StatusDescriptor{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_StatusDescriptor(ref), + v1alpha1.Step{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_Step(ref), + v1alpha1.StepResource{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_StepResource(ref), + v1alpha1.StrategyDeploymentPermissions{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_StrategyDeploymentPermissions(ref), + v1alpha1.StrategyDeploymentSpec{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_StrategyDeploymentSpec(ref), + v1alpha1.StrategyDetailsDeployment{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_StrategyDetailsDeployment(ref), + v1alpha1.Subscription{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_Subscription(ref), + v1alpha1.SubscriptionCatalogHealth{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_SubscriptionCatalogHealth(ref), + v1alpha1.SubscriptionCondition{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_SubscriptionCondition(ref), + v1alpha1.SubscriptionConfig{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_SubscriptionConfig(ref), + v1alpha1.SubscriptionList{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_SubscriptionList(ref), + v1alpha1.SubscriptionSpec{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_SubscriptionSpec(ref), + v1alpha1.SubscriptionStatus{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_SubscriptionStatus(ref), + v1alpha1.UpdateStrategy{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_UpdateStrategy(ref), + v1alpha1.WebhookDescription{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_WebhookDescription(ref), + v1.AppLink{}.OpenAPIModelName(): schema_package_server_apis_operators_v1_AppLink(ref), + v1.CSVDescription{}.OpenAPIModelName(): schema_package_server_apis_operators_v1_CSVDescription(ref), + v1.ChannelEntry{}.OpenAPIModelName(): schema_package_server_apis_operators_v1_ChannelEntry(ref), + v1.Deprecation{}.OpenAPIModelName(): schema_package_server_apis_operators_v1_Deprecation(ref), + v1.Icon{}.OpenAPIModelName(): schema_package_server_apis_operators_v1_Icon(ref), + v1.Maintainer{}.OpenAPIModelName(): schema_package_server_apis_operators_v1_Maintainer(ref), + v1.PackageChannel{}.OpenAPIModelName(): schema_package_server_apis_operators_v1_PackageChannel(ref), + v1.PackageManifest{}.OpenAPIModelName(): schema_package_server_apis_operators_v1_PackageManifest(ref), + v1.PackageManifestList{}.OpenAPIModelName(): schema_package_server_apis_operators_v1_PackageManifestList(ref), + v1.PackageManifestSpec{}.OpenAPIModelName(): schema_package_server_apis_operators_v1_PackageManifestSpec(ref), + v1.PackageManifestStatus{}.OpenAPIModelName(): schema_package_server_apis_operators_v1_PackageManifestStatus(ref), + resource.Quantity{}.OpenAPIModelName(): schema_apimachinery_pkg_api_resource_Quantity(ref), + metav1.APIGroup{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_APIGroup(ref), + metav1.APIGroupList{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_APIGroupList(ref), + metav1.APIResource{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_APIResource(ref), + metav1.APIResourceList{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_APIResourceList(ref), + metav1.APIVersions{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_APIVersions(ref), + metav1.ApplyOptions{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_ApplyOptions(ref), + metav1.Condition{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_Condition(ref), + metav1.CreateOptions{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_CreateOptions(ref), + metav1.DeleteOptions{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_DeleteOptions(ref), + metav1.Duration{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_Duration(ref), + metav1.FieldSelectorRequirement{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_FieldSelectorRequirement(ref), + metav1.FieldsV1{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_FieldsV1(ref), + metav1.GetOptions{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_GetOptions(ref), + metav1.GroupKind{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_GroupKind(ref), + metav1.GroupResource{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_GroupResource(ref), + metav1.GroupVersion{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_GroupVersion(ref), + metav1.GroupVersionForDiscovery{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_GroupVersionForDiscovery(ref), + metav1.GroupVersionKind{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_GroupVersionKind(ref), + metav1.GroupVersionResource{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_GroupVersionResource(ref), + metav1.InternalEvent{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_InternalEvent(ref), + metav1.LabelSelector{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_LabelSelector(ref), + metav1.LabelSelectorRequirement{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_LabelSelectorRequirement(ref), + metav1.List{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_List(ref), + metav1.ListMeta{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_ListMeta(ref), + metav1.ListOptions{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_ListOptions(ref), + metav1.ManagedFieldsEntry{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_ManagedFieldsEntry(ref), + metav1.MicroTime{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_MicroTime(ref), + metav1.ObjectMeta{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_ObjectMeta(ref), + metav1.OwnerReference{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_OwnerReference(ref), + metav1.PartialObjectMetadata{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_PartialObjectMetadata(ref), + metav1.PartialObjectMetadataList{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_PartialObjectMetadataList(ref), + metav1.Patch{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_Patch(ref), + metav1.PatchOptions{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_PatchOptions(ref), + metav1.Preconditions{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_Preconditions(ref), + metav1.RootPaths{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_RootPaths(ref), + metav1.ServerAddressByClientCIDR{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_ServerAddressByClientCIDR(ref), + metav1.Status{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_Status(ref), + metav1.StatusCause{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_StatusCause(ref), + metav1.StatusDetails{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_StatusDetails(ref), + metav1.Table{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_Table(ref), + metav1.TableColumnDefinition{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_TableColumnDefinition(ref), + metav1.TableOptions{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_TableOptions(ref), + metav1.TableRow{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_TableRow(ref), + metav1.TableRowCondition{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_TableRowCondition(ref), + metav1.Time{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_Time(ref), + metav1.Timestamp{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_Timestamp(ref), + metav1.TypeMeta{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_TypeMeta(ref), + metav1.UpdateOptions{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_UpdateOptions(ref), + metav1.WatchEvent{}.OpenAPIModelName(): schema_pkg_apis_meta_v1_WatchEvent(ref), + runtime.RawExtension{}.OpenAPIModelName(): schema_k8sio_apimachinery_pkg_runtime_RawExtension(ref), + runtime.TypeMeta{}.OpenAPIModelName(): schema_k8sio_apimachinery_pkg_runtime_TypeMeta(ref), + runtime.Unknown{}.OpenAPIModelName(): schema_k8sio_apimachinery_pkg_runtime_Unknown(ref), + pkgversion.Info{}.OpenAPIModelName(): schema_k8sio_apimachinery_pkg_version_Info(ref), } } @@ -133,8 +164,8 @@ func schema_api_pkg_lib_version_OperatorVersion(ref common.ReferenceCallback) co Schema: spec.Schema{ SchemaProps: spec.SchemaProps{ Description: "OperatorVersion is a wrapper around semver.Version which supports correct marshaling to YAML and JSON.", - Type: libversion.OperatorVersion{}.OpenAPISchemaType(), - Format: libversion.OperatorVersion{}.OpenAPISchemaFormat(), + Type: version.OperatorVersion{}.OpenAPISchemaType(), + Format: version.OperatorVersion{}.OpenAPISchemaFormat(), }, }, } @@ -192,7 +223,7 @@ func schema_api_pkg_operators_v1alpha1_APIServiceDefinitions(ref common.Referenc Schema: &spec.Schema{ SchemaProps: spec.SchemaProps{ Default: map[string]interface{}{}, - Ref: ref("github.com/operator-framework/api/pkg/operators/v1alpha1.APIServiceDescription"), + Ref: ref(v1alpha1.APIServiceDescription{}.OpenAPIModelName()), }, }, }, @@ -205,7 +236,7 @@ func schema_api_pkg_operators_v1alpha1_APIServiceDefinitions(ref common.Referenc Schema: &spec.Schema{ SchemaProps: spec.SchemaProps{ Default: map[string]interface{}{}, - Ref: ref("github.com/operator-framework/api/pkg/operators/v1alpha1.APIServiceDescription"), + Ref: ref(v1alpha1.APIServiceDescription{}.OpenAPIModelName()), }, }, }, @@ -215,7 +246,7 @@ func schema_api_pkg_operators_v1alpha1_APIServiceDefinitions(ref common.Referenc }, }, Dependencies: []string{ - "github.com/operator-framework/api/pkg/operators/v1alpha1.APIServiceDescription"}, + v1alpha1.APIServiceDescription{}.OpenAPIModelName()}, } } @@ -285,7 +316,7 @@ func schema_api_pkg_operators_v1alpha1_APIServiceDescription(ref common.Referenc Schema: &spec.Schema{ SchemaProps: spec.SchemaProps{ Default: map[string]interface{}{}, - Ref: ref("github.com/operator-framework/api/pkg/operators/v1alpha1.APIResourceReference"), + Ref: ref(v1alpha1.APIResourceReference{}.OpenAPIModelName()), }, }, }, @@ -298,7 +329,7 @@ func schema_api_pkg_operators_v1alpha1_APIServiceDescription(ref common.Referenc Schema: &spec.Schema{ SchemaProps: spec.SchemaProps{ Default: map[string]interface{}{}, - Ref: ref("github.com/operator-framework/api/pkg/operators/v1alpha1.StatusDescriptor"), + Ref: ref(v1alpha1.StatusDescriptor{}.OpenAPIModelName()), }, }, }, @@ -311,7 +342,7 @@ func schema_api_pkg_operators_v1alpha1_APIServiceDescription(ref common.Referenc Schema: &spec.Schema{ SchemaProps: spec.SchemaProps{ Default: map[string]interface{}{}, - Ref: ref("github.com/operator-framework/api/pkg/operators/v1alpha1.SpecDescriptor"), + Ref: ref(v1alpha1.SpecDescriptor{}.OpenAPIModelName()), }, }, }, @@ -324,7 +355,7 @@ func schema_api_pkg_operators_v1alpha1_APIServiceDescription(ref common.Referenc Schema: &spec.Schema{ SchemaProps: spec.SchemaProps{ Default: map[string]interface{}{}, - Ref: ref("github.com/operator-framework/api/pkg/operators/v1alpha1.ActionDescriptor"), + Ref: ref(v1alpha1.ActionDescriptor{}.OpenAPIModelName()), }, }, }, @@ -335,7 +366,7 @@ func schema_api_pkg_operators_v1alpha1_APIServiceDescription(ref common.Referenc }, }, Dependencies: []string{ - "github.com/operator-framework/api/pkg/operators/v1alpha1.APIResourceReference", "github.com/operator-framework/api/pkg/operators/v1alpha1.ActionDescriptor", "github.com/operator-framework/api/pkg/operators/v1alpha1.SpecDescriptor", "github.com/operator-framework/api/pkg/operators/v1alpha1.StatusDescriptor"}, + v1alpha1.APIResourceReference{}.OpenAPIModelName(), v1alpha1.ActionDescriptor{}.OpenAPIModelName(), v1alpha1.SpecDescriptor{}.OpenAPIModelName(), v1alpha1.StatusDescriptor{}.OpenAPIModelName()}, } } @@ -416,6 +447,136 @@ func schema_api_pkg_operators_v1alpha1_AppLink(ref common.ReferenceCallback) com } } +func schema_api_pkg_operators_v1alpha1_BundleLookup(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "BundleLookup is a request to pull and unpackage the content of a bundle to the cluster.", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "path": { + SchemaProps: spec.SchemaProps{ + Description: "Path refers to the location of a bundle to pull. It's typically an image reference.", + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "identifier": { + SchemaProps: spec.SchemaProps{ + Description: "Identifier is the catalog-unique name of the operator (the name of the CSV for bundles that contain CSVs)", + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "replaces": { + SchemaProps: spec.SchemaProps{ + Description: "Replaces is the name of the bundle to replace with the one found at Path.", + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "catalogSourceRef": { + SchemaProps: spec.SchemaProps{ + Description: "CatalogSourceRef is a reference to the CatalogSource the bundle path was resolved from.", + Ref: ref("k8s.io/api/core/v1.ObjectReference"), + }, + }, + "conditions": { + VendorExtensible: spec.VendorExtensible{ + Extensions: spec.Extensions{ + "x-kubernetes-patch-merge-key": "type", + "x-kubernetes-patch-strategy": "merge", + }, + }, + SchemaProps: spec.SchemaProps{ + Description: "Conditions represents the overall state of a BundleLookup.", + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.BundleLookupCondition{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + "properties": { + SchemaProps: spec.SchemaProps{ + Description: "The effective properties of the unpacked bundle.", + Type: []string{"string"}, + Format: "", + }, + }, + }, + Required: []string{"path", "identifier", "replaces", "catalogSourceRef"}, + }, + }, + Dependencies: []string{ + v1alpha1.BundleLookupCondition{}.OpenAPIModelName(), "k8s.io/api/core/v1.ObjectReference"}, + } +} + +func schema_api_pkg_operators_v1alpha1_BundleLookupCondition(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "type": { + SchemaProps: spec.SchemaProps{ + Description: "Type of condition.", + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "status": { + SchemaProps: spec.SchemaProps{ + Description: "Status of the condition, one of True, False, Unknown.", + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "reason": { + SchemaProps: spec.SchemaProps{ + Description: "The reason for the condition's last transition.", + Type: []string{"string"}, + Format: "", + }, + }, + "message": { + SchemaProps: spec.SchemaProps{ + Description: "A human readable message indicating details about the transition.", + Type: []string{"string"}, + Format: "", + }, + }, + "lastUpdateTime": { + SchemaProps: spec.SchemaProps{ + Description: "Last time the condition was probed.", + Ref: ref(metav1.Time{}.OpenAPIModelName()), + }, + }, + "lastTransitionTime": { + SchemaProps: spec.SchemaProps{ + Description: "Last time the condition transitioned from one status to another.", + Ref: ref(metav1.Time{}.OpenAPIModelName()), + }, + }, + }, + Required: []string{"type", "status"}, + }, + }, + Dependencies: []string{ + metav1.Time{}.OpenAPIModelName()}, + } +} + func schema_api_pkg_operators_v1alpha1_CRDDescription(ref common.ReferenceCallback) common.OpenAPIDefinition { return common.OpenAPIDefinition{ Schema: spec.Schema{ @@ -463,7 +624,7 @@ func schema_api_pkg_operators_v1alpha1_CRDDescription(ref common.ReferenceCallba Schema: &spec.Schema{ SchemaProps: spec.SchemaProps{ Default: map[string]interface{}{}, - Ref: ref("github.com/operator-framework/api/pkg/operators/v1alpha1.APIResourceReference"), + Ref: ref(v1alpha1.APIResourceReference{}.OpenAPIModelName()), }, }, }, @@ -476,7 +637,7 @@ func schema_api_pkg_operators_v1alpha1_CRDDescription(ref common.ReferenceCallba Schema: &spec.Schema{ SchemaProps: spec.SchemaProps{ Default: map[string]interface{}{}, - Ref: ref("github.com/operator-framework/api/pkg/operators/v1alpha1.StatusDescriptor"), + Ref: ref(v1alpha1.StatusDescriptor{}.OpenAPIModelName()), }, }, }, @@ -489,7 +650,7 @@ func schema_api_pkg_operators_v1alpha1_CRDDescription(ref common.ReferenceCallba Schema: &spec.Schema{ SchemaProps: spec.SchemaProps{ Default: map[string]interface{}{}, - Ref: ref("github.com/operator-framework/api/pkg/operators/v1alpha1.SpecDescriptor"), + Ref: ref(v1alpha1.SpecDescriptor{}.OpenAPIModelName()), }, }, }, @@ -502,7 +663,7 @@ func schema_api_pkg_operators_v1alpha1_CRDDescription(ref common.ReferenceCallba Schema: &spec.Schema{ SchemaProps: spec.SchemaProps{ Default: map[string]interface{}{}, - Ref: ref("github.com/operator-framework/api/pkg/operators/v1alpha1.ActionDescriptor"), + Ref: ref(v1alpha1.ActionDescriptor{}.OpenAPIModelName()), }, }, }, @@ -513,374 +674,393 @@ func schema_api_pkg_operators_v1alpha1_CRDDescription(ref common.ReferenceCallba }, }, Dependencies: []string{ - "github.com/operator-framework/api/pkg/operators/v1alpha1.APIResourceReference", "github.com/operator-framework/api/pkg/operators/v1alpha1.ActionDescriptor", "github.com/operator-framework/api/pkg/operators/v1alpha1.SpecDescriptor", "github.com/operator-framework/api/pkg/operators/v1alpha1.StatusDescriptor"}, + v1alpha1.APIResourceReference{}.OpenAPIModelName(), v1alpha1.ActionDescriptor{}.OpenAPIModelName(), v1alpha1.SpecDescriptor{}.OpenAPIModelName(), v1alpha1.StatusDescriptor{}.OpenAPIModelName()}, } } -func schema_api_pkg_operators_v1alpha1_CleanupSpec(ref common.ReferenceCallback) common.OpenAPIDefinition { +func schema_api_pkg_operators_v1alpha1_CatalogSource(ref common.ReferenceCallback) common.OpenAPIDefinition { return common.OpenAPIDefinition{ Schema: spec.Schema{ SchemaProps: spec.SchemaProps{ - Type: []string{"object"}, + Description: "CatalogSource is a repository of CSVs, CRDs, and operator packages.", + Type: []string{"object"}, Properties: map[string]spec.Schema{ - "enabled": { + "kind": { SchemaProps: spec.SchemaProps{ - Default: false, - Type: []string{"boolean"}, - Format: "", + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", }, }, - }, - Required: []string{"enabled"}, - }, - }, - } -} - -func schema_api_pkg_operators_v1alpha1_CleanupStatus(ref common.ReferenceCallback) common.OpenAPIDefinition { - return common.OpenAPIDefinition{ - Schema: spec.Schema{ - SchemaProps: spec.SchemaProps{ - Description: "CleanupStatus represents information about the status of cleanup while a CSV is pending deletion", - Type: []string{"object"}, - Properties: map[string]spec.Schema{ - "pendingDeletion": { + "apiVersion": { SchemaProps: spec.SchemaProps{ - Description: "PendingDeletion is the list of custom resource objects that are pending deletion and blocked on finalizers. This indicates the progress of cleanup that is blocking CSV deletion or operator uninstall.", - Type: []string{"array"}, - Items: &spec.SchemaOrArray{ - Schema: &spec.Schema{ - SchemaProps: spec.SchemaProps{ - Default: map[string]interface{}{}, - Ref: ref("github.com/operator-framework/api/pkg/operators/v1alpha1.ResourceList"), - }, - }, - }, + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, + "metadata": { + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(metav1.ObjectMeta{}.OpenAPIModelName()), + }, + }, + "spec": { + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.CatalogSourceSpec{}.OpenAPIModelName()), + }, + }, + "status": { + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.CatalogSourceStatus{}.OpenAPIModelName()), }, }, }, + Required: []string{"metadata", "spec"}, }, }, Dependencies: []string{ - "github.com/operator-framework/api/pkg/operators/v1alpha1.ResourceList"}, + v1alpha1.CatalogSourceSpec{}.OpenAPIModelName(), v1alpha1.CatalogSourceStatus{}.OpenAPIModelName(), metav1.ObjectMeta{}.OpenAPIModelName()}, } } -func schema_api_pkg_operators_v1alpha1_ClusterServiceVersionCondition(ref common.ReferenceCallback) common.OpenAPIDefinition { +func schema_api_pkg_operators_v1alpha1_CatalogSourceList(ref common.ReferenceCallback) common.OpenAPIDefinition { return common.OpenAPIDefinition{ Schema: spec.Schema{ SchemaProps: spec.SchemaProps{ - Description: "Conditions appear in the status as a record of state transitions on the ClusterServiceVersion", + Description: "CatalogSourceList is a repository of CSVs, CRDs, and operator packages.", Type: []string{"object"}, Properties: map[string]spec.Schema{ - "phase": { - SchemaProps: spec.SchemaProps{ - Description: "Condition of the ClusterServiceVersion", - Type: []string{"string"}, - Format: "", - }, - }, - "message": { + "kind": { SchemaProps: spec.SchemaProps{ - Description: "A human readable message indicating details about why the ClusterServiceVersion is in this condition.", + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds", Type: []string{"string"}, Format: "", }, }, - "reason": { + "apiVersion": { SchemaProps: spec.SchemaProps{ - Description: "A brief CamelCase message indicating details about why the ClusterServiceVersion is in this state. e.g. 'RequirementsNotMet'", + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources", Type: []string{"string"}, Format: "", }, }, - "lastUpdateTime": { + "metadata": { SchemaProps: spec.SchemaProps{ - Description: "Last time we updated the status", - Ref: ref(metav1.Time{}.OpenAPIModelName()), + Default: map[string]interface{}{}, + Ref: ref(metav1.ListMeta{}.OpenAPIModelName()), }, }, - "lastTransitionTime": { + "items": { SchemaProps: spec.SchemaProps{ - Description: "Last time the status transitioned from one status to another.", - Ref: ref(metav1.Time{}.OpenAPIModelName()), + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.CatalogSource{}.OpenAPIModelName()), + }, + }, + }, }, }, }, + Required: []string{"metadata", "items"}, }, }, Dependencies: []string{ - metav1.Time{}.OpenAPIModelName()}, + v1alpha1.CatalogSource{}.OpenAPIModelName(), metav1.ListMeta{}.OpenAPIModelName()}, } } -func schema_api_pkg_operators_v1alpha1_ClusterServiceVersionSpec(ref common.ReferenceCallback) common.OpenAPIDefinition { +func schema_api_pkg_operators_v1alpha1_CatalogSourceSpec(ref common.ReferenceCallback) common.OpenAPIDefinition { return common.OpenAPIDefinition{ Schema: spec.Schema{ SchemaProps: spec.SchemaProps{ - Description: "ClusterServiceVersionSpec declarations tell OLM how to install an operator that can manage apps for a given version.", - Type: []string{"object"}, + Type: []string{"object"}, Properties: map[string]spec.Schema{ - "install": { + "sourceType": { SchemaProps: spec.SchemaProps{ - Default: map[string]interface{}{}, - Ref: ref("github.com/operator-framework/api/pkg/operators/v1alpha1.NamedInstallStrategy"), + Description: "SourceType is the type of source", + Default: "", + Type: []string{"string"}, + Format: "", }, }, - "version": { + "priority": { SchemaProps: spec.SchemaProps{ - Ref: ref("github.com/operator-framework/api/pkg/lib/version.OperatorVersion"), + Description: "Priority field assigns a weight to the catalog source to prioritize them so that it can be consumed by the dependency resolver. Usage: Higher weight indicates that this catalog source is preferred over lower weighted catalog sources during dependency resolution. The range of the priority value can go from positive to negative in the range of int32. The default value to a catalog source with unassigned priority would be 0. The catalog source with the same priority values will be ranked lexicographically based on its name.", + Type: []string{"integer"}, + Format: "int32", }, }, - "release": { + "configMap": { SchemaProps: spec.SchemaProps{ - Description: "release specifies the packaging version of the operator, defaulting to empty release is optional\n\nA ClusterServiceVersion's release field is used to distinguish between different builds of the same operator version This is useful for operators that need to make changes to the CSV which don't affect their functionality, for example: - to fix a typo in their description - to add/amend annotations or labels - to amend examples or documentation - to produce different builds for different environments\n\nIt is up to operator authors to determine the semantics of release versions they use for their operator. All release versions must conform to the semver prerelease format (dot-separated identifiers containing only alphanumerics and hyphens) and are limited to a maximum length of 20 characters.", - Ref: ref("github.com/operator-framework/api/pkg/lib/release.OperatorRelease"), + Description: "ConfigMap is the name of the ConfigMap to be used to back a configmap-server registry. Only used when SourceType = SourceTypeConfigmap or SourceTypeInternal.", + Type: []string{"string"}, + Format: "", }, }, - "maturity": { + "address": { SchemaProps: spec.SchemaProps{ - Type: []string{"string"}, - Format: "", + Description: "Address is a host that OLM can use to connect to a pre-existing registry. Format: : Only used when SourceType = SourceTypeGrpc. Ignored when the Image field is set.", + Type: []string{"string"}, + Format: "", }, }, - "customresourcedefinitions": { + "image": { SchemaProps: spec.SchemaProps{ - Default: map[string]interface{}{}, - Ref: ref("github.com/operator-framework/api/pkg/operators/v1alpha1.CustomResourceDefinitions"), + Description: "Image is an operator-registry container image to instantiate a registry-server with. Only used when SourceType = SourceTypeGrpc. If present, the address field is ignored.", + Type: []string{"string"}, + Format: "", }, }, - "apiservicedefinitions": { + "grpcPodConfig": { SchemaProps: spec.SchemaProps{ - Default: map[string]interface{}{}, - Ref: ref("github.com/operator-framework/api/pkg/operators/v1alpha1.APIServiceDefinitions"), + Description: "GrpcPodConfig exposes different overrides for the pod spec of the CatalogSource Pod. Only used when SourceType = SourceTypeGrpc and Image is set.", + Ref: ref(v1alpha1.GrpcPodConfig{}.OpenAPIModelName()), }, }, - "webhookdefinitions": { + "updateStrategy": { SchemaProps: spec.SchemaProps{ - Type: []string{"array"}, - Items: &spec.SchemaOrArray{ - Schema: &spec.Schema{ - SchemaProps: spec.SchemaProps{ - Default: map[string]interface{}{}, - Ref: ref("github.com/operator-framework/api/pkg/operators/v1alpha1.WebhookDescription"), - }, - }, - }, + Description: "UpdateStrategy defines how updated catalog source images can be discovered Consists of an interval that defines polling duration and an embedded strategy type", + Ref: ref(v1alpha1.UpdateStrategy{}.OpenAPIModelName()), }, }, - "nativeAPIs": { + "secrets": { SchemaProps: spec.SchemaProps{ - Type: []string{"array"}, + Description: "Secrets represent set of secrets that can be used to access the contents of the catalog. It is best to keep this list small, since each will need to be tried for every catalog entry.", + Type: []string{"array"}, Items: &spec.SchemaOrArray{ Schema: &spec.Schema{ SchemaProps: spec.SchemaProps{ - Default: map[string]interface{}{}, - Ref: ref(metav1.GroupVersionKind{}.OpenAPIModelName()), + Default: "", + Type: []string{"string"}, + Format: "", }, }, }, }, }, - "minKubeVersion": { - SchemaProps: spec.SchemaProps{ - Type: []string{"string"}, - Format: "", - }, - }, "displayName": { SchemaProps: spec.SchemaProps{ - Description: "The name of the operator in display format.", - Default: "", + Description: "Metadata", Type: []string{"string"}, Format: "", }, }, "description": { SchemaProps: spec.SchemaProps{ - Description: "Description of the operator. Can include the features, limitations or use-cases of the operator.", - Type: []string{"string"}, + Type: []string{"string"}, + Format: "", + }, + }, + "publisher": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "icon": { + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.Icon{}.OpenAPIModelName()), + }, + }, + }, + Required: []string{"sourceType"}, + }, + }, + Dependencies: []string{ + v1alpha1.GrpcPodConfig{}.OpenAPIModelName(), v1alpha1.Icon{}.OpenAPIModelName(), v1alpha1.UpdateStrategy{}.OpenAPIModelName()}, + } +} + +func schema_api_pkg_operators_v1alpha1_CatalogSourceStatus(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "message": { + SchemaProps: spec.SchemaProps{ + Description: "A human readable message indicating details about why the CatalogSource is in this condition.", + Type: []string{"string"}, Format: "", }, }, - "keywords": { + "reason": { SchemaProps: spec.SchemaProps{ - Description: "A list of keywords describing the operator.", - Type: []string{"array"}, - Items: &spec.SchemaOrArray{ - Schema: &spec.Schema{ - SchemaProps: spec.SchemaProps{ - Default: "", - Type: []string{"string"}, - Format: "", - }, - }, - }, + Description: "Reason is the reason the CatalogSource was transitioned to its current state.", + Type: []string{"string"}, + Format: "", }, }, - "maintainers": { + "latestImageRegistryPoll": { SchemaProps: spec.SchemaProps{ - Description: "A list of organizational entities maintaining the operator.", - Type: []string{"array"}, - Items: &spec.SchemaOrArray{ - Schema: &spec.Schema{ - SchemaProps: spec.SchemaProps{ - Default: map[string]interface{}{}, - Ref: ref("github.com/operator-framework/api/pkg/operators/v1alpha1.Maintainer"), - }, - }, - }, + Description: "The last time the CatalogSource image registry has been polled to ensure the image is up-to-date", + Ref: ref(metav1.Time{}.OpenAPIModelName()), }, }, - "provider": { + "configMapReference": { SchemaProps: spec.SchemaProps{ - Description: "The publishing entity behind the operator.", - Default: map[string]interface{}{}, - Ref: ref("github.com/operator-framework/api/pkg/operators/v1alpha1.AppLink"), + Description: "ConfigMapReference (deprecated) is the reference to the ConfigMap containing the catalog source's configuration, when the catalog source is a ConfigMap", + Ref: ref(v1alpha1.ConfigMapResourceReference{}.OpenAPIModelName()), }, }, - "links": { + "registryService": { SchemaProps: spec.SchemaProps{ - Description: "A list of links related to the operator.", - Type: []string{"array"}, - Items: &spec.SchemaOrArray{ - Schema: &spec.Schema{ - SchemaProps: spec.SchemaProps{ - Default: map[string]interface{}{}, - Ref: ref("github.com/operator-framework/api/pkg/operators/v1alpha1.AppLink"), - }, - }, - }, + Description: "RegistryService represents the current state of the GRPC service used to serve the catalog", + Ref: ref(v1alpha1.RegistryServiceStatus{}.OpenAPIModelName()), }, }, - "icon": { + "connectionState": { SchemaProps: spec.SchemaProps{ - Description: "The icon for this operator.", - Type: []string{"array"}, - Items: &spec.SchemaOrArray{ - Schema: &spec.Schema{ - SchemaProps: spec.SchemaProps{ - Default: map[string]interface{}{}, - Ref: ref("github.com/operator-framework/api/pkg/operators/v1alpha1.Icon"), - }, + Description: "ConnectionState represents the current state of the CatalogSource's connection to the registry", + Ref: ref(v1alpha1.GRPCConnectionState{}.OpenAPIModelName()), + }, + }, + "conditions": { + VendorExtensible: spec.VendorExtensible{ + Extensions: spec.Extensions{ + "x-kubernetes-list-map-keys": []interface{}{ + "type", }, + "x-kubernetes-list-type": "map", + "x-kubernetes-patch-merge-key": "type", + "x-kubernetes-patch-strategy": "merge", }, }, - }, - "installModes": { SchemaProps: spec.SchemaProps{ - Description: "InstallModes specify supported installation types", + Description: "Represents the state of a CatalogSource. Note that Message and Reason represent the original status information, which may be migrated to be conditions based in the future. Any new features introduced will use conditions.", Type: []string{"array"}, Items: &spec.SchemaOrArray{ Schema: &spec.Schema{ SchemaProps: spec.SchemaProps{ Default: map[string]interface{}{}, - Ref: ref("github.com/operator-framework/api/pkg/operators/v1alpha1.InstallMode"), + Ref: ref(metav1.Condition{}.OpenAPIModelName()), }, }, }, }, }, - "replaces": { + }, + }, + }, + Dependencies: []string{ + v1alpha1.ConfigMapResourceReference{}.OpenAPIModelName(), v1alpha1.GRPCConnectionState{}.OpenAPIModelName(), v1alpha1.RegistryServiceStatus{}.OpenAPIModelName(), metav1.Condition{}.OpenAPIModelName(), metav1.Time{}.OpenAPIModelName()}, + } +} + +func schema_api_pkg_operators_v1alpha1_CleanupSpec(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "enabled": { SchemaProps: spec.SchemaProps{ - Description: "The name of a CSV this one replaces. Should match the `metadata.Name` field of the old CSV.", - Type: []string{"string"}, - Format: "", + Default: false, + Type: []string{"boolean"}, + Format: "", }, }, - "labels": { + }, + Required: []string{"enabled"}, + }, + }, + } +} + +func schema_api_pkg_operators_v1alpha1_CleanupStatus(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "CleanupStatus represents information about the status of cleanup while a CSV is pending deletion", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "pendingDeletion": { SchemaProps: spec.SchemaProps{ - Description: "Map of string keys and values that can be used to organize and categorize (scope and select) objects.", - Type: []string{"object"}, - AdditionalProperties: &spec.SchemaOrBool{ - Allows: true, + Description: "PendingDeletion is the list of custom resource objects that are pending deletion and blocked on finalizers. This indicates the progress of cleanup that is blocking CSV deletion or operator uninstall.", + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ Schema: &spec.Schema{ SchemaProps: spec.SchemaProps{ - Default: "", - Type: []string{"string"}, - Format: "", + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.ResourceList{}.OpenAPIModelName()), }, }, }, }, }, - "annotations": { + }, + }, + }, + Dependencies: []string{ + v1alpha1.ResourceList{}.OpenAPIModelName()}, + } +} + +func schema_api_pkg_operators_v1alpha1_ClusterServiceVersion(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "ClusterServiceVersion is a Custom Resource of type `ClusterServiceVersionSpec`.", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "kind": { SchemaProps: spec.SchemaProps{ - Description: "Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata.", - Type: []string{"object"}, - AdditionalProperties: &spec.SchemaOrBool{ - Allows: true, - Schema: &spec.Schema{ - SchemaProps: spec.SchemaProps{ - Default: "", - Type: []string{"string"}, - Format: "", - }, - }, - }, + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", }, }, - "selector": { + "apiVersion": { SchemaProps: spec.SchemaProps{ - Description: "Label selector for related resources.", - Ref: ref(metav1.LabelSelector{}.OpenAPIModelName()), + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", }, }, - "cleanup": { + "metadata": { SchemaProps: spec.SchemaProps{ - Description: "Cleanup specifies the cleanup behaviour when the CSV gets deleted", - Default: map[string]interface{}{}, - Ref: ref("github.com/operator-framework/api/pkg/operators/v1alpha1.CleanupSpec"), + Default: map[string]interface{}{}, + Ref: ref(metav1.ObjectMeta{}.OpenAPIModelName()), }, }, - "skips": { + "spec": { SchemaProps: spec.SchemaProps{ - Description: "The name(s) of one or more CSV(s) that should be skipped in the upgrade graph. Should match the `metadata.Name` field of the CSV that should be skipped. This field is only used during catalog creation and plays no part in cluster runtime.", - Type: []string{"array"}, - Items: &spec.SchemaOrArray{ - Schema: &spec.Schema{ - SchemaProps: spec.SchemaProps{ - Default: "", - Type: []string{"string"}, - Format: "", - }, - }, - }, + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.ClusterServiceVersionSpec{}.OpenAPIModelName()), }, }, - "relatedImages": { + "status": { SchemaProps: spec.SchemaProps{ - Description: "List any related images, or other container images that your Operator might require to perform their functions. This list should also include operand images as well. All image references should be specified by digest (SHA) and not by tag. This field is only used during catalog creation and plays no part in cluster runtime.", - Type: []string{"array"}, - Items: &spec.SchemaOrArray{ - Schema: &spec.Schema{ - SchemaProps: spec.SchemaProps{ - Default: map[string]interface{}{}, - Ref: ref("github.com/operator-framework/api/pkg/operators/v1alpha1.RelatedImage"), - }, - }, - }, + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.ClusterServiceVersionStatus{}.OpenAPIModelName()), }, }, }, - Required: []string{"install", "displayName"}, + Required: []string{"metadata", "spec"}, }, }, Dependencies: []string{ - "github.com/operator-framework/api/pkg/lib/release.OperatorRelease", "github.com/operator-framework/api/pkg/lib/version.OperatorVersion", "github.com/operator-framework/api/pkg/operators/v1alpha1.APIServiceDefinitions", "github.com/operator-framework/api/pkg/operators/v1alpha1.AppLink", "github.com/operator-framework/api/pkg/operators/v1alpha1.CleanupSpec", "github.com/operator-framework/api/pkg/operators/v1alpha1.CustomResourceDefinitions", "github.com/operator-framework/api/pkg/operators/v1alpha1.Icon", "github.com/operator-framework/api/pkg/operators/v1alpha1.InstallMode", "github.com/operator-framework/api/pkg/operators/v1alpha1.Maintainer", "github.com/operator-framework/api/pkg/operators/v1alpha1.NamedInstallStrategy", "github.com/operator-framework/api/pkg/operators/v1alpha1.RelatedImage", "github.com/operator-framework/api/pkg/operators/v1alpha1.WebhookDescription", metav1.GroupVersionKind{}.OpenAPIModelName(), metav1.LabelSelector{}.OpenAPIModelName()}, + v1alpha1.ClusterServiceVersionSpec{}.OpenAPIModelName(), v1alpha1.ClusterServiceVersionStatus{}.OpenAPIModelName(), metav1.ObjectMeta{}.OpenAPIModelName()}, } } -func schema_api_pkg_operators_v1alpha1_ClusterServiceVersionStatus(ref common.ReferenceCallback) common.OpenAPIDefinition { +func schema_api_pkg_operators_v1alpha1_ClusterServiceVersionCondition(ref common.ReferenceCallback) common.OpenAPIDefinition { return common.OpenAPIDefinition{ Schema: spec.Schema{ SchemaProps: spec.SchemaProps{ - Description: "ClusterServiceVersionStatus represents information about the status of a CSV. Status may trail the actual state of a system.", + Description: "Conditions appear in the status as a record of state transitions on the ClusterServiceVersion", Type: []string{"object"}, Properties: map[string]spec.Schema{ "phase": { SchemaProps: spec.SchemaProps{ - Description: "Current condition of the ClusterServiceVersion", + Description: "Condition of the ClusterServiceVersion", Type: []string{"string"}, Format: "", }, @@ -911,675 +1091,2230 @@ func schema_api_pkg_operators_v1alpha1_ClusterServiceVersionStatus(ref common.Re Ref: ref(metav1.Time{}.OpenAPIModelName()), }, }, - "conditions": { + }, + }, + }, + Dependencies: []string{ + metav1.Time{}.OpenAPIModelName()}, + } +} + +func schema_api_pkg_operators_v1alpha1_ClusterServiceVersionList(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "ClusterServiceVersionList represents a list of ClusterServiceVersions.", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "kind": { SchemaProps: spec.SchemaProps{ - Description: "List of conditions, a history of state transitions", - Type: []string{"array"}, - Items: &spec.SchemaOrArray{ - Schema: &spec.Schema{ - SchemaProps: spec.SchemaProps{ - Default: map[string]interface{}{}, - Ref: ref("github.com/operator-framework/api/pkg/operators/v1alpha1.ClusterServiceVersionCondition"), - }, - }, - }, + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", }, }, - "requirementStatus": { + "apiVersion": { SchemaProps: spec.SchemaProps{ - Description: "The status of each requirement for this CSV", - Type: []string{"array"}, + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, + "metadata": { + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(metav1.ListMeta{}.OpenAPIModelName()), + }, + }, + "items": { + SchemaProps: spec.SchemaProps{ + Type: []string{"array"}, Items: &spec.SchemaOrArray{ Schema: &spec.Schema{ SchemaProps: spec.SchemaProps{ Default: map[string]interface{}{}, - Ref: ref("github.com/operator-framework/api/pkg/operators/v1alpha1.RequirementStatus"), + Ref: ref(v1alpha1.ClusterServiceVersion{}.OpenAPIModelName()), }, }, }, }, }, - "certsLastUpdated": { + }, + Required: []string{"metadata", "items"}, + }, + }, + Dependencies: []string{ + v1alpha1.ClusterServiceVersion{}.OpenAPIModelName(), metav1.ListMeta{}.OpenAPIModelName()}, + } +} + +func schema_api_pkg_operators_v1alpha1_ClusterServiceVersionSpec(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "ClusterServiceVersionSpec declarations tell OLM how to install an operator that can manage apps for a given version.", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "install": { SchemaProps: spec.SchemaProps{ - Description: "Last time the owned APIService certs were updated", - Ref: ref(metav1.Time{}.OpenAPIModelName()), + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.NamedInstallStrategy{}.OpenAPIModelName()), }, }, - "certsRotateAt": { + "version": { SchemaProps: spec.SchemaProps{ - Description: "Time the owned APIService certs will rotate next", - Ref: ref(metav1.Time{}.OpenAPIModelName()), + Ref: ref(version.OperatorVersion{}.OpenAPIModelName()), + }, + }, + "release": { + SchemaProps: spec.SchemaProps{ + Description: "release specifies the packaging version of the operator, defaulting to empty release is optional\n\nA ClusterServiceVersion's release field is used to distinguish between different builds of the same operator version This is useful for operators that need to make changes to the CSV which don't affect their functionality, for example: - to fix a typo in their description - to add/amend annotations or labels - to amend examples or documentation - to produce different builds for different environments\n\nIt is up to operator authors to determine the semantics of release versions they use for their operator. All release versions must conform to the semver prerelease format (dot-separated identifiers containing only alphanumerics and hyphens) and are limited to a maximum length of 20 characters.", + Ref: ref("github.com/operator-framework/api/pkg/lib/release.OperatorRelease"), + }, + }, + "maturity": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "customresourcedefinitions": { + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.CustomResourceDefinitions{}.OpenAPIModelName()), + }, + }, + "apiservicedefinitions": { + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.APIServiceDefinitions{}.OpenAPIModelName()), + }, + }, + "webhookdefinitions": { + SchemaProps: spec.SchemaProps{ + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.WebhookDescription{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + "nativeAPIs": { + SchemaProps: spec.SchemaProps{ + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(metav1.GroupVersionKind{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + "minKubeVersion": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "displayName": { + SchemaProps: spec.SchemaProps{ + Description: "The name of the operator in display format.", + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "description": { + SchemaProps: spec.SchemaProps{ + Description: "Description of the operator. Can include the features, limitations or use-cases of the operator.", + Type: []string{"string"}, + Format: "", + }, + }, + "keywords": { + SchemaProps: spec.SchemaProps{ + Description: "A list of keywords describing the operator.", + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + }, + }, + }, + "maintainers": { + SchemaProps: spec.SchemaProps{ + Description: "A list of organizational entities maintaining the operator.", + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.Maintainer{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + "provider": { + SchemaProps: spec.SchemaProps{ + Description: "The publishing entity behind the operator.", + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.AppLink{}.OpenAPIModelName()), + }, + }, + "links": { + SchemaProps: spec.SchemaProps{ + Description: "A list of links related to the operator.", + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.AppLink{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + "icon": { + SchemaProps: spec.SchemaProps{ + Description: "The icon for this operator.", + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.Icon{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + "installModes": { + SchemaProps: spec.SchemaProps{ + Description: "InstallModes specify supported installation types", + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.InstallMode{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + "replaces": { + SchemaProps: spec.SchemaProps{ + Description: "The name of a CSV this one replaces. Should match the `metadata.Name` field of the old CSV.", + Type: []string{"string"}, + Format: "", + }, + }, + "labels": { + SchemaProps: spec.SchemaProps{ + Description: "Map of string keys and values that can be used to organize and categorize (scope and select) objects.", + Type: []string{"object"}, + AdditionalProperties: &spec.SchemaOrBool{ + Allows: true, + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + }, + }, + }, + "annotations": { + SchemaProps: spec.SchemaProps{ + Description: "Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata.", + Type: []string{"object"}, + AdditionalProperties: &spec.SchemaOrBool{ + Allows: true, + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + }, + }, + }, + "selector": { + SchemaProps: spec.SchemaProps{ + Description: "Label selector for related resources.", + Ref: ref(metav1.LabelSelector{}.OpenAPIModelName()), }, }, "cleanup": { SchemaProps: spec.SchemaProps{ - Description: "CleanupStatus represents information about the status of cleanup while a CSV is pending deletion", + Description: "Cleanup specifies the cleanup behaviour when the CSV gets deleted", Default: map[string]interface{}{}, - Ref: ref("github.com/operator-framework/api/pkg/operators/v1alpha1.CleanupStatus"), + Ref: ref(v1alpha1.CleanupSpec{}.OpenAPIModelName()), + }, + }, + "skips": { + SchemaProps: spec.SchemaProps{ + Description: "The name(s) of one or more CSV(s) that should be skipped in the upgrade graph. Should match the `metadata.Name` field of the CSV that should be skipped. This field is only used during catalog creation and plays no part in cluster runtime.", + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + }, + }, + }, + "relatedImages": { + SchemaProps: spec.SchemaProps{ + Description: "List any related images, or other container images that your Operator might require to perform their functions. This list should also include operand images as well. All image references should be specified by digest (SHA) and not by tag. This field is only used during catalog creation and plays no part in cluster runtime.", + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.RelatedImage{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + }, + Required: []string{"install", "displayName"}, + }, + }, + Dependencies: []string{ + "github.com/operator-framework/api/pkg/lib/release.OperatorRelease", version.OperatorVersion{}.OpenAPIModelName(), v1alpha1.APIServiceDefinitions{}.OpenAPIModelName(), v1alpha1.AppLink{}.OpenAPIModelName(), v1alpha1.CleanupSpec{}.OpenAPIModelName(), v1alpha1.CustomResourceDefinitions{}.OpenAPIModelName(), v1alpha1.Icon{}.OpenAPIModelName(), v1alpha1.InstallMode{}.OpenAPIModelName(), v1alpha1.Maintainer{}.OpenAPIModelName(), v1alpha1.NamedInstallStrategy{}.OpenAPIModelName(), v1alpha1.RelatedImage{}.OpenAPIModelName(), v1alpha1.WebhookDescription{}.OpenAPIModelName(), metav1.GroupVersionKind{}.OpenAPIModelName(), metav1.LabelSelector{}.OpenAPIModelName()}, + } +} + +func schema_api_pkg_operators_v1alpha1_ClusterServiceVersionStatus(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "ClusterServiceVersionStatus represents information about the status of a CSV. Status may trail the actual state of a system.", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "phase": { + SchemaProps: spec.SchemaProps{ + Description: "Current condition of the ClusterServiceVersion", + Type: []string{"string"}, + Format: "", + }, + }, + "message": { + SchemaProps: spec.SchemaProps{ + Description: "A human readable message indicating details about why the ClusterServiceVersion is in this condition.", + Type: []string{"string"}, + Format: "", + }, + }, + "reason": { + SchemaProps: spec.SchemaProps{ + Description: "A brief CamelCase message indicating details about why the ClusterServiceVersion is in this state. e.g. 'RequirementsNotMet'", + Type: []string{"string"}, + Format: "", + }, + }, + "lastUpdateTime": { + SchemaProps: spec.SchemaProps{ + Description: "Last time we updated the status", + Ref: ref(metav1.Time{}.OpenAPIModelName()), + }, + }, + "lastTransitionTime": { + SchemaProps: spec.SchemaProps{ + Description: "Last time the status transitioned from one status to another.", + Ref: ref(metav1.Time{}.OpenAPIModelName()), + }, + }, + "conditions": { + SchemaProps: spec.SchemaProps{ + Description: "List of conditions, a history of state transitions", + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.ClusterServiceVersionCondition{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + "requirementStatus": { + SchemaProps: spec.SchemaProps{ + Description: "The status of each requirement for this CSV", + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.RequirementStatus{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + "certsLastUpdated": { + SchemaProps: spec.SchemaProps{ + Description: "Last time the owned APIService certs were updated", + Ref: ref(metav1.Time{}.OpenAPIModelName()), + }, + }, + "certsRotateAt": { + SchemaProps: spec.SchemaProps{ + Description: "Time the owned APIService certs will rotate next", + Ref: ref(metav1.Time{}.OpenAPIModelName()), + }, + }, + "cleanup": { + SchemaProps: spec.SchemaProps{ + Description: "CleanupStatus represents information about the status of cleanup while a CSV is pending deletion", + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.CleanupStatus{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + Dependencies: []string{ + v1alpha1.CleanupStatus{}.OpenAPIModelName(), v1alpha1.ClusterServiceVersionCondition{}.OpenAPIModelName(), v1alpha1.RequirementStatus{}.OpenAPIModelName(), metav1.Time{}.OpenAPIModelName()}, + } +} + +func schema_api_pkg_operators_v1alpha1_ConfigMapResourceReference(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "name": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "namespace": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "uid": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "resourceVersion": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "lastUpdateTime": { + SchemaProps: spec.SchemaProps{ + Ref: ref(metav1.Time{}.OpenAPIModelName()), + }, + }, + }, + Required: []string{"name", "namespace"}, + }, + }, + Dependencies: []string{ + metav1.Time{}.OpenAPIModelName()}, + } +} + +func schema_api_pkg_operators_v1alpha1_CustomResourceDefinitions(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "CustomResourceDefinitions declares all of the CRDs managed or required by an operator being ran by ClusterServiceVersion.\n\nIf the CRD is present in the Owned list, it is implicitly required.", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "owned": { + SchemaProps: spec.SchemaProps{ + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.CRDDescription{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + "required": { + SchemaProps: spec.SchemaProps{ + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.CRDDescription{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + }, + }, + }, + Dependencies: []string{ + v1alpha1.CRDDescription{}.OpenAPIModelName()}, + } +} + +func schema_api_pkg_operators_v1alpha1_DependentStatus(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "DependentStatus is the status for a dependent requirement (to prevent infinite nesting)", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "group": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "version": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "kind": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "status": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "uuid": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "message": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + }, + Required: []string{"group", "version", "kind", "status"}, + }, + }, + } +} + +func schema_api_pkg_operators_v1alpha1_ExtractContentConfig(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "ExtractContentConfig configures context extraction from a file-based catalog index image.", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "cacheDir": { + SchemaProps: spec.SchemaProps{ + Description: "CacheDir is the (optional) directory storing the pre-calculated API cache.", + Type: []string{"string"}, + Format: "", + }, + }, + "catalogDir": { + SchemaProps: spec.SchemaProps{ + Description: "CatalogDir is the directory storing the file-based catalog contents.", + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + }, + Required: []string{"catalogDir"}, + }, + }, + } +} + +func schema_api_pkg_operators_v1alpha1_GRPCConnectionState(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "address": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "lastObservedState": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "lastConnect": { + SchemaProps: spec.SchemaProps{ + Ref: ref(metav1.Time{}.OpenAPIModelName()), + }, + }, + }, + Required: []string{"lastObservedState"}, + }, + }, + Dependencies: []string{ + metav1.Time{}.OpenAPIModelName()}, + } +} + +func schema_api_pkg_operators_v1alpha1_GrpcPodConfig(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "GrpcPodConfig contains configuration specified for a catalog source", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "nodeSelector": { + SchemaProps: spec.SchemaProps{ + Description: "NodeSelector is a selector which must be true for the pod to fit on a node. Selector which must match a node's labels for the pod to be scheduled on that node.", + Type: []string{"object"}, + AdditionalProperties: &spec.SchemaOrBool{ + Allows: true, + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + }, + }, + }, + "tolerations": { + SchemaProps: spec.SchemaProps{ + Description: "Tolerations are the catalog source's pod's tolerations.", + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref("k8s.io/api/core/v1.Toleration"), + }, + }, + }, + }, + }, + "affinity": { + SchemaProps: spec.SchemaProps{ + Description: "Affinity is the catalog source's pod's affinity.", + Ref: ref("k8s.io/api/core/v1.Affinity"), + }, + }, + "priorityClassName": { + SchemaProps: spec.SchemaProps{ + Description: "If specified, indicates the pod's priority. If not specified, the pod priority will be default or zero if there is no default.", + Type: []string{"string"}, + Format: "", + }, + }, + "securityContextConfig": { + SchemaProps: spec.SchemaProps{ + Description: "SecurityContextConfig can be one of `legacy` or `restricted`. The CatalogSource's pod is either injected with the right pod.spec.securityContext and pod.spec.container[*].securityContext values to allow the pod to run in Pod Security Admission (PSA) `restricted` mode, or doesn't set these values at all, in which case the pod can only be run in PSA `baseline` or `privileged` namespaces. If the SecurityContextConfig is unspecified, the mode will be determined by the namespace's PSA configuration. If the namespace is enforcing `restricted` mode, then the pod will be configured as if `restricted` was specified. Otherwise, it will be configured as if `legacy` was specified. Specifying a value other than `legacy` or `restricted` result in a validation error. When using older catalog images, which can not run in `restricted` mode, the SecurityContextConfig should be set to `legacy`.\n\nMore information about PSA can be found here: https://kubernetes.io/docs/concepts/security/pod-security-admission/", + Type: []string{"string"}, + Format: "", + }, + }, + "memoryTarget": { + SchemaProps: spec.SchemaProps{ + Description: "MemoryTarget configures the $GOMEMLIMIT value for the gRPC catalog Pod. This is a soft memory limit for the server, which the runtime will attempt to meet but makes no guarantees that it will do so. If this value is set, the Pod will have the following modifications made to the container running the server: - the $GOMEMLIMIT environment variable will be set to this value in bytes - the memory request will be set to this value\n\nThis field should be set if it's desired to reduce the footprint of a catalog server as much as possible, or if a catalog being served is very large and needs more than the default allocation. If your index image has a file- system cache, determine a good approximation for this value by doubling the size of the package cache at /tmp/cache/cache/packages.json in the index image.\n\nThis field is best-effort; if unset, no default will be used and no Pod memory limit or $GOMEMLIMIT value will be set.", + Ref: ref(resource.Quantity{}.OpenAPIModelName()), + }, + }, + "extractContent": { + SchemaProps: spec.SchemaProps{ + Description: "ExtractContent configures the gRPC catalog Pod to extract catalog metadata from the provided index image and use a well-known version of the `opm` server to expose it. The catalog index image that this CatalogSource is configured to use *must* be using the file-based catalogs in order to utilize this feature.", + Ref: ref(v1alpha1.ExtractContentConfig{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + Dependencies: []string{ + v1alpha1.ExtractContentConfig{}.OpenAPIModelName(), "k8s.io/api/core/v1.Affinity", "k8s.io/api/core/v1.Toleration", resource.Quantity{}.OpenAPIModelName()}, + } +} + +func schema_api_pkg_operators_v1alpha1_Icon(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "base64data": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "mediatype": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + }, + Required: []string{"base64data", "mediatype"}, + }, + }, + } +} + +func schema_api_pkg_operators_v1alpha1_InstallMode(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "InstallMode associates an InstallModeType with a flag representing if the CSV supports it", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "type": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "supported": { + SchemaProps: spec.SchemaProps{ + Default: false, + Type: []string{"boolean"}, + Format: "", + }, + }, + }, + Required: []string{"type", "supported"}, + }, + }, + } +} + +func schema_api_pkg_operators_v1alpha1_InstallPlan(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "InstallPlan defines the installation of a set of operators.", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, + "metadata": { + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(metav1.ObjectMeta{}.OpenAPIModelName()), + }, + }, + "spec": { + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.InstallPlanSpec{}.OpenAPIModelName()), + }, + }, + "status": { + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.InstallPlanStatus{}.OpenAPIModelName()), + }, + }, + }, + Required: []string{"metadata", "spec"}, + }, + }, + Dependencies: []string{ + v1alpha1.InstallPlanSpec{}.OpenAPIModelName(), v1alpha1.InstallPlanStatus{}.OpenAPIModelName(), metav1.ObjectMeta{}.OpenAPIModelName()}, + } +} + +func schema_api_pkg_operators_v1alpha1_InstallPlanCondition(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "InstallPlanCondition represents the overall status of the execution of an InstallPlan.", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "type": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "status": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "lastUpdateTime": { + SchemaProps: spec.SchemaProps{ + Description: "True, False, or Unknown", + Ref: ref(metav1.Time{}.OpenAPIModelName()), + }, + }, + "lastTransitionTime": { + SchemaProps: spec.SchemaProps{ + Ref: ref(metav1.Time{}.OpenAPIModelName()), + }, + }, + "reason": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "message": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + }, + }, + }, + Dependencies: []string{ + metav1.Time{}.OpenAPIModelName()}, + } +} + +func schema_api_pkg_operators_v1alpha1_InstallPlanList(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "InstallPlanList is a list of InstallPlan resources.", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, + "metadata": { + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(metav1.ListMeta{}.OpenAPIModelName()), + }, + }, + "items": { + SchemaProps: spec.SchemaProps{ + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.InstallPlan{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + }, + Required: []string{"metadata", "items"}, + }, + }, + Dependencies: []string{ + v1alpha1.InstallPlan{}.OpenAPIModelName(), metav1.ListMeta{}.OpenAPIModelName()}, + } +} + +func schema_api_pkg_operators_v1alpha1_InstallPlanReference(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "kind": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "name": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "uuid": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + }, + Required: []string{"apiVersion", "kind", "name", "uuid"}, + }, + }, + } +} + +func schema_api_pkg_operators_v1alpha1_InstallPlanSpec(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "InstallPlanSpec defines a set of Application resources to be installed", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "source": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "sourceNamespace": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "clusterServiceVersionNames": { + SchemaProps: spec.SchemaProps{ + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + }, + }, + }, + "approval": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "approved": { + SchemaProps: spec.SchemaProps{ + Default: false, + Type: []string{"boolean"}, + Format: "", + }, + }, + "generation": { + SchemaProps: spec.SchemaProps{ + Type: []string{"integer"}, + Format: "int32", + }, + }, + }, + Required: []string{"clusterServiceVersionNames", "approval", "approved"}, + }, + }, + } +} + +func schema_api_pkg_operators_v1alpha1_InstallPlanStatus(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "InstallPlanStatus represents the information about the status of steps required to complete installation.\n\nStatus may trail the actual state of a system.", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "phase": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "conditions": { + SchemaProps: spec.SchemaProps{ + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.InstallPlanCondition{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + "catalogSources": { + SchemaProps: spec.SchemaProps{ + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + }, + }, + }, + "plan": { + SchemaProps: spec.SchemaProps{ + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Ref: ref(v1alpha1.Step{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + "bundleLookups": { + SchemaProps: spec.SchemaProps{ + Description: "BundleLookups is the set of in-progress requests to pull and unpackage bundle content to the cluster.", + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.BundleLookup{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + "attenuatedServiceAccountRef": { + SchemaProps: spec.SchemaProps{ + Description: "AttenuatedServiceAccountRef references the service account that is used to do scoped operator install.", + Ref: ref("k8s.io/api/core/v1.ObjectReference"), + }, + }, + "startTime": { + SchemaProps: spec.SchemaProps{ + Description: "StartTime is the time when the controller began applying the resources listed in the plan to the cluster.", + Ref: ref(metav1.Time{}.OpenAPIModelName()), + }, + }, + "message": { + SchemaProps: spec.SchemaProps{ + Description: "Message is a human-readable message containing detailed information that may be important to understanding why the plan has its current status.", + Type: []string{"string"}, + Format: "", + }, + }, + }, + Required: []string{"phase", "catalogSources"}, + }, + }, + Dependencies: []string{ + v1alpha1.BundleLookup{}.OpenAPIModelName(), v1alpha1.InstallPlanCondition{}.OpenAPIModelName(), v1alpha1.Step{}.OpenAPIModelName(), "k8s.io/api/core/v1.ObjectReference", metav1.Time{}.OpenAPIModelName()}, + } +} + +func schema_api_pkg_operators_v1alpha1_Maintainer(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "name": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "email": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + }, + }, + }, + } +} + +func schema_api_pkg_operators_v1alpha1_NamedInstallStrategy(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "NamedInstallStrategy represents the block of an ClusterServiceVersion resource where the install strategy is specified.", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "strategy": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "spec": { + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.StrategyDetailsDeployment{}.OpenAPIModelName()), + }, + }, + }, + Required: []string{"strategy"}, + }, + }, + Dependencies: []string{ + v1alpha1.StrategyDetailsDeployment{}.OpenAPIModelName()}, + } +} + +func schema_api_pkg_operators_v1alpha1_RegistryPoll(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "interval": { + SchemaProps: spec.SchemaProps{ + Description: "Interval is used to determine the time interval between checks of the latest catalog source version. The catalog operator polls to see if a new version of the catalog source is available. If available, the latest image is pulled and gRPC traffic is directed to the latest catalog source.", + Type: []string{"string"}, + Format: "", + }, + }, + }, + }, + }, + } +} + +func schema_api_pkg_operators_v1alpha1_RegistryServiceStatus(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "protocol": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "serviceName": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "serviceNamespace": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "port": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "createdAt": { + SchemaProps: spec.SchemaProps{ + Ref: ref(metav1.Time{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + Dependencies: []string{ + metav1.Time{}.OpenAPIModelName()}, + } +} + +func schema_api_pkg_operators_v1alpha1_RelatedImage(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "name": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "image": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + }, + Required: []string{"name", "image"}, + }, + }, + } +} + +func schema_api_pkg_operators_v1alpha1_RequirementStatus(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "group": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "version": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "kind": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "name": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "status": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "message": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "uuid": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "dependents": { + SchemaProps: spec.SchemaProps{ + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.DependentStatus{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + }, + Required: []string{"group", "version", "kind", "name", "status", "message"}, + }, + }, + Dependencies: []string{ + v1alpha1.DependentStatus{}.OpenAPIModelName()}, + } +} + +func schema_api_pkg_operators_v1alpha1_ResourceInstance(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "name": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "namespace": { + SchemaProps: spec.SchemaProps{ + Description: "Namespace can be empty for cluster-scoped resources", + Type: []string{"string"}, + Format: "", + }, + }, + }, + Required: []string{"name"}, + }, + }, + } +} + +func schema_api_pkg_operators_v1alpha1_ResourceList(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "ResourceList represents a list of resources which are of the same Group/Kind", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "group": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "kind": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "instances": { + SchemaProps: spec.SchemaProps{ + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.ResourceInstance{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + }, + Required: []string{"group", "kind", "instances"}, + }, + }, + Dependencies: []string{ + v1alpha1.ResourceInstance{}.OpenAPIModelName()}, + } +} + +func schema_api_pkg_operators_v1alpha1_SpecDescriptor(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "SpecDescriptor describes a field in a spec block of a CRD so that OLM can consume it", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "path": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "displayName": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "description": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "x-descriptors": { + SchemaProps: spec.SchemaProps{ + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + }, + }, + }, + "value": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "byte", + }, + }, + }, + Required: []string{"path"}, + }, + }, + } +} + +func schema_api_pkg_operators_v1alpha1_StatusDescriptor(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "StatusDescriptor describes a field in a status block of a CRD so that OLM can consume it", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "path": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "displayName": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "description": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "x-descriptors": { + SchemaProps: spec.SchemaProps{ + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + }, + }, + }, + "value": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "byte", + }, + }, + }, + Required: []string{"path"}, + }, + }, + } +} + +func schema_api_pkg_operators_v1alpha1_Step(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "Step represents the status of an individual step in an InstallPlan.", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "resolving": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "resource": { + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.StepResource{}.OpenAPIModelName()), + }, + }, + "optional": { + SchemaProps: spec.SchemaProps{ + Type: []string{"boolean"}, + Format: "", + }, + }, + "status": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + }, + Required: []string{"resolving", "resource", "status"}, + }, + }, + Dependencies: []string{ + v1alpha1.StepResource{}.OpenAPIModelName()}, + } +} + +func schema_api_pkg_operators_v1alpha1_StepResource(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "StepResource represents the status of a resource to be tracked by an InstallPlan.", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "sourceName": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "sourceNamespace": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "group": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "version": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "kind": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "name": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "manifest": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + }, + Required: []string{"sourceName", "sourceNamespace", "group", "version", "kind", "name"}, + }, + }, + } +} + +func schema_api_pkg_operators_v1alpha1_StrategyDeploymentPermissions(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "StrategyDeploymentPermissions describe the rbac rules and service account needed by the install strategy", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "serviceAccountName": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "rules": { + SchemaProps: spec.SchemaProps{ + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref("k8s.io/api/rbac/v1.PolicyRule"), + }, + }, + }, + }, + }, + }, + Required: []string{"serviceAccountName", "rules"}, + }, + }, + Dependencies: []string{ + "k8s.io/api/rbac/v1.PolicyRule"}, + } +} + +func schema_api_pkg_operators_v1alpha1_StrategyDeploymentSpec(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "StrategyDeploymentSpec contains the name, spec and labels for the deployment ALM should create", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "name": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "spec": { + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref("k8s.io/api/apps/v1.DeploymentSpec"), + }, + }, + "label": { + SchemaProps: spec.SchemaProps{ + Type: []string{"object"}, + AdditionalProperties: &spec.SchemaOrBool{ + Allows: true, + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + }, }, }, }, + Required: []string{"name", "spec"}, }, }, Dependencies: []string{ - "github.com/operator-framework/api/pkg/operators/v1alpha1.CleanupStatus", "github.com/operator-framework/api/pkg/operators/v1alpha1.ClusterServiceVersionCondition", "github.com/operator-framework/api/pkg/operators/v1alpha1.RequirementStatus", metav1.Time{}.OpenAPIModelName()}, + "k8s.io/api/apps/v1.DeploymentSpec"}, } } -func schema_api_pkg_operators_v1alpha1_CustomResourceDefinitions(ref common.ReferenceCallback) common.OpenAPIDefinition { +func schema_api_pkg_operators_v1alpha1_StrategyDetailsDeployment(ref common.ReferenceCallback) common.OpenAPIDefinition { return common.OpenAPIDefinition{ Schema: spec.Schema{ SchemaProps: spec.SchemaProps{ - Description: "CustomResourceDefinitions declares all of the CRDs managed or required by an operator being ran by ClusterServiceVersion.\n\nIf the CRD is present in the Owned list, it is implicitly required.", + Description: "StrategyDetailsDeployment represents the parsed details of a Deployment InstallStrategy.", Type: []string{"object"}, Properties: map[string]spec.Schema{ - "owned": { + "deployments": { SchemaProps: spec.SchemaProps{ Type: []string{"array"}, Items: &spec.SchemaOrArray{ Schema: &spec.Schema{ SchemaProps: spec.SchemaProps{ Default: map[string]interface{}{}, - Ref: ref("github.com/operator-framework/api/pkg/operators/v1alpha1.CRDDescription"), + Ref: ref(v1alpha1.StrategyDeploymentSpec{}.OpenAPIModelName()), }, }, }, }, }, - "required": { + "permissions": { + SchemaProps: spec.SchemaProps{ + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.StrategyDeploymentPermissions{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + "clusterPermissions": { SchemaProps: spec.SchemaProps{ Type: []string{"array"}, Items: &spec.SchemaOrArray{ Schema: &spec.Schema{ SchemaProps: spec.SchemaProps{ Default: map[string]interface{}{}, - Ref: ref("github.com/operator-framework/api/pkg/operators/v1alpha1.CRDDescription"), + Ref: ref(v1alpha1.StrategyDeploymentPermissions{}.OpenAPIModelName()), }, }, }, }, }, }, + Required: []string{"deployments"}, }, }, Dependencies: []string{ - "github.com/operator-framework/api/pkg/operators/v1alpha1.CRDDescription"}, + v1alpha1.StrategyDeploymentPermissions{}.OpenAPIModelName(), v1alpha1.StrategyDeploymentSpec{}.OpenAPIModelName()}, } } -func schema_api_pkg_operators_v1alpha1_DependentStatus(ref common.ReferenceCallback) common.OpenAPIDefinition { +func schema_api_pkg_operators_v1alpha1_Subscription(ref common.ReferenceCallback) common.OpenAPIDefinition { return common.OpenAPIDefinition{ Schema: spec.Schema{ SchemaProps: spec.SchemaProps{ - Description: "DependentStatus is the status for a dependent requirement (to prevent infinite nesting)", + Description: "Subscription keeps operators up to date by tracking changes to Catalogs.", Type: []string{"object"}, Properties: map[string]spec.Schema{ - "group": { - SchemaProps: spec.SchemaProps{ - Default: "", - Type: []string{"string"}, - Format: "", - }, - }, - "version": { + "kind": { SchemaProps: spec.SchemaProps{ - Default: "", - Type: []string{"string"}, - Format: "", + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", }, }, - "kind": { + "apiVersion": { SchemaProps: spec.SchemaProps{ - Default: "", - Type: []string{"string"}, - Format: "", + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", }, }, - "status": { + "metadata": { SchemaProps: spec.SchemaProps{ - Default: "", - Type: []string{"string"}, - Format: "", + Default: map[string]interface{}{}, + Ref: ref(metav1.ObjectMeta{}.OpenAPIModelName()), }, }, - "uuid": { + "spec": { SchemaProps: spec.SchemaProps{ - Type: []string{"string"}, - Format: "", + Ref: ref(v1alpha1.SubscriptionSpec{}.OpenAPIModelName()), }, }, - "message": { + "status": { SchemaProps: spec.SchemaProps{ - Type: []string{"string"}, - Format: "", + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.SubscriptionStatus{}.OpenAPIModelName()), }, }, }, - Required: []string{"group", "version", "kind", "status"}, + Required: []string{"metadata", "spec"}, }, }, + Dependencies: []string{ + v1alpha1.SubscriptionSpec{}.OpenAPIModelName(), v1alpha1.SubscriptionStatus{}.OpenAPIModelName(), metav1.ObjectMeta{}.OpenAPIModelName()}, } } -func schema_api_pkg_operators_v1alpha1_Icon(ref common.ReferenceCallback) common.OpenAPIDefinition { +func schema_api_pkg_operators_v1alpha1_SubscriptionCatalogHealth(ref common.ReferenceCallback) common.OpenAPIDefinition { return common.OpenAPIDefinition{ Schema: spec.Schema{ SchemaProps: spec.SchemaProps{ - Type: []string{"object"}, + Description: "SubscriptionCatalogHealth describes the health of a CatalogSource the Subscription knows about.", + Type: []string{"object"}, Properties: map[string]spec.Schema{ - "base64data": { + "catalogSourceRef": { SchemaProps: spec.SchemaProps{ - Default: "", - Type: []string{"string"}, - Format: "", + Description: "CatalogSourceRef is a reference to a CatalogSource.", + Ref: ref("k8s.io/api/core/v1.ObjectReference"), }, }, - "mediatype": { + "lastUpdated": { SchemaProps: spec.SchemaProps{ - Default: "", - Type: []string{"string"}, - Format: "", + Description: "LastUpdated represents the last time that the CatalogSourceHealth changed", + Ref: ref(metav1.Time{}.OpenAPIModelName()), + }, + }, + "healthy": { + SchemaProps: spec.SchemaProps{ + Description: "Healthy is true if the CatalogSource is healthy; false otherwise.", + Default: false, + Type: []string{"boolean"}, + Format: "", }, }, }, - Required: []string{"base64data", "mediatype"}, + Required: []string{"catalogSourceRef", "lastUpdated", "healthy"}, }, }, + Dependencies: []string{ + "k8s.io/api/core/v1.ObjectReference", metav1.Time{}.OpenAPIModelName()}, } } -func schema_api_pkg_operators_v1alpha1_InstallMode(ref common.ReferenceCallback) common.OpenAPIDefinition { +func schema_api_pkg_operators_v1alpha1_SubscriptionCondition(ref common.ReferenceCallback) common.OpenAPIDefinition { return common.OpenAPIDefinition{ Schema: spec.Schema{ SchemaProps: spec.SchemaProps{ - Description: "InstallMode associates an InstallModeType with a flag representing if the CSV supports it", + Description: "SubscriptionCondition represents the latest available observations of a Subscription's state.", Type: []string{"object"}, Properties: map[string]spec.Schema{ "type": { SchemaProps: spec.SchemaProps{ - Default: "", - Type: []string{"string"}, - Format: "", + Description: "Type is the type of Subscription condition.", + Default: "", + Type: []string{"string"}, + Format: "", }, }, - "supported": { + "status": { SchemaProps: spec.SchemaProps{ - Default: false, - Type: []string{"boolean"}, - Format: "", + Description: "Status is the status of the condition, one of True, False, Unknown.", + Default: "", + Type: []string{"string"}, + Format: "", }, }, - }, - Required: []string{"type", "supported"}, - }, - }, - } -} - -func schema_api_pkg_operators_v1alpha1_Maintainer(ref common.ReferenceCallback) common.OpenAPIDefinition { - return common.OpenAPIDefinition{ - Schema: spec.Schema{ - SchemaProps: spec.SchemaProps{ - Type: []string{"object"}, - Properties: map[string]spec.Schema{ - "name": { + "reason": { SchemaProps: spec.SchemaProps{ - Type: []string{"string"}, - Format: "", + Description: "Reason is a one-word CamelCase reason for the condition's last transition.", + Type: []string{"string"}, + Format: "", }, }, - "email": { + "message": { SchemaProps: spec.SchemaProps{ - Type: []string{"string"}, - Format: "", + Description: "Message is a human-readable message indicating details about last transition.", + Type: []string{"string"}, + Format: "", }, }, - }, - }, - }, - } -} - -func schema_api_pkg_operators_v1alpha1_NamedInstallStrategy(ref common.ReferenceCallback) common.OpenAPIDefinition { - return common.OpenAPIDefinition{ - Schema: spec.Schema{ - SchemaProps: spec.SchemaProps{ - Description: "NamedInstallStrategy represents the block of an ClusterServiceVersion resource where the install strategy is specified.", - Type: []string{"object"}, - Properties: map[string]spec.Schema{ - "strategy": { + "lastHeartbeatTime": { SchemaProps: spec.SchemaProps{ - Default: "", - Type: []string{"string"}, - Format: "", + Description: "LastHeartbeatTime is the last time we got an update on a given condition", + Ref: ref(metav1.Time{}.OpenAPIModelName()), }, }, - "spec": { + "lastTransitionTime": { SchemaProps: spec.SchemaProps{ - Default: map[string]interface{}{}, - Ref: ref("github.com/operator-framework/api/pkg/operators/v1alpha1.StrategyDetailsDeployment"), + Description: "LastTransitionTime is the last time the condition transit from one status to another", + Ref: ref(metav1.Time{}.OpenAPIModelName()), }, }, }, - Required: []string{"strategy"}, + Required: []string{"type", "status"}, }, }, Dependencies: []string{ - "github.com/operator-framework/api/pkg/operators/v1alpha1.StrategyDetailsDeployment"}, + metav1.Time{}.OpenAPIModelName()}, } } -func schema_api_pkg_operators_v1alpha1_RelatedImage(ref common.ReferenceCallback) common.OpenAPIDefinition { +func schema_api_pkg_operators_v1alpha1_SubscriptionConfig(ref common.ReferenceCallback) common.OpenAPIDefinition { return common.OpenAPIDefinition{ Schema: spec.Schema{ SchemaProps: spec.SchemaProps{ - Type: []string{"object"}, + Description: "SubscriptionConfig contains configuration specified for a subscription.", + Type: []string{"object"}, Properties: map[string]spec.Schema{ - "name": { + "selector": { SchemaProps: spec.SchemaProps{ - Default: "", - Type: []string{"string"}, - Format: "", + Description: "Selector is the label selector for pods to be configured. Existing ReplicaSets whose pods are selected by this will be the ones affected by this deployment. It must match the pod template's labels.", + Ref: ref(metav1.LabelSelector{}.OpenAPIModelName()), }, }, - "image": { + "nodeSelector": { SchemaProps: spec.SchemaProps{ - Default: "", - Type: []string{"string"}, - Format: "", + Description: "NodeSelector is a selector which must be true for the pod to fit on a node. Selector which must match a node's labels for the pod to be scheduled on that node. More info: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/", + Type: []string{"object"}, + AdditionalProperties: &spec.SchemaOrBool{ + Allows: true, + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + }, }, }, - }, - Required: []string{"name", "image"}, - }, - }, - } -} - -func schema_api_pkg_operators_v1alpha1_RequirementStatus(ref common.ReferenceCallback) common.OpenAPIDefinition { - return common.OpenAPIDefinition{ - Schema: spec.Schema{ - SchemaProps: spec.SchemaProps{ - Type: []string{"object"}, - Properties: map[string]spec.Schema{ - "group": { + "tolerations": { SchemaProps: spec.SchemaProps{ - Default: "", - Type: []string{"string"}, - Format: "", + Description: "Tolerations are the pod's tolerations.", + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref("k8s.io/api/core/v1.Toleration"), + }, + }, + }, }, }, - "version": { + "resources": { SchemaProps: spec.SchemaProps{ - Default: "", - Type: []string{"string"}, - Format: "", + Description: "Resources represents compute resources required by this container. Immutable. More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/", + Ref: ref("k8s.io/api/core/v1.ResourceRequirements"), }, }, - "kind": { + "envFrom": { SchemaProps: spec.SchemaProps{ - Default: "", - Type: []string{"string"}, - Format: "", + Description: "EnvFrom is a list of sources to populate environment variables in the container. The keys defined within a source must be a C_IDENTIFIER. All invalid keys will be reported as an event when the container is starting. When a key exists in multiple sources, the value associated with the last source will take precedence. Values defined by an Env with a duplicate key will take precedence. Immutable.", + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref("k8s.io/api/core/v1.EnvFromSource"), + }, + }, + }, }, }, - "name": { + "env": { + VendorExtensible: spec.VendorExtensible{ + Extensions: spec.Extensions{ + "x-kubernetes-patch-merge-key": "name", + "x-kubernetes-patch-strategy": "merge", + }, + }, SchemaProps: spec.SchemaProps{ - Default: "", - Type: []string{"string"}, - Format: "", + Description: "Env is a list of environment variables to set in the container. Cannot be updated.", + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref("k8s.io/api/core/v1.EnvVar"), + }, + }, + }, }, }, - "status": { + "volumes": { SchemaProps: spec.SchemaProps{ - Default: "", - Type: []string{"string"}, - Format: "", + Description: "List of Volumes to set in the podSpec.", + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref("k8s.io/api/core/v1.Volume"), + }, + }, + }, }, }, - "message": { + "volumeMounts": { SchemaProps: spec.SchemaProps{ - Default: "", - Type: []string{"string"}, - Format: "", + Description: "List of VolumeMounts to set in the container.", + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref("k8s.io/api/core/v1.VolumeMount"), + }, + }, + }, }, }, - "uuid": { + "affinity": { SchemaProps: spec.SchemaProps{ - Type: []string{"string"}, - Format: "", + Description: "If specified, overrides the pod's scheduling constraints. nil sub-attributes will *not* override the original values in the pod.spec for those sub-attributes. Use empty object ({}) to erase original sub-attribute values.", + Ref: ref("k8s.io/api/core/v1.Affinity"), }, }, - "dependents": { + "annotations": { SchemaProps: spec.SchemaProps{ - Type: []string{"array"}, - Items: &spec.SchemaOrArray{ + Description: "Annotations is an unstructured key value map stored with each Deployment, Pod, APIService in the Operator. Typically, annotations may be set by external tools to store and retrieve arbitrary metadata. Use this field to pre-define annotations that OLM should add to each of the Subscription's deployments, pods, and apiservices.", + Type: []string{"object"}, + AdditionalProperties: &spec.SchemaOrBool{ + Allows: true, Schema: &spec.Schema{ SchemaProps: spec.SchemaProps{ - Default: map[string]interface{}{}, - Ref: ref("github.com/operator-framework/api/pkg/operators/v1alpha1.DependentStatus"), + Default: "", + Type: []string{"string"}, + Format: "", }, }, }, }, }, }, - Required: []string{"group", "version", "kind", "name", "status", "message"}, }, }, Dependencies: []string{ - "github.com/operator-framework/api/pkg/operators/v1alpha1.DependentStatus"}, + "k8s.io/api/core/v1.Affinity", "k8s.io/api/core/v1.EnvFromSource", "k8s.io/api/core/v1.EnvVar", "k8s.io/api/core/v1.ResourceRequirements", "k8s.io/api/core/v1.Toleration", "k8s.io/api/core/v1.Volume", "k8s.io/api/core/v1.VolumeMount", metav1.LabelSelector{}.OpenAPIModelName()}, } } -func schema_api_pkg_operators_v1alpha1_ResourceInstance(ref common.ReferenceCallback) common.OpenAPIDefinition { +func schema_api_pkg_operators_v1alpha1_SubscriptionList(ref common.ReferenceCallback) common.OpenAPIDefinition { return common.OpenAPIDefinition{ Schema: spec.Schema{ SchemaProps: spec.SchemaProps{ - Type: []string{"object"}, + Description: "SubscriptionList is a list of Subscription resources.", + Type: []string{"object"}, Properties: map[string]spec.Schema{ - "name": { - SchemaProps: spec.SchemaProps{ - Default: "", - Type: []string{"string"}, - Format: "", - }, - }, - "namespace": { + "kind": { SchemaProps: spec.SchemaProps{ - Description: "Namespace can be empty for cluster-scoped resources", + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds", Type: []string{"string"}, Format: "", }, }, - }, - Required: []string{"name"}, - }, - }, - } -} - -func schema_api_pkg_operators_v1alpha1_ResourceList(ref common.ReferenceCallback) common.OpenAPIDefinition { - return common.OpenAPIDefinition{ - Schema: spec.Schema{ - SchemaProps: spec.SchemaProps{ - Description: "ResourceList represents a list of resources which are of the same Group/Kind", - Type: []string{"object"}, - Properties: map[string]spec.Schema{ - "group": { + "apiVersion": { SchemaProps: spec.SchemaProps{ - Default: "", - Type: []string{"string"}, - Format: "", + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", }, }, - "kind": { + "metadata": { SchemaProps: spec.SchemaProps{ - Default: "", - Type: []string{"string"}, - Format: "", + Default: map[string]interface{}{}, + Ref: ref(metav1.ListMeta{}.OpenAPIModelName()), }, }, - "instances": { + "items": { SchemaProps: spec.SchemaProps{ Type: []string{"array"}, Items: &spec.SchemaOrArray{ Schema: &spec.Schema{ SchemaProps: spec.SchemaProps{ Default: map[string]interface{}{}, - Ref: ref("github.com/operator-framework/api/pkg/operators/v1alpha1.ResourceInstance"), + Ref: ref(v1alpha1.Subscription{}.OpenAPIModelName()), }, }, }, }, }, }, - Required: []string{"group", "kind", "instances"}, + Required: []string{"metadata", "items"}, }, }, Dependencies: []string{ - "github.com/operator-framework/api/pkg/operators/v1alpha1.ResourceInstance"}, + v1alpha1.Subscription{}.OpenAPIModelName(), metav1.ListMeta{}.OpenAPIModelName()}, } } -func schema_api_pkg_operators_v1alpha1_SpecDescriptor(ref common.ReferenceCallback) common.OpenAPIDefinition { +func schema_api_pkg_operators_v1alpha1_SubscriptionSpec(ref common.ReferenceCallback) common.OpenAPIDefinition { return common.OpenAPIDefinition{ Schema: spec.Schema{ SchemaProps: spec.SchemaProps{ - Description: "SpecDescriptor describes a field in a spec block of a CRD so that OLM can consume it", + Description: "SubscriptionSpec defines an Application that can be installed", Type: []string{"object"}, Properties: map[string]spec.Schema{ - "path": { + "source": { SchemaProps: spec.SchemaProps{ Default: "", Type: []string{"string"}, Format: "", }, }, - "displayName": { + "sourceNamespace": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "name": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "channel": { SchemaProps: spec.SchemaProps{ Type: []string{"string"}, Format: "", }, }, - "description": { + "startingCSV": { SchemaProps: spec.SchemaProps{ Type: []string{"string"}, Format: "", }, }, - "x-descriptors": { + "installPlanApproval": { SchemaProps: spec.SchemaProps{ - Type: []string{"array"}, - Items: &spec.SchemaOrArray{ - Schema: &spec.Schema{ - SchemaProps: spec.SchemaProps{ - Default: "", - Type: []string{"string"}, - Format: "", - }, - }, - }, + Type: []string{"string"}, + Format: "", }, }, - "value": { + "config": { SchemaProps: spec.SchemaProps{ - Type: []string{"string"}, - Format: "byte", + Ref: ref(v1alpha1.SubscriptionConfig{}.OpenAPIModelName()), }, }, }, - Required: []string{"path"}, + Required: []string{"source", "sourceNamespace", "name"}, }, }, + Dependencies: []string{ + v1alpha1.SubscriptionConfig{}.OpenAPIModelName()}, } } -func schema_api_pkg_operators_v1alpha1_StatusDescriptor(ref common.ReferenceCallback) common.OpenAPIDefinition { +func schema_api_pkg_operators_v1alpha1_SubscriptionStatus(ref common.ReferenceCallback) common.OpenAPIDefinition { return common.OpenAPIDefinition{ Schema: spec.Schema{ SchemaProps: spec.SchemaProps{ - Description: "StatusDescriptor describes a field in a status block of a CRD so that OLM can consume it", - Type: []string{"object"}, + Type: []string{"object"}, Properties: map[string]spec.Schema{ - "path": { + "currentCSV": { SchemaProps: spec.SchemaProps{ - Default: "", - Type: []string{"string"}, - Format: "", + Description: "CurrentCSV is the CSV the Subscription is progressing to.", + Type: []string{"string"}, + Format: "", }, }, - "displayName": { + "installedCSV": { SchemaProps: spec.SchemaProps{ - Type: []string{"string"}, - Format: "", + Description: "InstalledCSV is the CSV currently installed by the Subscription.", + Type: []string{"string"}, + Format: "", }, }, - "description": { + "installplan": { SchemaProps: spec.SchemaProps{ - Type: []string{"string"}, - Format: "", + Description: "Install is a reference to the latest InstallPlan generated for the Subscription. DEPRECATED: InstallPlanRef", + Ref: ref(v1alpha1.InstallPlanReference{}.OpenAPIModelName()), }, }, - "x-descriptors": { + "state": { SchemaProps: spec.SchemaProps{ - Type: []string{"array"}, - Items: &spec.SchemaOrArray{ - Schema: &spec.Schema{ - SchemaProps: spec.SchemaProps{ - Default: "", - Type: []string{"string"}, - Format: "", - }, - }, - }, + Description: "State represents the current state of the Subscription", + Type: []string{"string"}, + Format: "", }, }, - "value": { + "reason": { SchemaProps: spec.SchemaProps{ - Type: []string{"string"}, - Format: "byte", + Description: "Reason is the reason the Subscription was transitioned to its current state.", + Type: []string{"string"}, + Format: "", }, }, - }, - Required: []string{"path"}, - }, - }, - } -} - -func schema_api_pkg_operators_v1alpha1_StrategyDeploymentPermissions(ref common.ReferenceCallback) common.OpenAPIDefinition { - return common.OpenAPIDefinition{ - Schema: spec.Schema{ - SchemaProps: spec.SchemaProps{ - Description: "StrategyDeploymentPermissions describe the rbac rules and service account needed by the install strategy", - Type: []string{"object"}, - Properties: map[string]spec.Schema{ - "serviceAccountName": { + "installPlanGeneration": { SchemaProps: spec.SchemaProps{ - Default: "", - Type: []string{"string"}, - Format: "", + Description: "InstallPlanGeneration is the current generation of the installplan", + Type: []string{"integer"}, + Format: "int32", }, }, - "rules": { + "installPlanRef": { SchemaProps: spec.SchemaProps{ - Type: []string{"array"}, + Description: "InstallPlanRef is a reference to the latest InstallPlan that contains the Subscription's current CSV.", + Ref: ref("k8s.io/api/core/v1.ObjectReference"), + }, + }, + "catalogHealth": { + SchemaProps: spec.SchemaProps{ + Description: "CatalogHealth contains the Subscription's view of its relevant CatalogSources' status. It is used to determine SubscriptionStatusConditions related to CatalogSources.", + Type: []string{"array"}, Items: &spec.SchemaOrArray{ Schema: &spec.Schema{ SchemaProps: spec.SchemaProps{ Default: map[string]interface{}{}, - Ref: ref("k8s.io/api/rbac/v1.PolicyRule"), + Ref: ref(v1alpha1.SubscriptionCatalogHealth{}.OpenAPIModelName()), }, }, }, }, }, - }, - Required: []string{"serviceAccountName", "rules"}, - }, - }, - Dependencies: []string{ - "k8s.io/api/rbac/v1.PolicyRule"}, - } -} - -func schema_api_pkg_operators_v1alpha1_StrategyDeploymentSpec(ref common.ReferenceCallback) common.OpenAPIDefinition { - return common.OpenAPIDefinition{ - Schema: spec.Schema{ - SchemaProps: spec.SchemaProps{ - Description: "StrategyDeploymentSpec contains the name, spec and labels for the deployment ALM should create", - Type: []string{"object"}, - Properties: map[string]spec.Schema{ - "name": { - SchemaProps: spec.SchemaProps{ - Default: "", - Type: []string{"string"}, - Format: "", - }, - }, - "spec": { - SchemaProps: spec.SchemaProps{ - Default: map[string]interface{}{}, - Ref: ref("k8s.io/api/apps/v1.DeploymentSpec"), - }, - }, - "label": { + "conditions": { SchemaProps: spec.SchemaProps{ - Type: []string{"object"}, - AdditionalProperties: &spec.SchemaOrBool{ - Allows: true, + Description: "Conditions is a list of the latest available observations about a Subscription's current state.", + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ Schema: &spec.Schema{ SchemaProps: spec.SchemaProps{ - Default: "", - Type: []string{"string"}, - Format: "", + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.SubscriptionCondition{}.OpenAPIModelName()), }, }, }, }, }, + "lastUpdated": { + SchemaProps: spec.SchemaProps{ + Description: "LastUpdated represents the last time that the Subscription status was updated.", + Ref: ref(metav1.Time{}.OpenAPIModelName()), + }, + }, }, - Required: []string{"name", "spec"}, + Required: []string{"lastUpdated"}, }, }, Dependencies: []string{ - "k8s.io/api/apps/v1.DeploymentSpec"}, + v1alpha1.InstallPlanReference{}.OpenAPIModelName(), v1alpha1.SubscriptionCatalogHealth{}.OpenAPIModelName(), v1alpha1.SubscriptionCondition{}.OpenAPIModelName(), "k8s.io/api/core/v1.ObjectReference", metav1.Time{}.OpenAPIModelName()}, } } -func schema_api_pkg_operators_v1alpha1_StrategyDetailsDeployment(ref common.ReferenceCallback) common.OpenAPIDefinition { +func schema_api_pkg_operators_v1alpha1_UpdateStrategy(ref common.ReferenceCallback) common.OpenAPIDefinition { return common.OpenAPIDefinition{ Schema: spec.Schema{ SchemaProps: spec.SchemaProps{ - Description: "StrategyDetailsDeployment represents the parsed details of a Deployment InstallStrategy.", + Description: "UpdateStrategy holds all the different types of catalog source update strategies Currently only registry polling strategy is implemented", Type: []string{"object"}, Properties: map[string]spec.Schema{ - "deployments": { - SchemaProps: spec.SchemaProps{ - Type: []string{"array"}, - Items: &spec.SchemaOrArray{ - Schema: &spec.Schema{ - SchemaProps: spec.SchemaProps{ - Default: map[string]interface{}{}, - Ref: ref("github.com/operator-framework/api/pkg/operators/v1alpha1.StrategyDeploymentSpec"), - }, - }, - }, - }, - }, - "permissions": { - SchemaProps: spec.SchemaProps{ - Type: []string{"array"}, - Items: &spec.SchemaOrArray{ - Schema: &spec.Schema{ - SchemaProps: spec.SchemaProps{ - Default: map[string]interface{}{}, - Ref: ref("github.com/operator-framework/api/pkg/operators/v1alpha1.StrategyDeploymentPermissions"), - }, - }, - }, - }, - }, - "clusterPermissions": { + "registryPoll": { SchemaProps: spec.SchemaProps{ - Type: []string{"array"}, - Items: &spec.SchemaOrArray{ - Schema: &spec.Schema{ - SchemaProps: spec.SchemaProps{ - Default: map[string]interface{}{}, - Ref: ref("github.com/operator-framework/api/pkg/operators/v1alpha1.StrategyDeploymentPermissions"), - }, - }, - }, + Ref: ref(v1alpha1.RegistryPoll{}.OpenAPIModelName()), }, }, }, - Required: []string{"deployments"}, }, }, Dependencies: []string{ - "github.com/operator-framework/api/pkg/operators/v1alpha1.StrategyDeploymentPermissions", "github.com/operator-framework/api/pkg/operators/v1alpha1.StrategyDeploymentSpec"}, + v1alpha1.RegistryPoll{}.OpenAPIModelName()}, } } @@ -1773,7 +3508,7 @@ func schema_package_server_apis_operators_v1_CSVDescription(ref common.Reference "version": { SchemaProps: spec.SchemaProps{ Description: "Version is the CSV's semantic version", - Ref: ref("github.com/operator-framework/api/pkg/lib/version.OperatorVersion"), + Ref: ref(version.OperatorVersion{}.OpenAPIModelName()), }, }, "provider": { @@ -1884,7 +3619,7 @@ func schema_package_server_apis_operators_v1_CSVDescription(ref common.Reference Schema: &spec.Schema{ SchemaProps: spec.SchemaProps{ Default: map[string]interface{}{}, - Ref: ref("github.com/operator-framework/api/pkg/operators/v1alpha1.InstallMode"), + Ref: ref(v1alpha1.InstallMode{}.OpenAPIModelName()), }, }, }, @@ -1893,13 +3628,13 @@ func schema_package_server_apis_operators_v1_CSVDescription(ref common.Reference "customresourcedefinitions": { SchemaProps: spec.SchemaProps{ Default: map[string]interface{}{}, - Ref: ref("github.com/operator-framework/api/pkg/operators/v1alpha1.CustomResourceDefinitions"), + Ref: ref(v1alpha1.CustomResourceDefinitions{}.OpenAPIModelName()), }, }, "apiservicedefinitions": { SchemaProps: spec.SchemaProps{ Default: map[string]interface{}{}, - Ref: ref("github.com/operator-framework/api/pkg/operators/v1alpha1.APIServiceDefinitions"), + Ref: ref(v1alpha1.APIServiceDefinitions{}.OpenAPIModelName()), }, }, "nativeApis": { @@ -1941,7 +3676,7 @@ func schema_package_server_apis_operators_v1_CSVDescription(ref common.Reference }, }, Dependencies: []string{ - "github.com/operator-framework/api/pkg/lib/version.OperatorVersion", "github.com/operator-framework/api/pkg/operators/v1alpha1.APIServiceDefinitions", "github.com/operator-framework/api/pkg/operators/v1alpha1.CustomResourceDefinitions", "github.com/operator-framework/api/pkg/operators/v1alpha1.InstallMode", v1.AppLink{}.OpenAPIModelName(), v1.Icon{}.OpenAPIModelName(), v1.Maintainer{}.OpenAPIModelName(), metav1.GroupVersionKind{}.OpenAPIModelName()}, + version.OperatorVersion{}.OpenAPIModelName(), v1alpha1.APIServiceDefinitions{}.OpenAPIModelName(), v1alpha1.CustomResourceDefinitions{}.OpenAPIModelName(), v1alpha1.InstallMode{}.OpenAPIModelName(), v1.AppLink{}.OpenAPIModelName(), v1.Icon{}.OpenAPIModelName(), v1.Maintainer{}.OpenAPIModelName(), metav1.GroupVersionKind{}.OpenAPIModelName()}, } } diff --git a/vendor/modules.txt b/vendor/modules.txt index e0dbc3a82f..3d5abca88a 100644 --- a/vendor/modules.txt +++ b/vendor/modules.txt @@ -638,7 +638,7 @@ github.com/openshift/client-go/config/listers/config/v1alpha2 # github.com/openshift/library-go v0.0.0-20260204111611-b7d4fa0e292a ## explicit; go 1.24.0 github.com/openshift/library-go/pkg/crypto -# github.com/operator-framework/api v0.39.0 => ./staging/api +# github.com/operator-framework/api v0.40.0 => ./staging/api ## explicit; go 1.25.3 github.com/operator-framework/api/crds github.com/operator-framework/api/pkg/constraints From b22b649e0504cabc0441cd8126d65f821311ee99 Mon Sep 17 00:00:00 2001 From: Jordan Keister Date: Mon, 2 Mar 2026 12:09:46 -0600 Subject: [PATCH 04/24] bumping o-f components (#3779) Signed-off-by: grokspawn Upstream-repository: operator-lifecycle-manager Upstream-commit: f6925fde7820b275e766af66363b5dab4fb9bff5 --- go.mod | 10 +- go.sum | 12 +- staging/operator-lifecycle-manager/go.mod | 10 +- staging/operator-lifecycle-manager/go.sum | 20 +-- vendor/github.com/mattn/go-sqlite3/README.md | 1 + .../mattn/go-sqlite3/sqlite3-binding.c | 160 +++++++++++------- .../mattn/go-sqlite3/sqlite3-binding.h | 10 +- .../go-sqlite3/sqlite3_opt_percentile.go | 15 ++ vendor/modules.txt | 10 +- 9 files changed, 154 insertions(+), 94 deletions(-) create mode 100644 vendor/github.com/mattn/go-sqlite3/sqlite3_opt_percentile.go diff --git a/go.mod b/go.mod index bbfbc42397..c775d3a7ca 100644 --- a/go.mod +++ b/go.mod @@ -13,9 +13,9 @@ require ( github.com/mikefarah/yq/v3 v3.0.0-20201202084205-8846255d1c37 github.com/onsi/ginkgo/v2 v2.28.1 github.com/openshift/api v0.0.0-20260204104751-e09e5a4ebcd0 - github.com/operator-framework/api v0.40.0 + github.com/operator-framework/api v0.41.0 github.com/operator-framework/operator-lifecycle-manager v0.0.0-00010101000000-000000000000 - github.com/operator-framework/operator-registry v1.63.0 + github.com/operator-framework/operator-registry v1.64.0 github.com/sirupsen/logrus v1.9.4 github.com/spf13/cobra v1.10.2 github.com/stretchr/testify v1.11.1 @@ -136,7 +136,7 @@ require ( github.com/mattn/go-colorable v0.1.13 // indirect github.com/mattn/go-isatty v0.0.20 // indirect github.com/mattn/go-runewidth v0.0.19 // indirect - github.com/mattn/go-sqlite3 v1.14.33 // indirect + github.com/mattn/go-sqlite3 v1.14.34 // indirect github.com/miekg/pkcs11 v1.1.2 // indirect github.com/mitchellh/go-wordwrap v1.0.1 // indirect github.com/mitchellh/hashstructure v1.1.0 // indirect @@ -196,7 +196,7 @@ require ( go.opentelemetry.io/otel/sdk v1.40.0 // indirect go.opentelemetry.io/otel/trace v1.40.0 // indirect go.opentelemetry.io/proto/otlp v1.9.0 // indirect - go.podman.io/common v0.66.1 // indirect + go.podman.io/common v0.67.0 // indirect go.podman.io/image/v5 v5.39.1 // indirect go.podman.io/storage v1.62.0 // indirect go.uber.org/multierr v1.11.0 // indirect @@ -206,7 +206,7 @@ require ( golang.org/x/crypto v0.48.0 // indirect golang.org/x/exp v0.0.0-20260112195511-716be5621a96 // indirect golang.org/x/lint v0.0.0-20241112194109-818c5a804067 // indirect - golang.org/x/mod v0.32.0 // indirect + golang.org/x/mod v0.33.0 // indirect golang.org/x/net v0.50.0 // indirect golang.org/x/oauth2 v0.34.0 // indirect golang.org/x/sync v0.19.0 // indirect diff --git a/go.sum b/go.sum index 8b029ffa70..dbdc452f2e 100644 --- a/go.sum +++ b/go.sum @@ -369,8 +369,8 @@ github.com/mattn/go-isatty v0.0.20 h1:xfD0iDuEKnDkl03q4limB+vH+GxLEtL/jb4xVJSWWE github.com/mattn/go-isatty v0.0.20/go.mod h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D7dTCTo3Y= github.com/mattn/go-runewidth v0.0.19 h1:v++JhqYnZuu5jSKrk9RbgF5v4CGUjqRfBm05byFGLdw= github.com/mattn/go-runewidth v0.0.19/go.mod h1:XBkDxAl56ILZc9knddidhrOlY5R/pDhgLpndooCuJAs= -github.com/mattn/go-sqlite3 v1.14.33 h1:A5blZ5ulQo2AtayQ9/limgHEkFreKj1Dv226a1K73s0= -github.com/mattn/go-sqlite3 v1.14.33/go.mod h1:Uh1q+B4BYcTPb+yiD3kU8Ct7aC0hY9fxUwlHK0RXw+Y= +github.com/mattn/go-sqlite3 v1.14.34 h1:3NtcvcUnFBPsuRcno8pUtupspG/GM+9nZ88zgJcp6Zk= +github.com/mattn/go-sqlite3 v1.14.34/go.mod h1:Uh1q+B4BYcTPb+yiD3kU8Ct7aC0hY9fxUwlHK0RXw+Y= github.com/matttproud/golang_protobuf_extensions v1.0.1/go.mod h1:D8He9yQNgCq6Z5Ld7szi9bcBfOoFv/3dc6xSMkL2PC0= github.com/maxbrunsfeld/counterfeiter/v6 v6.12.1 h1:D4O2wLxB384TS3ohBJMfolnxb4qGmoZ1PnWNtit8LYo= github.com/maxbrunsfeld/counterfeiter/v6 v6.12.1/go.mod h1:RuJdxo0oI6dClIaMzdl3hewq3a065RH65dofJP03h8I= @@ -629,8 +629,8 @@ go.opentelemetry.io/otel/trace v1.40.0 h1:WA4etStDttCSYuhwvEa8OP8I5EWu24lkOzp+ZY go.opentelemetry.io/otel/trace v1.40.0/go.mod h1:zeAhriXecNGP/s2SEG3+Y8X9ujcJOTqQ5RgdEJcawiA= go.opentelemetry.io/proto/otlp v1.9.0 h1:l706jCMITVouPOqEnii2fIAuO3IVGBRPV5ICjceRb/A= go.opentelemetry.io/proto/otlp v1.9.0/go.mod h1:xE+Cx5E/eEHw+ISFkwPLwCZefwVjY+pqKg1qcK03+/4= -go.podman.io/common v0.66.1 h1:zDyd4HhVgQAN8LupBHCnhtM3FEOJ9DwmThjulXZq2qA= -go.podman.io/common v0.66.1/go.mod h1:aNd2a0S7pY+fx1X5kpQYuF4hbwLU8ZOccuVrhu7h1Xc= +go.podman.io/common v0.67.0 h1:6Ci5oU1ek08OAxBLkHEqSyWmjNh5zf03PRqZ04cPdwU= +go.podman.io/common v0.67.0/go.mod h1:sB9L8LMtmf5Hpek2qkEyRrcSzpb+gYpG3vq5Khima3U= go.podman.io/image/v5 v5.39.1 h1:loIw4qHzZzBlUguYZau40u8HbR5MrTPQhwT4Hy6sCm0= go.podman.io/image/v5 v5.39.1/go.mod h1:SlaR6Pra1ATIx4BcuZ16oafb3QcCHISaKcJbtlN/G/0= go.podman.io/storage v1.62.0 h1:0QjX1XlzVmbiaulb+aR/CG6p9+pzaqwIeZPe3tEjHbY= @@ -679,8 +679,8 @@ golang.org/x/mod v0.8.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs= golang.org/x/mod v0.12.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs= golang.org/x/mod v0.15.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c= golang.org/x/mod v0.17.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c= -golang.org/x/mod v0.32.0 h1:9F4d3PHLljb6x//jOyokMv3eX+YDeepZSEo3mFJy93c= -golang.org/x/mod v0.32.0/go.mod h1:SgipZ/3h2Ci89DlEtEXWUk/HteuRin+HHhN+WbNhguU= +golang.org/x/mod v0.33.0 h1:tHFzIWbBifEmbwtGz65eaWyGiGZatSrT9prnU8DbVL8= +golang.org/x/mod v0.33.0/go.mod h1:swjeQEj+6r7fODbD2cqrnje9PnziFuw4bmLbBZFrQ5w= golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180826012351-8a410e7b638d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20181114220301-adae6a3d119a/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= diff --git a/staging/operator-lifecycle-manager/go.mod b/staging/operator-lifecycle-manager/go.mod index 7166338b2b..15d036901e 100644 --- a/staging/operator-lifecycle-manager/go.mod +++ b/staging/operator-lifecycle-manager/go.mod @@ -21,8 +21,8 @@ require ( github.com/openshift/api v0.0.0-20260204104751-e09e5a4ebcd0 github.com/openshift/client-go v0.0.0-20260108185524-48f4ccfc4e13 github.com/openshift/library-go v0.0.0-20260204111611-b7d4fa0e292a - github.com/operator-framework/api v0.40.0 - github.com/operator-framework/operator-registry v1.63.0 + github.com/operator-framework/api v0.41.0 + github.com/operator-framework/operator-registry v1.64.0 github.com/otiai10/copy v1.14.1 github.com/pkg/errors v0.9.1 github.com/prometheus/client_golang v1.23.2 @@ -131,7 +131,7 @@ require ( github.com/kylelemons/godebug v1.1.0 // indirect github.com/mattn/go-colorable v0.1.13 // indirect github.com/mattn/go-isatty v0.0.20 // indirect - github.com/mattn/go-sqlite3 v1.14.33 // indirect + github.com/mattn/go-sqlite3 v1.14.34 // indirect github.com/moby/locker v1.0.1 // indirect github.com/moby/sys/capability v0.4.0 // indirect github.com/moby/sys/mountinfo v0.7.2 // indirect @@ -163,7 +163,7 @@ require ( go.opentelemetry.io/otel/sdk v1.40.0 // indirect go.opentelemetry.io/otel/trace v1.40.0 // indirect go.opentelemetry.io/proto/otlp v1.9.0 // indirect - go.podman.io/common v0.66.1 // indirect + go.podman.io/common v0.67.0 // indirect go.podman.io/storage v1.62.0 // indirect go.uber.org/multierr v1.11.0 // indirect go.uber.org/zap v1.27.1 // indirect @@ -171,7 +171,7 @@ require ( go.yaml.in/yaml/v3 v3.0.4 // indirect golang.org/x/crypto v0.48.0 // indirect golang.org/x/exp v0.0.0-20260112195511-716be5621a96 // indirect - golang.org/x/mod v0.32.0 // indirect + golang.org/x/mod v0.33.0 // indirect golang.org/x/oauth2 v0.34.0 // indirect golang.org/x/sys v0.41.0 // indirect golang.org/x/term v0.40.0 // indirect diff --git a/staging/operator-lifecycle-manager/go.sum b/staging/operator-lifecycle-manager/go.sum index dd980d8776..9dbbc3d180 100644 --- a/staging/operator-lifecycle-manager/go.sum +++ b/staging/operator-lifecycle-manager/go.sum @@ -291,8 +291,8 @@ github.com/mattn/go-isatty v0.0.20 h1:xfD0iDuEKnDkl03q4limB+vH+GxLEtL/jb4xVJSWWE github.com/mattn/go-isatty v0.0.20/go.mod h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D7dTCTo3Y= github.com/mattn/go-runewidth v0.0.19 h1:v++JhqYnZuu5jSKrk9RbgF5v4CGUjqRfBm05byFGLdw= github.com/mattn/go-runewidth v0.0.19/go.mod h1:XBkDxAl56ILZc9knddidhrOlY5R/pDhgLpndooCuJAs= -github.com/mattn/go-sqlite3 v1.14.33 h1:A5blZ5ulQo2AtayQ9/limgHEkFreKj1Dv226a1K73s0= -github.com/mattn/go-sqlite3 v1.14.33/go.mod h1:Uh1q+B4BYcTPb+yiD3kU8Ct7aC0hY9fxUwlHK0RXw+Y= +github.com/mattn/go-sqlite3 v1.14.34 h1:3NtcvcUnFBPsuRcno8pUtupspG/GM+9nZ88zgJcp6Zk= +github.com/mattn/go-sqlite3 v1.14.34/go.mod h1:Uh1q+B4BYcTPb+yiD3kU8Ct7aC0hY9fxUwlHK0RXw+Y= github.com/maxbrunsfeld/counterfeiter/v6 v6.12.1 h1:D4O2wLxB384TS3ohBJMfolnxb4qGmoZ1PnWNtit8LYo= github.com/maxbrunsfeld/counterfeiter/v6 v6.12.1/go.mod h1:RuJdxo0oI6dClIaMzdl3hewq3a065RH65dofJP03h8I= github.com/mfridman/tparse v0.18.0 h1:wh6dzOKaIwkUGyKgOntDW4liXSo37qg5AXbIhkMV3vE= @@ -343,10 +343,10 @@ github.com/openshift/client-go v0.0.0-20260108185524-48f4ccfc4e13 h1:6rd4zSo2UaW github.com/openshift/client-go v0.0.0-20260108185524-48f4ccfc4e13/go.mod h1:YvOmPmV7wcJxpfhTDuFqqs2Xpb3M3ovsM6Qs/i2ptq4= github.com/openshift/library-go v0.0.0-20260204111611-b7d4fa0e292a h1:YLnZtVfqGUfTbQ+M06QAslEmP4WrnRoPrk4AtoBJdm8= github.com/openshift/library-go v0.0.0-20260204111611-b7d4fa0e292a/go.mod h1:DCRz1EgdayEmr9b6KXKDL+DWBN0rGHu/VYADeHzPoOk= -github.com/operator-framework/api v0.40.0 h1:xTTKJM6Yv6sr/pLibiINlnaXy+iNClmCo5QJMeHwyuc= -github.com/operator-framework/api v0.40.0/go.mod h1:cMF6TTZ2BgBoV/sDlO4Pm7G2jma7JlEsCYXjOOqwrnw= -github.com/operator-framework/operator-registry v1.63.0 h1:UIahnpjkH7y98A8AgPw3DUXVsM1yQr36JajRaJ/00nQ= -github.com/operator-framework/operator-registry v1.63.0/go.mod h1:A1w3zzvxx1h5rvkuQG2FgHq6lTMHASLb/YPelq7AmxQ= +github.com/operator-framework/api v0.41.0 h1:B0nutndl95elbLXJGRlkFNTI8OuZIjSqvTEeORPhTKo= +github.com/operator-framework/api v0.41.0/go.mod h1:Ouud+eqruzll9X3iv8wuAOTNAyyEncYXp4IVgbIlIdg= +github.com/operator-framework/operator-registry v1.64.0 h1:aEz8ERg+p9U50LCk2Lda4kuhFrSnqDu37yLFs0ex0qE= +github.com/operator-framework/operator-registry v1.64.0/go.mod h1:6PjoJsunu617xp7sGMxLGLFb6xvnmz6NHi+cUGH8oOY= github.com/otiai10/copy v1.14.1 h1:5/7E6qsUMBaH5AnQ0sSLzzTg1oTECmcCmT6lvF45Na8= github.com/otiai10/copy v1.14.1/go.mod h1:oQwrEDDOci3IM8dJF0d8+jnbfPDllW6vUjNc3DoZm9I= github.com/otiai10/mint v1.6.3 h1:87qsV/aw1F5as1eH1zS/yqHY85ANKVMgkDrf9rcxbQs= @@ -500,8 +500,8 @@ go.opentelemetry.io/otel/trace v1.40.0 h1:WA4etStDttCSYuhwvEa8OP8I5EWu24lkOzp+ZY go.opentelemetry.io/otel/trace v1.40.0/go.mod h1:zeAhriXecNGP/s2SEG3+Y8X9ujcJOTqQ5RgdEJcawiA= go.opentelemetry.io/proto/otlp v1.9.0 h1:l706jCMITVouPOqEnii2fIAuO3IVGBRPV5ICjceRb/A= go.opentelemetry.io/proto/otlp v1.9.0/go.mod h1:xE+Cx5E/eEHw+ISFkwPLwCZefwVjY+pqKg1qcK03+/4= -go.podman.io/common v0.66.1 h1:zDyd4HhVgQAN8LupBHCnhtM3FEOJ9DwmThjulXZq2qA= -go.podman.io/common v0.66.1/go.mod h1:aNd2a0S7pY+fx1X5kpQYuF4hbwLU8ZOccuVrhu7h1Xc= +go.podman.io/common v0.67.0 h1:6Ci5oU1ek08OAxBLkHEqSyWmjNh5zf03PRqZ04cPdwU= +go.podman.io/common v0.67.0/go.mod h1:sB9L8LMtmf5Hpek2qkEyRrcSzpb+gYpG3vq5Khima3U= go.podman.io/image/v5 v5.39.1 h1:loIw4qHzZzBlUguYZau40u8HbR5MrTPQhwT4Hy6sCm0= go.podman.io/image/v5 v5.39.1/go.mod h1:SlaR6Pra1ATIx4BcuZ16oafb3QcCHISaKcJbtlN/G/0= go.podman.io/storage v1.62.0 h1:0QjX1XlzVmbiaulb+aR/CG6p9+pzaqwIeZPe3tEjHbY= @@ -531,8 +531,8 @@ golang.org/x/lint v0.0.0-20190227174305-5b3e6a55c961/go.mod h1:wehouNa3lNwaWXcvx golang.org/x/lint v0.0.0-20190313153728-d0100b6bd8b3/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc= golang.org/x/mod v0.2.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= -golang.org/x/mod v0.32.0 h1:9F4d3PHLljb6x//jOyokMv3eX+YDeepZSEo3mFJy93c= -golang.org/x/mod v0.32.0/go.mod h1:SgipZ/3h2Ci89DlEtEXWUk/HteuRin+HHhN+WbNhguU= +golang.org/x/mod v0.33.0 h1:tHFzIWbBifEmbwtGz65eaWyGiGZatSrT9prnU8DbVL8= +golang.org/x/mod v0.33.0/go.mod h1:swjeQEj+6r7fODbD2cqrnje9PnziFuw4bmLbBZFrQ5w= golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180826012351-8a410e7b638d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20190213061140-3a22650c66bd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= diff --git a/vendor/github.com/mattn/go-sqlite3/README.md b/vendor/github.com/mattn/go-sqlite3/README.md index 76f49bacc9..5c4dd54326 100644 --- a/vendor/github.com/mattn/go-sqlite3/README.md +++ b/vendor/github.com/mattn/go-sqlite3/README.md @@ -174,6 +174,7 @@ go build -tags "icu json1 fts5 secure_delete" | JSON SQL Functions | sqlite_json | When this option is defined in the amalgamation, the JSON SQL functions are added to the build automatically | | Math Functions | sqlite_math_functions | This compile-time option enables built-in scalar math functions. For more information see [Built-In Mathematical SQL Functions](https://www.sqlite.org/lang_mathfunc.html) | | OS Trace | sqlite_os_trace | This option enables OSTRACE() debug logging. This can be verbose and should not be used in production. | +| Percentile | sqlite_percentile | This option enables [The Percentile Extension](sqlite.org/percentile.html). | | Pre Update Hook | sqlite_preupdate_hook | Registers a callback function that is invoked prior to each INSERT, UPDATE, and DELETE operation on a database table. | | Secure Delete | sqlite_secure_delete | This compile-time option changes the default setting of the secure_delete pragma.

When this option is not used, secure_delete defaults to off. When this option is present, secure_delete defaults to on.

The secure_delete setting causes deleted content to be overwritten with zeros. There is a small performance penalty since additional I/O must occur.

On the other hand, secure_delete can prevent fragments of sensitive information from lingering in unused parts of the database file after it has been deleted. See the documentation on the secure_delete pragma for additional information | | Secure Delete (FAST) | sqlite_secure_delete_fast | For more information see [PRAGMA secure_delete](https://www.sqlite.org/pragma.html#pragma_secure_delete) | diff --git a/vendor/github.com/mattn/go-sqlite3/sqlite3-binding.c b/vendor/github.com/mattn/go-sqlite3/sqlite3-binding.c index 387a5e9655..41a0c9ef84 100644 --- a/vendor/github.com/mattn/go-sqlite3/sqlite3-binding.c +++ b/vendor/github.com/mattn/go-sqlite3/sqlite3-binding.c @@ -1,7 +1,7 @@ #ifndef USE_LIBSQLITE3 /****************************************************************************** ** This file is an amalgamation of many separate C source files from SQLite -** version 3.51.1. By combining all the individual C code files into this +** version 3.51.2. By combining all the individual C code files into this ** single large file, the entire code can be compiled as a single translation ** unit. This allows many compilers to do optimizations that would not be ** possible if the files were compiled separately. Performance improvements @@ -19,7 +19,7 @@ ** separate file. This file contains only code for the core SQLite library. ** ** The content in this amalgamation comes from Fossil check-in -** 281fc0e9afc38674b9b0991943b9e9d1e64c with changes in files: +** b270f8339eb13b504d0b2ba154ebca966b7d with changes in files: ** ** */ @@ -468,12 +468,12 @@ extern "C" { ** [sqlite3_libversion_number()], [sqlite3_sourceid()], ** [sqlite_version()] and [sqlite_source_id()]. */ -#define SQLITE_VERSION "3.51.1" -#define SQLITE_VERSION_NUMBER 3051001 -#define SQLITE_SOURCE_ID "2025-11-28 17:28:25 281fc0e9afc38674b9b0991943b9e9d1e64c6cbdb133d35f6f5c87ff6af38a88" +#define SQLITE_VERSION "3.51.2" +#define SQLITE_VERSION_NUMBER 3051002 +#define SQLITE_SOURCE_ID "2026-01-09 17:27:48 b270f8339eb13b504d0b2ba154ebca966b7dde08e40c3ed7d559749818cb2075" #define SQLITE_SCM_BRANCH "branch-3.51" -#define SQLITE_SCM_TAGS "release version-3.51.1" -#define SQLITE_SCM_DATETIME "2025-11-28T17:28:25.933Z" +#define SQLITE_SCM_TAGS "release version-3.51.2" +#define SQLITE_SCM_DATETIME "2026-01-09T17:27:48.405Z" /* ** CAPI3REF: Run-Time Library Version Numbers @@ -41229,12 +41229,18 @@ static int unixLock(sqlite3_file *id, int eFileLock){ pInode->nLock++; pInode->nShared = 1; } - }else if( (eFileLock==EXCLUSIVE_LOCK && pInode->nShared>1) - || unixIsSharingShmNode(pFile) - ){ + }else if( eFileLock==EXCLUSIVE_LOCK && pInode->nShared>1 ){ /* We are trying for an exclusive lock but another thread in this ** same process is still holding a shared lock. */ rc = SQLITE_BUSY; + }else if( unixIsSharingShmNode(pFile) ){ + /* We are in WAL mode and attempting to delete the SHM and WAL + ** files due to closing the connection or changing out of WAL mode, + ** but another process still holds locks on the SHM file, thus + ** indicating that database locks have been broken, perhaps due + ** to a rogue close(open(dbFile)) or similar. + */ + rc = SQLITE_BUSY; }else{ /* The request was for a RESERVED or EXCLUSIVE lock. It is ** assumed that there is a SHARED or greater lock on the file @@ -43873,26 +43879,21 @@ static int unixFcntlExternalReader(unixFile *pFile, int *piOut){ ** still not a disaster. */ static int unixIsSharingShmNode(unixFile *pFile){ - int rc; unixShmNode *pShmNode; + struct flock lock; if( pFile->pShm==0 ) return 0; if( pFile->ctrlFlags & UNIXFILE_EXCL ) return 0; pShmNode = pFile->pShm->pShmNode; - rc = 1; - unixEnterMutex(); - if( ALWAYS(pShmNode->nRef==1) ){ - struct flock lock; - lock.l_whence = SEEK_SET; - lock.l_start = UNIX_SHM_DMS; - lock.l_len = 1; - lock.l_type = F_WRLCK; - osFcntl(pShmNode->hShm, F_GETLK, &lock); - if( lock.l_type==F_UNLCK ){ - rc = 0; - } - } - unixLeaveMutex(); - return rc; +#if SQLITE_ATOMIC_INTRINSICS + assert( AtomicLoad(&pShmNode->nRef)==1 ); +#endif + memset(&lock, 0, sizeof(lock)); + lock.l_whence = SEEK_SET; + lock.l_start = UNIX_SHM_DMS; + lock.l_len = 1; + lock.l_type = F_WRLCK; + osFcntl(pShmNode->hShm, F_GETLK, &lock); + return (lock.l_type!=F_UNLCK); } /* @@ -115317,9 +115318,22 @@ SQLITE_PRIVATE int sqlite3CodeSubselect(Parse *pParse, Expr *pExpr){ pParse->nMem += nReg; if( pExpr->op==TK_SELECT ){ dest.eDest = SRT_Mem; - dest.iSdst = dest.iSDParm; + if( (pSel->selFlags&SF_Distinct) && pSel->pLimit && pSel->pLimit->pRight ){ + /* If there is both a DISTINCT and an OFFSET clause, then allocate + ** a separate dest.iSdst array for sqlite3Select() and other + ** routines to populate. In this case results will be copied over + ** into the dest.iSDParm array only after OFFSET processing. This + ** ensures that in the case where OFFSET excludes all rows, the + ** dest.iSDParm array is not left populated with the contents of the + ** last row visited - it should be all NULLs if all rows were + ** excluded by OFFSET. */ + dest.iSdst = pParse->nMem+1; + pParse->nMem += nReg; + }else{ + dest.iSdst = dest.iSDParm; + } dest.nSdst = nReg; - sqlite3VdbeAddOp3(v, OP_Null, 0, dest.iSDParm, dest.iSDParm+nReg-1); + sqlite3VdbeAddOp3(v, OP_Null, 0, dest.iSDParm, pParse->nMem); VdbeComment((v, "Init subquery result")); }else{ dest.eDest = SRT_Exists; @@ -148187,9 +148201,14 @@ static void selectInnerLoop( assert( nResultCol<=pDest->nSdst ); pushOntoSorter( pParse, pSort, p, regResult, regOrig, nResultCol, nPrefixReg); + pDest->iSDParm = regResult; }else{ assert( nResultCol==pDest->nSdst ); - assert( regResult==iParm ); + if( regResult!=iParm ){ + /* This occurs in cases where the SELECT had both a DISTINCT and + ** an OFFSET clause. */ + sqlite3VdbeAddOp3(v, OP_Copy, regResult, iParm, nResultCol-1); + } /* The LIMIT clause will jump out of the loop for us */ } break; @@ -154204,12 +154223,24 @@ static SQLITE_NOINLINE void existsToJoin( && (pSub->selFlags & SF_Aggregate)==0 && !pSub->pSrc->a[0].fg.isSubquery && pSub->pLimit==0 + && pSub->pPrior==0 ){ + /* Before combining the sub-select with the parent, renumber the + ** cursor used by the subselect. This is because the EXISTS expression + ** might be a copy of another EXISTS expression from somewhere + ** else in the tree, and in this case it is important that it use + ** a unique cursor number. */ + sqlite3 *db = pParse->db; + int *aCsrMap = sqlite3DbMallocZero(db, (pParse->nTab+2)*sizeof(int)); + if( aCsrMap==0 ) return; + aCsrMap[0] = (pParse->nTab+1); + renumberCursors(pParse, pSub, -1, aCsrMap); + sqlite3DbFree(db, aCsrMap); + memset(pWhere, 0, sizeof(*pWhere)); pWhere->op = TK_INTEGER; pWhere->u.iValue = 1; ExprSetProperty(pWhere, EP_IntValue); - assert( p->pWhere!=0 ); pSub->pSrc->a[0].fg.fromExists = 1; pSub->pSrc->a[0].fg.jointype |= JT_CROSS; @@ -174002,6 +174033,9 @@ SQLITE_PRIVATE void sqlite3WhereEnd(WhereInfo *pWInfo){ sqlite3 *db = pParse->db; int iEnd = sqlite3VdbeCurrentAddr(v); int nRJ = 0; +#ifndef SQLITE_DISABLE_SKIPAHEAD_DISTINCT + int addrSeek = 0; +#endif /* Generate loop termination code. */ @@ -174014,7 +174048,10 @@ SQLITE_PRIVATE void sqlite3WhereEnd(WhereInfo *pWInfo){ ** the RIGHT JOIN table */ WhereRightJoin *pRJ = pLevel->pRJ; sqlite3VdbeResolveLabel(v, pLevel->addrCont); - pLevel->addrCont = 0; + /* Replace addrCont with a new label that will never be used, just so + ** the subsequent call to resolve pLevel->addrCont will have something + ** to resolve. */ + pLevel->addrCont = sqlite3VdbeMakeLabel(pParse); pRJ->endSubrtn = sqlite3VdbeCurrentAddr(v); sqlite3VdbeAddOp3(v, OP_Return, pRJ->regReturn, pRJ->addrSubrtn, 1); VdbeCoverage(v); @@ -174023,7 +174060,6 @@ SQLITE_PRIVATE void sqlite3WhereEnd(WhereInfo *pWInfo){ pLoop = pLevel->pWLoop; if( pLevel->op!=OP_Noop ){ #ifndef SQLITE_DISABLE_SKIPAHEAD_DISTINCT - int addrSeek = 0; Index *pIdx; int n; if( pWInfo->eDistinct==WHERE_DISTINCT_ORDERED @@ -174046,25 +174082,26 @@ SQLITE_PRIVATE void sqlite3WhereEnd(WhereInfo *pWInfo){ sqlite3VdbeAddOp2(v, OP_Goto, 1, pLevel->p2); } #endif /* SQLITE_DISABLE_SKIPAHEAD_DISTINCT */ - if( pTabList->a[pLevel->iFrom].fg.fromExists && i==pWInfo->nLevel-1 ){ - /* If the EXISTS-to-JOIN optimization was applied, then the EXISTS - ** loop(s) will be the inner-most loops of the join. There might be - ** multiple EXISTS loops, but they will all be nested, and the join - ** order will not have been changed by the query planner. If the - ** inner-most EXISTS loop sees a single successful row, it should - ** break out of *all* EXISTS loops. But only the inner-most of the - ** nested EXISTS loops should do this breakout. */ - int nOuter = 0; /* Nr of outer EXISTS that this one is nested within */ - while( nOutera[pLevel[-nOuter-1].iFrom].fg.fromExists ) break; - nOuter++; - } - testcase( nOuter>0 ); - sqlite3VdbeAddOp2(v, OP_Goto, 0, pLevel[-nOuter].addrBrk); - VdbeComment((v, "EXISTS break")); - } - /* The common case: Advance to the next row */ - if( pLevel->addrCont ) sqlite3VdbeResolveLabel(v, pLevel->addrCont); + } + if( pTabList->a[pLevel->iFrom].fg.fromExists && i==pWInfo->nLevel-1 ){ + /* If the EXISTS-to-JOIN optimization was applied, then the EXISTS + ** loop(s) will be the inner-most loops of the join. There might be + ** multiple EXISTS loops, but they will all be nested, and the join + ** order will not have been changed by the query planner. If the + ** inner-most EXISTS loop sees a single successful row, it should + ** break out of *all* EXISTS loops. But only the inner-most of the + ** nested EXISTS loops should do this breakout. */ + int nOuter = 0; /* Nr of outer EXISTS that this one is nested within */ + while( nOutera[pLevel[-nOuter-1].iFrom].fg.fromExists ) break; + nOuter++; + } + testcase( nOuter>0 ); + sqlite3VdbeAddOp2(v, OP_Goto, 0, pLevel[-nOuter].addrBrk); + VdbeComment((v, "EXISTS break")); + } + sqlite3VdbeResolveLabel(v, pLevel->addrCont); + if( pLevel->op!=OP_Noop ){ sqlite3VdbeAddOp3(v, pLevel->op, pLevel->p1, pLevel->p2, pLevel->p3); sqlite3VdbeChangeP5(v, pLevel->p5); VdbeCoverage(v); @@ -174077,10 +174114,11 @@ SQLITE_PRIVATE void sqlite3WhereEnd(WhereInfo *pWInfo){ VdbeCoverage(v); } #ifndef SQLITE_DISABLE_SKIPAHEAD_DISTINCT - if( addrSeek ) sqlite3VdbeJumpHere(v, addrSeek); + if( addrSeek ){ + sqlite3VdbeJumpHere(v, addrSeek); + addrSeek = 0; + } #endif - }else if( pLevel->addrCont ){ - sqlite3VdbeResolveLabel(v, pLevel->addrCont); } if( (pLoop->wsFlags & WHERE_IN_ABLE)!=0 && pLevel->u.in.nIn>0 ){ struct InLoop *pIn; @@ -219454,7 +219492,7 @@ static void rtreenode(sqlite3_context *ctx, int nArg, sqlite3_value **apArg){ if( node.zData==0 ) return; nData = sqlite3_value_bytes(apArg[1]); if( nData<4 ) return; - if( nDatanLevel ){ if( fts5IndexMerge(p, &pStruct, nMerge, nMin) ){ @@ -260305,7 +260349,7 @@ static void fts5SourceIdFunc( ){ assert( nArg==0 ); UNUSED_PARAM2(nArg, apUnused); - sqlite3_result_text(pCtx, "fts5: 2025-11-28 17:28:25 281fc0e9afc38674b9b0991943b9e9d1e64c6cbdb133d35f6f5c87ff6af38a88", -1, SQLITE_TRANSIENT); + sqlite3_result_text(pCtx, "fts5: 2026-01-09 17:27:48 b270f8339eb13b504d0b2ba154ebca966b7dde08e40c3ed7d559749818cb2075", -1, SQLITE_TRANSIENT); } /* diff --git a/vendor/github.com/mattn/go-sqlite3/sqlite3-binding.h b/vendor/github.com/mattn/go-sqlite3/sqlite3-binding.h index fcb9c45394..78ef0b7af2 100644 --- a/vendor/github.com/mattn/go-sqlite3/sqlite3-binding.h +++ b/vendor/github.com/mattn/go-sqlite3/sqlite3-binding.h @@ -147,12 +147,12 @@ extern "C" { ** [sqlite3_libversion_number()], [sqlite3_sourceid()], ** [sqlite_version()] and [sqlite_source_id()]. */ -#define SQLITE_VERSION "3.51.1" -#define SQLITE_VERSION_NUMBER 3051001 -#define SQLITE_SOURCE_ID "2025-11-28 17:28:25 281fc0e9afc38674b9b0991943b9e9d1e64c6cbdb133d35f6f5c87ff6af38a88" +#define SQLITE_VERSION "3.51.2" +#define SQLITE_VERSION_NUMBER 3051002 +#define SQLITE_SOURCE_ID "2026-01-09 17:27:48 b270f8339eb13b504d0b2ba154ebca966b7dde08e40c3ed7d559749818cb2075" #define SQLITE_SCM_BRANCH "branch-3.51" -#define SQLITE_SCM_TAGS "release version-3.51.1" -#define SQLITE_SCM_DATETIME "2025-11-28T17:28:25.933Z" +#define SQLITE_SCM_TAGS "release version-3.51.2" +#define SQLITE_SCM_DATETIME "2026-01-09T17:27:48.405Z" /* ** CAPI3REF: Run-Time Library Version Numbers diff --git a/vendor/github.com/mattn/go-sqlite3/sqlite3_opt_percentile.go b/vendor/github.com/mattn/go-sqlite3/sqlite3_opt_percentile.go new file mode 100644 index 0000000000..3461d9a557 --- /dev/null +++ b/vendor/github.com/mattn/go-sqlite3/sqlite3_opt_percentile.go @@ -0,0 +1,15 @@ +// Copyright (C) 2019 Yasuhiro Matsumoto . +// Copyright (C) 2018 G.J.R. Timmer . +// +// Use of this source code is governed by an MIT-style +// license that can be found in the LICENSE file. + +//go:build sqlite_percentile +// +build sqlite_percentile + +package sqlite3 + +/* +#cgo CFLAGS: -DSQLITE_ENABLE_PERCENTILE +*/ +import "C" diff --git a/vendor/modules.txt b/vendor/modules.txt index 3d5abca88a..c0e72dc90a 100644 --- a/vendor/modules.txt +++ b/vendor/modules.txt @@ -517,7 +517,7 @@ github.com/mattn/go-isatty # github.com/mattn/go-runewidth v0.0.19 ## explicit; go 1.20 github.com/mattn/go-runewidth -# github.com/mattn/go-sqlite3 v1.14.33 +# github.com/mattn/go-sqlite3 v1.14.34 ## explicit; go 1.19 github.com/mattn/go-sqlite3 # github.com/maxbrunsfeld/counterfeiter/v6 v6.12.1 @@ -638,7 +638,7 @@ github.com/openshift/client-go/config/listers/config/v1alpha2 # github.com/openshift/library-go v0.0.0-20260204111611-b7d4fa0e292a ## explicit; go 1.24.0 github.com/openshift/library-go/pkg/crypto -# github.com/operator-framework/api v0.40.0 => ./staging/api +# github.com/operator-framework/api v0.41.0 => ./staging/api ## explicit; go 1.25.3 github.com/operator-framework/api/crds github.com/operator-framework/api/pkg/constraints @@ -756,7 +756,7 @@ github.com/operator-framework/operator-lifecycle-manager/pkg/package-server/stor github.com/operator-framework/operator-lifecycle-manager/pkg/package-server/version github.com/operator-framework/operator-lifecycle-manager/pkg/version github.com/operator-framework/operator-lifecycle-manager/util/cpb -# github.com/operator-framework/operator-registry v1.63.0 => ./staging/operator-registry +# github.com/operator-framework/operator-registry v1.64.0 => ./staging/operator-registry ## explicit; go 1.25.3 github.com/operator-framework/operator-registry/alpha/action github.com/operator-framework/operator-registry/alpha/action/migrations @@ -1045,7 +1045,7 @@ go.opentelemetry.io/proto/otlp/collector/trace/v1 go.opentelemetry.io/proto/otlp/common/v1 go.opentelemetry.io/proto/otlp/resource/v1 go.opentelemetry.io/proto/otlp/trace/v1 -# go.podman.io/common v0.66.1 +# go.podman.io/common v0.67.0 ## explicit; go 1.24.2 go.podman.io/common/pkg/auth go.podman.io/common/pkg/capabilities @@ -1174,7 +1174,7 @@ golang.org/x/exp/slices ## explicit; go 1.11 golang.org/x/lint golang.org/x/lint/golint -# golang.org/x/mod v0.32.0 +# golang.org/x/mod v0.33.0 ## explicit; go 1.24.0 golang.org/x/mod/internal/lazyregexp golang.org/x/mod/modfile From 3d21e21f91e281d76d4da242b9d7fe5e7d02c9b4 Mon Sep 17 00:00:00 2001 From: Per Goncalves da Silva Date: Wed, 4 Feb 2026 17:44:17 +0100 Subject: [PATCH 05/24] Add pedjak to OWNERS (#1902) Signed-off-by: Per Goncalves da Silva Co-authored-by: Per Goncalves da Silva Upstream-repository: operator-registry Upstream-commit: 9fa4d9b6a2a71562d55a3c9ecb2a952a592b304c --- staging/operator-registry/OWNERS | 2 ++ 1 file changed, 2 insertions(+) diff --git a/staging/operator-registry/OWNERS b/staging/operator-registry/OWNERS index b6e9920a0d..3e77b32529 100644 --- a/staging/operator-registry/OWNERS +++ b/staging/operator-registry/OWNERS @@ -5,6 +5,7 @@ approvers: - joelanford - kevinrizza - oceanc80 + - pedjak - perdasilva - tmshort # review == this code is good /lgtm @@ -16,6 +17,7 @@ reviewers: - joelanford - kevinrizza - oceanc80 + - pedjak - perdasilva - rashmigottipati - tmshort From bfdb3d6650e649a59080fb53d85614695a6abbb3 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 5 Feb 2026 14:13:38 +0000 Subject: [PATCH 06/24] Bump google.golang.org/grpc/cmd/protoc-gen-go-grpc from 1.6.0 to 1.6.1 (#1903) Bumps [google.golang.org/grpc/cmd/protoc-gen-go-grpc](https://github.com/grpc/grpc-go) from 1.6.0 to 1.6.1. - [Release notes](https://github.com/grpc/grpc-go/releases) - [Commits](https://github.com/grpc/grpc-go/compare/v1.6.0...cmd/protoc-gen-go-grpc/v1.6.1) --- updated-dependencies: - dependency-name: google.golang.org/grpc/cmd/protoc-gen-go-grpc dependency-version: 1.6.1 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Upstream-repository: operator-registry Upstream-commit: a40ca893e9acb466fc1dfc554b65fb50da05435b --- go.mod | 2 +- go.sum | 4 ++-- staging/operator-registry/go.mod | 2 +- staging/operator-registry/go.sum | 4 ++-- vendor/google.golang.org/grpc/cmd/protoc-gen-go-grpc/main.go | 2 +- vendor/modules.txt | 2 +- 6 files changed, 8 insertions(+), 8 deletions(-) diff --git a/go.mod b/go.mod index c775d3a7ca..9d68ac188b 100644 --- a/go.mod +++ b/go.mod @@ -19,7 +19,7 @@ require ( github.com/sirupsen/logrus v1.9.4 github.com/spf13/cobra v1.10.2 github.com/stretchr/testify v1.11.1 - google.golang.org/grpc/cmd/protoc-gen-go-grpc v1.6.0 + google.golang.org/grpc/cmd/protoc-gen-go-grpc v1.6.1 google.golang.org/protobuf v1.36.11 gopkg.in/yaml.v2 v2.4.0 k8s.io/api v0.35.1 diff --git a/go.sum b/go.sum index dbdc452f2e..b8b13f3543 100644 --- a/go.sum +++ b/go.sum @@ -833,8 +833,8 @@ google.golang.org/grpc v1.27.0/go.mod h1:qbnxyOmOxrQa7FizSgH+ReBfzJrCY1pSN7KXBS8 google.golang.org/grpc v1.33.2/go.mod h1:JMHMWHQWaTccqQQlmk3MJZS+GWXOdAesneDmEnv2fbc= google.golang.org/grpc v1.79.1 h1:zGhSi45ODB9/p3VAawt9a+O/MULLl9dpizzNNpq7flY= google.golang.org/grpc v1.79.1/go.mod h1:KmT0Kjez+0dde/v2j9vzwoAScgEPx/Bw1CYChhHLrHQ= -google.golang.org/grpc/cmd/protoc-gen-go-grpc v1.6.0 h1:6Al3kEFFP9VJhRz3DID6quisgPnTeZVr4lep9kkxdPA= -google.golang.org/grpc/cmd/protoc-gen-go-grpc v1.6.0/go.mod h1:QLvsjh0OIR0TYBeiu2bkWGTJBUNQ64st52iWj/yA93I= +google.golang.org/grpc/cmd/protoc-gen-go-grpc v1.6.1 h1:/WILD1UcXj/ujCxgoL/DvRgt2CP3txG8+FwkUbb9110= +google.golang.org/grpc/cmd/protoc-gen-go-grpc v1.6.1/go.mod h1:YNKnb2OAApgYn2oYY47Rn7alMr1zWjb2U8Q0aoGWiNc= google.golang.org/protobuf v0.0.0-20200109180630-ec00e32a8dfd/go.mod h1:DFci5gLYBciE7Vtevhsrf46CRTquxDuWsQurQQe4oz8= google.golang.org/protobuf v0.0.0-20200221191635-4d8936d0db64/go.mod h1:kwYJMbMJ01Woi6D6+Kah6886xMZcty6N08ah7+eCXa0= google.golang.org/protobuf v0.0.0-20200228230310-ab0ca4ff8a60/go.mod h1:cfTl7dwQJ+fmap5saPgwCLgHXTUD7jkjRqWcaiX5VyM= diff --git a/staging/operator-registry/go.mod b/staging/operator-registry/go.mod index 051c0c2e10..7ce1aeb70c 100644 --- a/staging/operator-registry/go.mod +++ b/staging/operator-registry/go.mod @@ -41,7 +41,7 @@ require ( golang.org/x/sys v0.40.0 golang.org/x/text v0.33.0 google.golang.org/grpc v1.78.0 - google.golang.org/grpc/cmd/protoc-gen-go-grpc v1.6.0 + google.golang.org/grpc/cmd/protoc-gen-go-grpc v1.6.1 google.golang.org/protobuf v1.36.11 gopkg.in/yaml.v2 v2.4.0 k8s.io/api v0.35.0 diff --git a/staging/operator-registry/go.sum b/staging/operator-registry/go.sum index d2a71be6b4..31ef5f0026 100644 --- a/staging/operator-registry/go.sum +++ b/staging/operator-registry/go.sum @@ -674,8 +674,8 @@ google.golang.org/grpc v1.27.0/go.mod h1:qbnxyOmOxrQa7FizSgH+ReBfzJrCY1pSN7KXBS8 google.golang.org/grpc v1.33.2/go.mod h1:JMHMWHQWaTccqQQlmk3MJZS+GWXOdAesneDmEnv2fbc= google.golang.org/grpc v1.78.0 h1:K1XZG/yGDJnzMdd/uZHAkVqJE+xIDOcmdSFZkBUicNc= google.golang.org/grpc v1.78.0/go.mod h1:I47qjTo4OKbMkjA/aOOwxDIiPSBofUtQUI5EfpWvW7U= -google.golang.org/grpc/cmd/protoc-gen-go-grpc v1.6.0 h1:6Al3kEFFP9VJhRz3DID6quisgPnTeZVr4lep9kkxdPA= -google.golang.org/grpc/cmd/protoc-gen-go-grpc v1.6.0/go.mod h1:QLvsjh0OIR0TYBeiu2bkWGTJBUNQ64st52iWj/yA93I= +google.golang.org/grpc/cmd/protoc-gen-go-grpc v1.6.1 h1:/WILD1UcXj/ujCxgoL/DvRgt2CP3txG8+FwkUbb9110= +google.golang.org/grpc/cmd/protoc-gen-go-grpc v1.6.1/go.mod h1:YNKnb2OAApgYn2oYY47Rn7alMr1zWjb2U8Q0aoGWiNc= google.golang.org/protobuf v0.0.0-20200109180630-ec00e32a8dfd/go.mod h1:DFci5gLYBciE7Vtevhsrf46CRTquxDuWsQurQQe4oz8= google.golang.org/protobuf v0.0.0-20200221191635-4d8936d0db64/go.mod h1:kwYJMbMJ01Woi6D6+Kah6886xMZcty6N08ah7+eCXa0= google.golang.org/protobuf v0.0.0-20200228230310-ab0ca4ff8a60/go.mod h1:cfTl7dwQJ+fmap5saPgwCLgHXTUD7jkjRqWcaiX5VyM= diff --git a/vendor/google.golang.org/grpc/cmd/protoc-gen-go-grpc/main.go b/vendor/google.golang.org/grpc/cmd/protoc-gen-go-grpc/main.go index b3f69223ab..83bff58e0c 100644 --- a/vendor/google.golang.org/grpc/cmd/protoc-gen-go-grpc/main.go +++ b/vendor/google.golang.org/grpc/cmd/protoc-gen-go-grpc/main.go @@ -42,7 +42,7 @@ import ( "google.golang.org/protobuf/types/pluginpb" ) -const version = "1.6.0" +const version = "1.6.1" var requireUnimplemented *bool var useGenericStreams *bool diff --git a/vendor/modules.txt b/vendor/modules.txt index c0e72dc90a..54db95293f 100644 --- a/vendor/modules.txt +++ b/vendor/modules.txt @@ -1358,7 +1358,7 @@ google.golang.org/grpc/serviceconfig google.golang.org/grpc/stats google.golang.org/grpc/status google.golang.org/grpc/tap -# google.golang.org/grpc/cmd/protoc-gen-go-grpc v1.6.0 +# google.golang.org/grpc/cmd/protoc-gen-go-grpc v1.6.1 ## explicit; go 1.24.0 google.golang.org/grpc/cmd/protoc-gen-go-grpc # google.golang.org/protobuf v1.36.11 From c27f75f1372326e45a46766efddfa05f2281cc71 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 6 Feb 2026 08:23:35 +0000 Subject: [PATCH 07/24] Bump go.podman.io/common from 0.66.1 to 0.67.0 (#1907) Bumps [go.podman.io/common](https://github.com/containers/container-libs) from 0.66.1 to 0.67.0. - [Commits](https://github.com/containers/container-libs/compare/common/v0.66.1...common/v0.67.0) --- updated-dependencies: - dependency-name: go.podman.io/common dependency-version: 0.67.0 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Upstream-repository: operator-registry Upstream-commit: 9a6641c4e0157edfd1bb9524e0bdbe112d8620e1 --- staging/operator-registry/go.mod | 6 +++--- staging/operator-registry/go.sum | 12 ++++++------ 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/staging/operator-registry/go.mod b/staging/operator-registry/go.mod index 7ce1aeb70c..9383d99049 100644 --- a/staging/operator-registry/go.mod +++ b/staging/operator-registry/go.mod @@ -33,8 +33,8 @@ require ( github.com/stretchr/testify v1.11.1 github.com/tidwall/btree v1.8.1 go.etcd.io/bbolt v1.4.3 - go.podman.io/common v0.66.1 - go.podman.io/image/v5 v5.38.0 + go.podman.io/common v0.67.0 + go.podman.io/image/v5 v5.39.1 golang.org/x/exp v0.0.0-20260112195511-716be5621a96 golang.org/x/mod v0.32.0 golang.org/x/sync v0.19.0 @@ -200,7 +200,7 @@ require ( go.opentelemetry.io/otel/sdk/metric v1.40.0 // indirect go.opentelemetry.io/otel/trace v1.40.0 // indirect go.opentelemetry.io/proto/otlp v1.9.0 // indirect - go.podman.io/storage v1.61.0 // indirect + go.podman.io/storage v1.62.0 // indirect go.yaml.in/yaml/v2 v2.4.3 // indirect go.yaml.in/yaml/v3 v3.0.4 // indirect golang.org/x/crypto v0.47.0 // indirect diff --git a/staging/operator-registry/go.sum b/staging/operator-registry/go.sum index 31ef5f0026..7539a6cf42 100644 --- a/staging/operator-registry/go.sum +++ b/staging/operator-registry/go.sum @@ -505,12 +505,12 @@ go.opentelemetry.io/otel/trace v1.40.0 h1:WA4etStDttCSYuhwvEa8OP8I5EWu24lkOzp+ZY go.opentelemetry.io/otel/trace v1.40.0/go.mod h1:zeAhriXecNGP/s2SEG3+Y8X9ujcJOTqQ5RgdEJcawiA= go.opentelemetry.io/proto/otlp v1.9.0 h1:l706jCMITVouPOqEnii2fIAuO3IVGBRPV5ICjceRb/A= go.opentelemetry.io/proto/otlp v1.9.0/go.mod h1:xE+Cx5E/eEHw+ISFkwPLwCZefwVjY+pqKg1qcK03+/4= -go.podman.io/common v0.66.1 h1:zDyd4HhVgQAN8LupBHCnhtM3FEOJ9DwmThjulXZq2qA= -go.podman.io/common v0.66.1/go.mod h1:aNd2a0S7pY+fx1X5kpQYuF4hbwLU8ZOccuVrhu7h1Xc= -go.podman.io/image/v5 v5.38.0 h1:aUKrCANkPvze1bnhLJsaubcfz0d9v/bSDLnwsXJm6G4= -go.podman.io/image/v5 v5.38.0/go.mod h1:hSIoIUzgBnmc4DjoIdzk63aloqVbD7QXDMkSE/cvG90= -go.podman.io/storage v1.61.0 h1:5hD/oyRYt1f1gxgvect+8syZBQhGhV28dCw2+CZpx0Q= -go.podman.io/storage v1.61.0/go.mod h1:A3UBK0XypjNZ6pghRhuxg62+2NIm5lcUGv/7XyMhMUI= +go.podman.io/common v0.67.0 h1:6Ci5oU1ek08OAxBLkHEqSyWmjNh5zf03PRqZ04cPdwU= +go.podman.io/common v0.67.0/go.mod h1:sB9L8LMtmf5Hpek2qkEyRrcSzpb+gYpG3vq5Khima3U= +go.podman.io/image/v5 v5.39.1 h1:loIw4qHzZzBlUguYZau40u8HbR5MrTPQhwT4Hy6sCm0= +go.podman.io/image/v5 v5.39.1/go.mod h1:SlaR6Pra1ATIx4BcuZ16oafb3QcCHISaKcJbtlN/G/0= +go.podman.io/storage v1.62.0 h1:0QjX1XlzVmbiaulb+aR/CG6p9+pzaqwIeZPe3tEjHbY= +go.podman.io/storage v1.62.0/go.mod h1:A3UBK0XypjNZ6pghRhuxg62+2NIm5lcUGv/7XyMhMUI= go.uber.org/goleak v1.3.0 h1:2K3zAYmnTNqV73imy9J1T3WC+gmCePx2hEGkimedGto= go.uber.org/goleak v1.3.0/go.mod h1:CoHD4mav9JJNrW/WLlf7HGZPjdw8EucARQHekz1X6bE= go.uber.org/multierr v1.11.0 h1:blXXJkSxSSfBVBlC76pxqeO+LN3aDfLQo+309xJstO0= From 18493040c213f860b3f5adf9fd80fe86075d9a2e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 6 Feb 2026 08:26:19 +0000 Subject: [PATCH 08/24] Bump github.com/grpc-ecosystem/grpc-health-probe from 0.4.44 to 0.4.45 (#1908) Bumps [github.com/grpc-ecosystem/grpc-health-probe](https://github.com/grpc-ecosystem/grpc-health-probe) from 0.4.44 to 0.4.45. - [Release notes](https://github.com/grpc-ecosystem/grpc-health-probe/releases) - [Commits](https://github.com/grpc-ecosystem/grpc-health-probe/compare/v0.4.44...v0.4.45) --- updated-dependencies: - dependency-name: github.com/grpc-ecosystem/grpc-health-probe dependency-version: 0.4.45 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Upstream-repository: operator-registry Upstream-commit: 568b22052b43d4bb90a9c7b8dedf6617fe917927 --- go.mod | 2 +- go.sum | 4 ++-- staging/operator-registry/go.mod | 2 +- staging/operator-registry/go.sum | 4 ++-- vendor/modules.txt | 2 +- 5 files changed, 7 insertions(+), 7 deletions(-) diff --git a/go.mod b/go.mod index 9d68ac188b..59430ba302 100644 --- a/go.mod +++ b/go.mod @@ -8,7 +8,7 @@ require ( github.com/go-logr/logr v1.4.3 github.com/golang/mock v1.7.0-rc.1 github.com/googleapis/gnostic v0.5.5 - github.com/grpc-ecosystem/grpc-health-probe v0.4.44 + github.com/grpc-ecosystem/grpc-health-probe v0.4.45 github.com/maxbrunsfeld/counterfeiter/v6 v6.12.1 github.com/mikefarah/yq/v3 v3.0.0-20201202084205-8846255d1c37 github.com/onsi/ginkgo/v2 v2.28.1 diff --git a/go.sum b/go.sum index b8b13f3543..f994d834d4 100644 --- a/go.sum +++ b/go.sum @@ -295,8 +295,8 @@ github.com/grpc-ecosystem/go-grpc-prometheus v1.2.1-0.20210315223345-82c243799c9 github.com/grpc-ecosystem/grpc-gateway v1.9.0/go.mod h1:vNeuVxBJEsws4ogUvrchl83t/GYV9WGTSLVdBhOQFDY= github.com/grpc-ecosystem/grpc-gateway/v2 v2.27.7 h1:X+2YciYSxvMQK0UZ7sg45ZVabVZBeBuvMkmuI2V3Fak= github.com/grpc-ecosystem/grpc-gateway/v2 v2.27.7/go.mod h1:lW34nIZuQ8UDPdkon5fmfp2l3+ZkQ2me/+oecHYLOII= -github.com/grpc-ecosystem/grpc-health-probe v0.4.44 h1:UL/D651ntWGhnAR8MwhdzPM0tHhWFrXToL+9uX+YXRs= -github.com/grpc-ecosystem/grpc-health-probe v0.4.44/go.mod h1:omGa1rvwXOYzLpaxeOAHruRqdCYGJUSVds++SpkF5iQ= +github.com/grpc-ecosystem/grpc-health-probe v0.4.45 h1:MShozNmU62P19s8ectkSDecdGfzmYlvphvD/4wxRjF8= +github.com/grpc-ecosystem/grpc-health-probe v0.4.45/go.mod h1:Amn2YzmUFN8Usb0kffD18fQ005c7C3sCn92kBxiOm5E= github.com/h2non/filetype v1.1.3 h1:FKkx9QbD7HR/zjK1Ia5XiBsq9zdLi5Kf3zGyFTAFkGg= github.com/h2non/filetype v1.1.3/go.mod h1:319b3zT68BvV+WRj7cwy856M2ehB3HqNOt6sy1HndBY= github.com/h2non/go-is-svg v0.0.0-20160927212452-35e8c4b0612c h1:fEE5/5VNnYUoBOj2I9TP8Jc+a7lge3QWn9DKE7NCwfc= diff --git a/staging/operator-registry/go.mod b/staging/operator-registry/go.mod index 9383d99049..5534054f90 100644 --- a/staging/operator-registry/go.mod +++ b/staging/operator-registry/go.mod @@ -14,7 +14,7 @@ require ( github.com/golang/mock v1.7.0-rc.1 github.com/google/go-cmp v0.7.0 github.com/grpc-ecosystem/go-grpc-middleware/v2 v2.3.3 - github.com/grpc-ecosystem/grpc-health-probe v0.4.44 + github.com/grpc-ecosystem/grpc-health-probe v0.4.45 github.com/h2non/filetype v1.1.3 github.com/h2non/go-is-svg v0.0.0-20160927212452-35e8c4b0612c github.com/joelanford/ignore v0.1.1 diff --git a/staging/operator-registry/go.sum b/staging/operator-registry/go.sum index 7539a6cf42..bc038dd4e0 100644 --- a/staging/operator-registry/go.sum +++ b/staging/operator-registry/go.sum @@ -244,8 +244,8 @@ github.com/grpc-ecosystem/go-grpc-prometheus v1.2.1-0.20210315223345-82c243799c9 github.com/grpc-ecosystem/go-grpc-prometheus v1.2.1-0.20210315223345-82c243799c99/go.mod h1:3bDW6wMZJB7tiONtC/1Xpicra6Wp5GgbTbQWCbI5fkc= github.com/grpc-ecosystem/grpc-gateway/v2 v2.27.7 h1:X+2YciYSxvMQK0UZ7sg45ZVabVZBeBuvMkmuI2V3Fak= github.com/grpc-ecosystem/grpc-gateway/v2 v2.27.7/go.mod h1:lW34nIZuQ8UDPdkon5fmfp2l3+ZkQ2me/+oecHYLOII= -github.com/grpc-ecosystem/grpc-health-probe v0.4.44 h1:UL/D651ntWGhnAR8MwhdzPM0tHhWFrXToL+9uX+YXRs= -github.com/grpc-ecosystem/grpc-health-probe v0.4.44/go.mod h1:omGa1rvwXOYzLpaxeOAHruRqdCYGJUSVds++SpkF5iQ= +github.com/grpc-ecosystem/grpc-health-probe v0.4.45 h1:MShozNmU62P19s8ectkSDecdGfzmYlvphvD/4wxRjF8= +github.com/grpc-ecosystem/grpc-health-probe v0.4.45/go.mod h1:Amn2YzmUFN8Usb0kffD18fQ005c7C3sCn92kBxiOm5E= github.com/h2non/filetype v1.1.3 h1:FKkx9QbD7HR/zjK1Ia5XiBsq9zdLi5Kf3zGyFTAFkGg= github.com/h2non/filetype v1.1.3/go.mod h1:319b3zT68BvV+WRj7cwy856M2ehB3HqNOt6sy1HndBY= github.com/h2non/go-is-svg v0.0.0-20160927212452-35e8c4b0612c h1:fEE5/5VNnYUoBOj2I9TP8Jc+a7lge3QWn9DKE7NCwfc= diff --git a/vendor/modules.txt b/vendor/modules.txt index 54db95293f..b1689107f5 100644 --- a/vendor/modules.txt +++ b/vendor/modules.txt @@ -454,7 +454,7 @@ github.com/grpc-ecosystem/grpc-gateway/v2/internal/httprule github.com/grpc-ecosystem/grpc-gateway/v2/protoc-gen-openapiv2/options github.com/grpc-ecosystem/grpc-gateway/v2/runtime github.com/grpc-ecosystem/grpc-gateway/v2/utilities -# github.com/grpc-ecosystem/grpc-health-probe v0.4.44 +# github.com/grpc-ecosystem/grpc-health-probe v0.4.45 ## explicit; go 1.24.0 github.com/grpc-ecosystem/grpc-health-probe # github.com/h2non/filetype v1.1.3 From bf06fb9a6eaf70a1e355ad66618344f1e23e5ae6 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 10 Feb 2026 15:36:00 +0000 Subject: [PATCH 09/24] Bump the golang-x-deps group across 1 directory with 3 updates (#1911) Bumps the golang-x-deps group with 3 updates in the / directory: [golang.org/x/mod](https://github.com/golang/mod), [golang.org/x/sys](https://github.com/golang/sys) and [golang.org/x/text](https://github.com/golang/text). Updates `golang.org/x/mod` from 0.32.0 to 0.33.0 - [Commits](https://github.com/golang/mod/compare/v0.32.0...v0.33.0) Updates `golang.org/x/sys` from 0.40.0 to 0.41.0 - [Commits](https://github.com/golang/sys/compare/v0.40.0...v0.41.0) Updates `golang.org/x/text` from 0.33.0 to 0.34.0 - [Release notes](https://github.com/golang/text/releases) - [Commits](https://github.com/golang/text/compare/v0.33.0...v0.34.0) --- updated-dependencies: - dependency-name: golang.org/x/mod dependency-version: 0.33.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: golang-x-deps - dependency-name: golang.org/x/sys dependency-version: 0.41.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: golang-x-deps - dependency-name: golang.org/x/text dependency-version: 0.34.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: golang-x-deps ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Upstream-repository: operator-registry Upstream-commit: 2634c9a6939f5760fc5066f20f5945cfe0d8f468 --- staging/operator-registry/go.mod | 6 +++--- staging/operator-registry/go.sum | 12 ++++++------ 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/staging/operator-registry/go.mod b/staging/operator-registry/go.mod index 5534054f90..e92e06ac18 100644 --- a/staging/operator-registry/go.mod +++ b/staging/operator-registry/go.mod @@ -36,10 +36,10 @@ require ( go.podman.io/common v0.67.0 go.podman.io/image/v5 v5.39.1 golang.org/x/exp v0.0.0-20260112195511-716be5621a96 - golang.org/x/mod v0.32.0 + golang.org/x/mod v0.33.0 golang.org/x/sync v0.19.0 - golang.org/x/sys v0.40.0 - golang.org/x/text v0.33.0 + golang.org/x/sys v0.41.0 + golang.org/x/text v0.34.0 google.golang.org/grpc v1.78.0 google.golang.org/grpc/cmd/protoc-gen-go-grpc v1.6.1 google.golang.org/protobuf v1.36.11 diff --git a/staging/operator-registry/go.sum b/staging/operator-registry/go.sum index bc038dd4e0..992d786e70 100644 --- a/staging/operator-registry/go.sum +++ b/staging/operator-registry/go.sum @@ -546,8 +546,8 @@ golang.org/x/mod v0.8.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs= golang.org/x/mod v0.12.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs= golang.org/x/mod v0.15.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c= golang.org/x/mod v0.17.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c= -golang.org/x/mod v0.32.0 h1:9F4d3PHLljb6x//jOyokMv3eX+YDeepZSEo3mFJy93c= -golang.org/x/mod v0.32.0/go.mod h1:SgipZ/3h2Ci89DlEtEXWUk/HteuRin+HHhN+WbNhguU= +golang.org/x/mod v0.33.0 h1:tHFzIWbBifEmbwtGz65eaWyGiGZatSrT9prnU8DbVL8= +golang.org/x/mod v0.33.0/go.mod h1:swjeQEj+6r7fODbD2cqrnje9PnziFuw4bmLbBZFrQ5w= golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180826012351-8a410e7b638d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20181114220301-adae6a3d119a/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= @@ -608,8 +608,8 @@ golang.org/x/sys v0.12.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.17.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= golang.org/x/sys v0.20.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= golang.org/x/sys v0.30.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= -golang.org/x/sys v0.40.0 h1:DBZZqJ2Rkml6QMQsZywtnjnnGvHza6BTfYFWY9kjEWQ= -golang.org/x/sys v0.40.0/go.mod h1:OgkHotnGiDImocRcuBABYBEXf8A9a87e/uXjp9XT3ks= +golang.org/x/sys v0.41.0 h1:Ivj+2Cp/ylzLiEU89QhWblYnOE9zerudt9Ftecq2C6k= +golang.org/x/sys v0.41.0/go.mod h1:OgkHotnGiDImocRcuBABYBEXf8A9a87e/uXjp9XT3ks= golang.org/x/telemetry v0.0.0-20240228155512-f48c80bd79b2/go.mod h1:TeRTkGYfJXctD9OcfyVLyj2J3IxLnKwHJR8f4D8a3YE= golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= @@ -631,8 +631,8 @@ golang.org/x/text v0.13.0/go.mod h1:TvPlkZtksWOMsz7fbANvkp4WM8x/WCo/om8BMLbz+aE= golang.org/x/text v0.14.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU= golang.org/x/text v0.15.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU= golang.org/x/text v0.22.0/go.mod h1:YRoo4H8PVmsu+E3Ou7cqLVH8oXWIHVoX0jqUWALQhfY= -golang.org/x/text v0.33.0 h1:B3njUFyqtHDUI5jMn1YIr5B0IE2U0qck04r6d4KPAxE= -golang.org/x/text v0.33.0/go.mod h1:LuMebE6+rBincTi9+xWTY8TztLzKHc/9C1uBCG27+q8= +golang.org/x/text v0.34.0 h1:oL/Qq0Kdaqxa1KbNeMKwQq0reLCCaFtqu2eNuSeNHbk= +golang.org/x/text v0.34.0/go.mod h1:homfLqTYRFyVYemLBFl5GgL/DWEiH5wcsQ5gSh1yziA= golang.org/x/time v0.14.0 h1:MRx4UaLrDotUKUdCIqzPC48t1Y9hANFKIRpNx+Te8PI= golang.org/x/time v0.14.0/go.mod h1:eL/Oa2bBBK0TkX57Fyni+NgnyQQN4LitPmob2Hjnqw4= golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= From c78e67dfd8dc532bcdfcc0224a5c979bf7b680e6 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 11 Feb 2026 15:13:39 +0000 Subject: [PATCH 10/24] Bump github.com/mattn/go-sqlite3 from 1.14.33 to 1.14.34 (#1913) Bumps [github.com/mattn/go-sqlite3](https://github.com/mattn/go-sqlite3) from 1.14.33 to 1.14.34. - [Release notes](https://github.com/mattn/go-sqlite3/releases) - [Commits](https://github.com/mattn/go-sqlite3/compare/v1.14.33...v1.14.34) --- updated-dependencies: - dependency-name: github.com/mattn/go-sqlite3 dependency-version: 1.14.34 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Upstream-repository: operator-registry Upstream-commit: 691fb0f91efdb01032c0abb5ba650cf6ae428b8f --- staging/operator-registry/go.mod | 2 +- staging/operator-registry/go.sum | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/staging/operator-registry/go.mod b/staging/operator-registry/go.mod index e92e06ac18..6a7fc4938a 100644 --- a/staging/operator-registry/go.mod +++ b/staging/operator-registry/go.mod @@ -18,7 +18,7 @@ require ( github.com/h2non/filetype v1.1.3 github.com/h2non/go-is-svg v0.0.0-20160927212452-35e8c4b0612c github.com/joelanford/ignore v0.1.1 - github.com/mattn/go-sqlite3 v1.14.33 + github.com/mattn/go-sqlite3 v1.14.34 github.com/maxbrunsfeld/counterfeiter/v6 v6.12.1 github.com/onsi/ginkgo/v2 v2.28.1 github.com/onsi/gomega v1.39.1 diff --git a/staging/operator-registry/go.sum b/staging/operator-registry/go.sum index 992d786e70..7df1321601 100644 --- a/staging/operator-registry/go.sum +++ b/staging/operator-registry/go.sum @@ -291,8 +291,8 @@ github.com/mattn/go-isatty v0.0.20 h1:xfD0iDuEKnDkl03q4limB+vH+GxLEtL/jb4xVJSWWE github.com/mattn/go-isatty v0.0.20/go.mod h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D7dTCTo3Y= github.com/mattn/go-runewidth v0.0.19 h1:v++JhqYnZuu5jSKrk9RbgF5v4CGUjqRfBm05byFGLdw= github.com/mattn/go-runewidth v0.0.19/go.mod h1:XBkDxAl56ILZc9knddidhrOlY5R/pDhgLpndooCuJAs= -github.com/mattn/go-sqlite3 v1.14.33 h1:A5blZ5ulQo2AtayQ9/limgHEkFreKj1Dv226a1K73s0= -github.com/mattn/go-sqlite3 v1.14.33/go.mod h1:Uh1q+B4BYcTPb+yiD3kU8Ct7aC0hY9fxUwlHK0RXw+Y= +github.com/mattn/go-sqlite3 v1.14.34 h1:3NtcvcUnFBPsuRcno8pUtupspG/GM+9nZ88zgJcp6Zk= +github.com/mattn/go-sqlite3 v1.14.34/go.mod h1:Uh1q+B4BYcTPb+yiD3kU8Ct7aC0hY9fxUwlHK0RXw+Y= github.com/matttproud/golang_protobuf_extensions v1.0.1/go.mod h1:D8He9yQNgCq6Z5Ld7szi9bcBfOoFv/3dc6xSMkL2PC0= github.com/maxbrunsfeld/counterfeiter/v6 v6.12.1 h1:D4O2wLxB384TS3ohBJMfolnxb4qGmoZ1PnWNtit8LYo= github.com/maxbrunsfeld/counterfeiter/v6 v6.12.1/go.mod h1:RuJdxo0oI6dClIaMzdl3hewq3a065RH65dofJP03h8I= From afdf672e989762dbe6f39c74e82f979db8133c4b Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 11 Feb 2026 15:16:40 +0000 Subject: [PATCH 11/24] Bump the k8s-dependencies group with 4 updates (#1912) Bumps the k8s-dependencies group with 4 updates: [k8s.io/api](https://github.com/kubernetes/api), [k8s.io/apiextensions-apiserver](https://github.com/kubernetes/apiextensions-apiserver), [k8s.io/apimachinery](https://github.com/kubernetes/apimachinery) and [k8s.io/client-go](https://github.com/kubernetes/client-go). Updates `k8s.io/api` from 0.35.0 to 0.35.1 - [Commits](https://github.com/kubernetes/api/compare/v0.35.0...v0.35.1) Updates `k8s.io/apiextensions-apiserver` from 0.35.0 to 0.35.1 - [Release notes](https://github.com/kubernetes/apiextensions-apiserver/releases) - [Commits](https://github.com/kubernetes/apiextensions-apiserver/compare/v0.35.0...v0.35.1) Updates `k8s.io/apimachinery` from 0.35.0 to 0.35.1 - [Commits](https://github.com/kubernetes/apimachinery/compare/v0.35.0...v0.35.1) Updates `k8s.io/client-go` from 0.35.0 to 0.35.1 - [Changelog](https://github.com/kubernetes/client-go/blob/master/CHANGELOG.md) - [Commits](https://github.com/kubernetes/client-go/compare/v0.35.0...v0.35.1) --- updated-dependencies: - dependency-name: k8s.io/api dependency-version: 0.35.1 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: k8s-dependencies - dependency-name: k8s.io/apiextensions-apiserver dependency-version: 0.35.1 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: k8s-dependencies - dependency-name: k8s.io/apimachinery dependency-version: 0.35.1 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: k8s-dependencies - dependency-name: k8s.io/client-go dependency-version: 0.35.1 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: k8s-dependencies ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Upstream-repository: operator-registry Upstream-commit: 9eb4b5f1f218c489e604ca4d9b794f92bc4b60b7 --- staging/operator-registry/go.mod | 12 ++++++------ staging/operator-registry/go.sum | 24 ++++++++++++------------ 2 files changed, 18 insertions(+), 18 deletions(-) diff --git a/staging/operator-registry/go.mod b/staging/operator-registry/go.mod index 6a7fc4938a..fc44382e75 100644 --- a/staging/operator-registry/go.mod +++ b/staging/operator-registry/go.mod @@ -44,10 +44,10 @@ require ( google.golang.org/grpc/cmd/protoc-gen-go-grpc v1.6.1 google.golang.org/protobuf v1.36.11 gopkg.in/yaml.v2 v2.4.0 - k8s.io/api v0.35.0 - k8s.io/apiextensions-apiserver v0.35.0 - k8s.io/apimachinery v0.35.0 - k8s.io/client-go v0.35.0 + k8s.io/api v0.35.1 + k8s.io/apiextensions-apiserver v0.35.1 + k8s.io/apimachinery v0.35.1 + k8s.io/client-go v0.35.1 k8s.io/kubectl v0.35.0 oras.land/oras-go/v2 v2.6.0 sigs.k8s.io/controller-runtime v0.23.1 @@ -216,9 +216,9 @@ require ( gopkg.in/inf.v0 v0.9.1 // indirect gopkg.in/warnings.v0 v0.1.2 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect - k8s.io/apiserver v0.35.0 // indirect + k8s.io/apiserver v0.35.1 // indirect k8s.io/cli-runtime v0.35.0 // indirect - k8s.io/component-base v0.35.0 // indirect + k8s.io/component-base v0.35.1 // indirect k8s.io/klog/v2 v2.130.1 // indirect k8s.io/kube-openapi v0.0.0-20260127142750-a19766b6e2d4 // indirect k8s.io/utils v0.0.0-20260108192941-914a6e750570 // indirect diff --git a/staging/operator-registry/go.sum b/staging/operator-registry/go.sum index 7df1321601..a8e3f35f66 100644 --- a/staging/operator-registry/go.sum +++ b/staging/operator-registry/go.sum @@ -707,20 +707,20 @@ gotest.tools/v3 v3.5.2 h1:7koQfIKdy+I8UTetycgUqXWSDwpgv193Ka+qRsmBY8Q= gotest.tools/v3 v3.5.2/go.mod h1:LtdLGcnqToBH83WByAAi/wiwSFCArdFIUV/xxN4pcjA= honnef.co/go/tools v0.0.0-20190102054323-c2f93a96b099/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= honnef.co/go/tools v0.0.0-20190523083050-ea95bdfd59fc/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= -k8s.io/api v0.35.0 h1:iBAU5LTyBI9vw3L5glmat1njFK34srdLmktWwLTprlY= -k8s.io/api v0.35.0/go.mod h1:AQ0SNTzm4ZAczM03QH42c7l3bih1TbAXYo0DkF8ktnA= -k8s.io/apiextensions-apiserver v0.35.0 h1:3xHk2rTOdWXXJM+RDQZJvdx0yEOgC0FgQ1PlJatA5T4= -k8s.io/apiextensions-apiserver v0.35.0/go.mod h1:E1Ahk9SADaLQ4qtzYFkwUqusXTcaV2uw3l14aqpL2LU= -k8s.io/apimachinery v0.35.0 h1:Z2L3IHvPVv/MJ7xRxHEtk6GoJElaAqDCCU0S6ncYok8= -k8s.io/apimachinery v0.35.0/go.mod h1:jQCgFZFR1F4Ik7hvr2g84RTJSZegBc8yHgFWKn//hns= -k8s.io/apiserver v0.35.0 h1:CUGo5o+7hW9GcAEF3x3usT3fX4f9r8xmgQeCBDaOgX4= -k8s.io/apiserver v0.35.0/go.mod h1:QUy1U4+PrzbJaM3XGu2tQ7U9A4udRRo5cyxkFX0GEds= +k8s.io/api v0.35.1 h1:0PO/1FhlK/EQNVK5+txc4FuhQibV25VLSdLMmGpDE/Q= +k8s.io/api v0.35.1/go.mod h1:28uR9xlXWml9eT0uaGo6y71xK86JBELShLy4wR1XtxM= +k8s.io/apiextensions-apiserver v0.35.1 h1:p5vvALkknlOcAqARwjS20kJffgzHqwyQRM8vHLwgU7w= +k8s.io/apiextensions-apiserver v0.35.1/go.mod h1:2CN4fe1GZ3HMe4wBr25qXyJnJyZaquy4nNlNmb3R7AQ= +k8s.io/apimachinery v0.35.1 h1:yxO6gV555P1YV0SANtnTjXYfiivaTPvCTKX6w6qdDsU= +k8s.io/apimachinery v0.35.1/go.mod h1:jQCgFZFR1F4Ik7hvr2g84RTJSZegBc8yHgFWKn//hns= +k8s.io/apiserver v0.35.1 h1:potxdhhTL4i6AYAa2QCwtlhtB1eCdWQFvJV6fXgJzxs= +k8s.io/apiserver v0.35.1/go.mod h1:BiL6Dd3A2I/0lBnteXfWmCFobHM39vt5+hJQd7Lbpi4= k8s.io/cli-runtime v0.35.0 h1:PEJtYS/Zr4p20PfZSLCbY6YvaoLrfByd6THQzPworUE= k8s.io/cli-runtime v0.35.0/go.mod h1:VBRvHzosVAoVdP3XwUQn1Oqkvaa8facnokNkD7jOTMY= -k8s.io/client-go v0.35.0 h1:IAW0ifFbfQQwQmga0UdoH0yvdqrbwMdq9vIFEhRpxBE= -k8s.io/client-go v0.35.0/go.mod h1:q2E5AAyqcbeLGPdoRB+Nxe3KYTfPce1Dnu1myQdqz9o= -k8s.io/component-base v0.35.0 h1:+yBrOhzri2S1BVqyVSvcM3PtPyx5GUxCK2tinZz1G94= -k8s.io/component-base v0.35.0/go.mod h1:85SCX4UCa6SCFt6p3IKAPej7jSnF3L8EbfSyMZayJR0= +k8s.io/client-go v0.35.1 h1:+eSfZHwuo/I19PaSxqumjqZ9l5XiTEKbIaJ+j1wLcLM= +k8s.io/client-go v0.35.1/go.mod h1:1p1KxDt3a0ruRfc/pG4qT/3oHmUj1AhSHEcxNSGg+OA= +k8s.io/component-base v0.35.1 h1:XgvpRf4srp037QWfGBLFsYMUQJkE5yMa94UsJU7pmcE= +k8s.io/component-base v0.35.1/go.mod h1:HI/6jXlwkiOL5zL9bqA3en1Ygv60F03oEpnuU1G56Bs= k8s.io/klog/v2 v2.130.1 h1:n9Xl7H1Xvksem4KFG4PYbdQCQxqc/tTUyrgXaOhHSzk= k8s.io/klog/v2 v2.130.1/go.mod h1:3Jpz1GvMt720eyJH1ckRHK1EDfpxISzJ7I9OYgaDtPE= k8s.io/kube-openapi v0.0.0-20260127142750-a19766b6e2d4 h1:HhDfevmPS+OalTjQRKbTHppRIz01AWi8s45TMXStgYY= From 8f772d69088ba0720a6b1c0ec2ee4b11fae699db Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 13 Feb 2026 11:23:19 +0000 Subject: [PATCH 12/24] Bump google.golang.org/grpc from 1.78.0 to 1.79.0 (#1915) Bumps [google.golang.org/grpc](https://github.com/grpc/grpc-go) from 1.78.0 to 1.79.0. - [Release notes](https://github.com/grpc/grpc-go/releases) - [Commits](https://github.com/grpc/grpc-go/compare/v1.78.0...v1.79.0) --- updated-dependencies: - dependency-name: google.golang.org/grpc dependency-version: 1.79.0 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Upstream-repository: operator-registry Upstream-commit: 01a4defc6008c145c4636d0f7bdab45153653231 --- staging/operator-registry/go.mod | 2 +- staging/operator-registry/go.sum | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/staging/operator-registry/go.mod b/staging/operator-registry/go.mod index fc44382e75..e40d17413b 100644 --- a/staging/operator-registry/go.mod +++ b/staging/operator-registry/go.mod @@ -40,7 +40,7 @@ require ( golang.org/x/sync v0.19.0 golang.org/x/sys v0.41.0 golang.org/x/text v0.34.0 - google.golang.org/grpc v1.78.0 + google.golang.org/grpc v1.79.0 google.golang.org/grpc/cmd/protoc-gen-go-grpc v1.6.1 google.golang.org/protobuf v1.36.11 gopkg.in/yaml.v2 v2.4.0 diff --git a/staging/operator-registry/go.sum b/staging/operator-registry/go.sum index a8e3f35f66..97a36d2e10 100644 --- a/staging/operator-registry/go.sum +++ b/staging/operator-registry/go.sum @@ -672,8 +672,8 @@ google.golang.org/grpc v1.23.0/go.mod h1:Y5yQAOtifL1yxbo5wqy6BxZv8vAUGQwXBOALyac google.golang.org/grpc v1.25.1/go.mod h1:c3i+UQWmh7LiEpx4sFZnkU36qjEYZ0imhYfXVyQciAY= google.golang.org/grpc v1.27.0/go.mod h1:qbnxyOmOxrQa7FizSgH+ReBfzJrCY1pSN7KXBS8abTk= google.golang.org/grpc v1.33.2/go.mod h1:JMHMWHQWaTccqQQlmk3MJZS+GWXOdAesneDmEnv2fbc= -google.golang.org/grpc v1.78.0 h1:K1XZG/yGDJnzMdd/uZHAkVqJE+xIDOcmdSFZkBUicNc= -google.golang.org/grpc v1.78.0/go.mod h1:I47qjTo4OKbMkjA/aOOwxDIiPSBofUtQUI5EfpWvW7U= +google.golang.org/grpc v1.79.0 h1:6/+EFlxsMyoSbHbBoEDx94n/Ycx/bi0IhJ5Qh7b7LaA= +google.golang.org/grpc v1.79.0/go.mod h1:KmT0Kjez+0dde/v2j9vzwoAScgEPx/Bw1CYChhHLrHQ= google.golang.org/grpc/cmd/protoc-gen-go-grpc v1.6.1 h1:/WILD1UcXj/ujCxgoL/DvRgt2CP3txG8+FwkUbb9110= google.golang.org/grpc/cmd/protoc-gen-go-grpc v1.6.1/go.mod h1:YNKnb2OAApgYn2oYY47Rn7alMr1zWjb2U8Q0aoGWiNc= google.golang.org/protobuf v0.0.0-20200109180630-ec00e32a8dfd/go.mod h1:DFci5gLYBciE7Vtevhsrf46CRTquxDuWsQurQQe4oz8= From f0d196df25d61e3da9000d537a7eb8a1a9aed567 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 18 Feb 2026 05:47:49 +0000 Subject: [PATCH 13/24] Bump google.golang.org/grpc from 1.79.0 to 1.79.1 (#1916) Bumps [google.golang.org/grpc](https://github.com/grpc/grpc-go) from 1.79.0 to 1.79.1. - [Release notes](https://github.com/grpc/grpc-go/releases) - [Commits](https://github.com/grpc/grpc-go/compare/v1.79.0...v1.79.1) --- updated-dependencies: - dependency-name: google.golang.org/grpc dependency-version: 1.79.1 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Upstream-repository: operator-registry Upstream-commit: 7bdb135d2d3fcfc20272c726abeb0986d1ed0632 --- staging/operator-registry/go.mod | 2 +- staging/operator-registry/go.sum | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/staging/operator-registry/go.mod b/staging/operator-registry/go.mod index e40d17413b..86179b472a 100644 --- a/staging/operator-registry/go.mod +++ b/staging/operator-registry/go.mod @@ -40,7 +40,7 @@ require ( golang.org/x/sync v0.19.0 golang.org/x/sys v0.41.0 golang.org/x/text v0.34.0 - google.golang.org/grpc v1.79.0 + google.golang.org/grpc v1.79.1 google.golang.org/grpc/cmd/protoc-gen-go-grpc v1.6.1 google.golang.org/protobuf v1.36.11 gopkg.in/yaml.v2 v2.4.0 diff --git a/staging/operator-registry/go.sum b/staging/operator-registry/go.sum index 97a36d2e10..34f4ee5649 100644 --- a/staging/operator-registry/go.sum +++ b/staging/operator-registry/go.sum @@ -672,8 +672,8 @@ google.golang.org/grpc v1.23.0/go.mod h1:Y5yQAOtifL1yxbo5wqy6BxZv8vAUGQwXBOALyac google.golang.org/grpc v1.25.1/go.mod h1:c3i+UQWmh7LiEpx4sFZnkU36qjEYZ0imhYfXVyQciAY= google.golang.org/grpc v1.27.0/go.mod h1:qbnxyOmOxrQa7FizSgH+ReBfzJrCY1pSN7KXBS8abTk= google.golang.org/grpc v1.33.2/go.mod h1:JMHMWHQWaTccqQQlmk3MJZS+GWXOdAesneDmEnv2fbc= -google.golang.org/grpc v1.79.0 h1:6/+EFlxsMyoSbHbBoEDx94n/Ycx/bi0IhJ5Qh7b7LaA= -google.golang.org/grpc v1.79.0/go.mod h1:KmT0Kjez+0dde/v2j9vzwoAScgEPx/Bw1CYChhHLrHQ= +google.golang.org/grpc v1.79.1 h1:zGhSi45ODB9/p3VAawt9a+O/MULLl9dpizzNNpq7flY= +google.golang.org/grpc v1.79.1/go.mod h1:KmT0Kjez+0dde/v2j9vzwoAScgEPx/Bw1CYChhHLrHQ= google.golang.org/grpc/cmd/protoc-gen-go-grpc v1.6.1 h1:/WILD1UcXj/ujCxgoL/DvRgt2CP3txG8+FwkUbb9110= google.golang.org/grpc/cmd/protoc-gen-go-grpc v1.6.1/go.mod h1:YNKnb2OAApgYn2oYY47Rn7alMr1zWjb2U8Q0aoGWiNc= google.golang.org/protobuf v0.0.0-20200109180630-ec00e32a8dfd/go.mod h1:DFci5gLYBciE7Vtevhsrf46CRTquxDuWsQurQQe4oz8= From e601b8418c7976857f8e217ef809ac825b9828b9 Mon Sep 17 00:00:00 2001 From: Jordan Keister Date: Mon, 23 Feb 2026 04:16:31 -0600 Subject: [PATCH 14/24] adding olm.bundle image/relatedImages pullspec format validation (#1905) Assisted-By: Claude Signed-off-by: grokspawn Upstream-repository: operator-registry Upstream-commit: 81aee76714444d98e39a56dcc9229a633ca4b36f --- .../alpha/declcfg/declcfg_to_model.go | 22 ++++++ .../alpha/declcfg/declcfg_to_model_test.go | 76 +++++++++++++++++++ .../alpha/declcfg/declcfg_to_model.go | 22 ++++++ 3 files changed, 120 insertions(+) diff --git a/staging/operator-registry/alpha/declcfg/declcfg_to_model.go b/staging/operator-registry/alpha/declcfg/declcfg_to_model.go index 62dfd13ca7..68e04b0f21 100644 --- a/staging/operator-registry/alpha/declcfg/declcfg_to_model.go +++ b/staging/operator-registry/alpha/declcfg/declcfg_to_model.go @@ -4,6 +4,7 @@ import ( "fmt" "github.com/blang/semver/v4" + "go.podman.io/image/v5/docker/reference" "k8s.io/apimachinery/pkg/util/sets" "k8s.io/apimachinery/pkg/util/validation" @@ -128,6 +129,15 @@ func ConvertToModel(cfg DeclarativeConfig) (model.Model, error) { return nil, fmt.Errorf("package %q does not match %q property %q", b.Package, property.TypePackage, props.Packages[0].PackageName) } + if err := validateImagePullSpec(b.Image, "package %q bundle %q image", b.Package, b.Name); err != nil { + return nil, err + } + for i, rel := range b.RelatedImages { + if err := validateImagePullSpec(rel.Image, "package %q bundle %q relatedImages[%d].image", b.Package, b.Name, i); err != nil { + return nil, err + } + } + // Parse version from the package property. rawVersion := props.Packages[0].Version ver, err := semver.Parse(rawVersion) @@ -269,3 +279,15 @@ func relatedImagesToModelRelatedImages(in []RelatedImage) []model.RelatedImage { } return out } + +// validateImagePullSpec checks that a non-empty image pull spec is valid +// Empty pull specs are not validated. +func validateImagePullSpec(pullSpec, errFormat string, errArgs ...interface{}) error { + if pullSpec == "" { + return nil + } + if _, err := reference.ParseNormalizedNamed(pullSpec); err != nil { + return fmt.Errorf(errFormat+": invalid image pull spec %q: %w", append(errArgs, pullSpec, err)...) + } + return nil +} diff --git a/staging/operator-registry/alpha/declcfg/declcfg_to_model_test.go b/staging/operator-registry/alpha/declcfg/declcfg_to_model_test.go index 7a5b363774..2e176ba24c 100644 --- a/staging/operator-registry/alpha/declcfg/declcfg_to_model_test.go +++ b/staging/operator-registry/alpha/declcfg/declcfg_to_model_test.go @@ -506,6 +506,71 @@ func TestConvertToModel(t *testing.T) { })}, }, }, + { + name: "Error/BundleImageInvalidPullSpecUnsupportedDigestSsha256", + assertion: hasErrorContaining("invalid image pull spec"), + cfg: DeclarativeConfig{ + Packages: []Package{newTestPackage("foo", "alpha", svgSmallCircle)}, + Channels: []Channel{newTestChannel("foo", "alpha", ChannelEntry{Name: testBundleName("foo", "0.1.0")})}, + Bundles: []Bundle{newTestBundle("foo", "0.1.0", func(b *Bundle) { + // Misspelled digest algorithm: ssha256 instead of sha256 (unsupported hash type) + b.Image = "quay.io/operator-framework/foo-bundle@ssha256:abcd1234abcd1234abcd1234abcd1234abcd1234abcd1234abcd1234abcd1234abcd1234" + })}, + }, + }, + { + name: "Error/BundleImageInvalidPullSpecUnsupportedDigestMd5", + assertion: hasErrorContaining("invalid image pull spec"), + cfg: DeclarativeConfig{ + Packages: []Package{newTestPackage("foo", "alpha", svgSmallCircle)}, + Channels: []Channel{newTestChannel("foo", "alpha", ChannelEntry{Name: testBundleName("foo", "0.1.0")})}, + Bundles: []Bundle{newTestBundle("foo", "0.1.0", func(b *Bundle) { + b.Image = "quay.io/operator-framework/foo-bundle@md5:abcd1234abcd1234abcd1234abcd1234" + })}, + }, + }, + { + name: "Error/BundleRelatedImageInvalidPullSpecSsha256", + assertion: hasErrorContaining("invalid image pull spec"), + cfg: DeclarativeConfig{ + Packages: []Package{newTestPackage("foo", "alpha", svgSmallCircle)}, + Channels: []Channel{newTestChannel("foo", "alpha", ChannelEntry{Name: testBundleName("foo", "0.1.0")})}, + Bundles: []Bundle{newTestBundle("foo", "0.1.0", func(b *Bundle) { + b.RelatedImages = []RelatedImage{ + {Name: "bundle", Image: testBundleImage("foo", "0.1.0")}, + {Name: "operator", Image: "quay.io/operator-framework/my-operator@ssha256:abcd1234abcd1234abcd1234abcd1234abcd1234abcd1234abcd1234abcd1234"}, + } + })}, + }, + }, + { + name: "Success/BundleImageValidSha256Digest", + assertion: require.NoError, + cfg: DeclarativeConfig{ + Packages: []Package{newTestPackage("foo", "alpha", svgSmallCircle)}, + Channels: []Channel{newTestChannel("foo", "alpha", ChannelEntry{Name: testBundleName("foo", "0.1.0")})}, + Bundles: []Bundle{newTestBundle("foo", "0.1.0", func(b *Bundle) { + b.Image = "quay.io/operator-framework/foo-bundle@sha256:abcd1234abcd1234abcd1234abcd1234abcd1234abcd1234abcd1234abcd1234" + b.RelatedImages = []RelatedImage{ + {Name: "bundle", Image: "quay.io/operator-framework/foo-bundle@sha256:abcd1234abcd1234abcd1234abcd1234abcd1234abcd1234abcd1234abcd1234"}, + } + })}, + }, + }, + { + name: "Success/BundleImageValidTagWithDigest", + assertion: require.NoError, + cfg: DeclarativeConfig{ + Packages: []Package{newTestPackage("foo", "alpha", svgSmallCircle)}, + Channels: []Channel{newTestChannel("foo", "alpha", ChannelEntry{Name: testBundleName("foo", "0.1.0")})}, + Bundles: []Bundle{newTestBundle("foo", "0.1.0", func(b *Bundle) { + b.Image = "quay.io/operator-framework/foo-bundle:v0.1.0@sha256:abcd1234abcd1234abcd1234abcd1234abcd1234abcd1234abcd1234abcd1234" + b.RelatedImages = []RelatedImage{ + {Name: "bundle", Image: "quay.io/operator-framework/foo-bundle:v0.1.0@sha256:abcd1234abcd1234abcd1234abcd1234abcd1234abcd1234abcd1234abcd1234"}, + } + })}, + }, + }, } for _, s := range specs { @@ -577,3 +642,14 @@ func hasError(expectedError string) require.ErrorAssertionFunc { t.FailNow() } } + +// hasErrorContaining returns an ErrorAssertionFunc that passes when the error message contains the given substring. +func hasErrorContaining(substring string) require.ErrorAssertionFunc { + return func(t require.TestingT, actualError error, args ...interface{}) { + if stdt, ok := t.(*testing.T); ok { + stdt.Helper() + } + require.Error(t, actualError) + require.Contains(t, actualError.Error(), substring, "expected error to contain %q", substring) + } +} diff --git a/vendor/github.com/operator-framework/operator-registry/alpha/declcfg/declcfg_to_model.go b/vendor/github.com/operator-framework/operator-registry/alpha/declcfg/declcfg_to_model.go index 62dfd13ca7..68e04b0f21 100644 --- a/vendor/github.com/operator-framework/operator-registry/alpha/declcfg/declcfg_to_model.go +++ b/vendor/github.com/operator-framework/operator-registry/alpha/declcfg/declcfg_to_model.go @@ -4,6 +4,7 @@ import ( "fmt" "github.com/blang/semver/v4" + "go.podman.io/image/v5/docker/reference" "k8s.io/apimachinery/pkg/util/sets" "k8s.io/apimachinery/pkg/util/validation" @@ -128,6 +129,15 @@ func ConvertToModel(cfg DeclarativeConfig) (model.Model, error) { return nil, fmt.Errorf("package %q does not match %q property %q", b.Package, property.TypePackage, props.Packages[0].PackageName) } + if err := validateImagePullSpec(b.Image, "package %q bundle %q image", b.Package, b.Name); err != nil { + return nil, err + } + for i, rel := range b.RelatedImages { + if err := validateImagePullSpec(rel.Image, "package %q bundle %q relatedImages[%d].image", b.Package, b.Name, i); err != nil { + return nil, err + } + } + // Parse version from the package property. rawVersion := props.Packages[0].Version ver, err := semver.Parse(rawVersion) @@ -269,3 +279,15 @@ func relatedImagesToModelRelatedImages(in []RelatedImage) []model.RelatedImage { } return out } + +// validateImagePullSpec checks that a non-empty image pull spec is valid +// Empty pull specs are not validated. +func validateImagePullSpec(pullSpec, errFormat string, errArgs ...interface{}) error { + if pullSpec == "" { + return nil + } + if _, err := reference.ParseNormalizedNamed(pullSpec); err != nil { + return fmt.Errorf(errFormat+": invalid image pull spec %q: %w", append(errArgs, pullSpec, err)...) + } + return nil +} From 201e7fb3716c7ad134427f96135248d5ba5a6149 Mon Sep 17 00:00:00 2001 From: Jordan Keister Date: Mon, 23 Feb 2026 04:22:06 -0600 Subject: [PATCH 15/24] handle cases where spec.version.release is a number instead of string (#1909) Assisted-By: claude Signed-off-by: grokspawn Upstream-repository: operator-registry Upstream-commit: f410a396abe01dbe6a46b6d90d34bdd844306388 --- staging/operator-registry/pkg/registry/csv.go | 19 +++- .../pkg/registry/csv_test.go | 95 +++++++++++++++++++ .../operator-registry/pkg/registry/csv.go | 19 +++- 3 files changed, 127 insertions(+), 6 deletions(-) diff --git a/staging/operator-registry/pkg/registry/csv.go b/staging/operator-registry/pkg/registry/csv.go index fec3d2907b..26766f6b60 100644 --- a/staging/operator-registry/pkg/registry/csv.go +++ b/staging/operator-registry/pkg/registry/csv.go @@ -187,6 +187,7 @@ func (csv *ClusterServiceVersion) GetVersion() (string, error) { // GetRelease returns the release of the CSV // // If not defined, the function returns an empty string. +// The release field can be either a string or a number. func (csv *ClusterServiceVersion) GetRelease() (string, error) { var objmap map[string]*json.RawMessage if err := json.Unmarshal(csv.Spec, &objmap); err != nil { @@ -198,12 +199,24 @@ func (csv *ClusterServiceVersion) GetRelease() (string, error) { return "", nil } + // Try to unmarshal as string first (the expected type) var r string - if err := json.Unmarshal(*rawValue, &r); err != nil { - return "", err + if err := json.Unmarshal(*rawValue, &r); err == nil { + return r, nil + } + + // If string unmarshal fails, try as a number and convert to string + var num float64 + if err := json.Unmarshal(*rawValue, &num); err == nil { + // Format as integer if it's a whole number, otherwise as float + if num == float64(int64(num)) { + return fmt.Sprintf("%d", int64(num)), nil + } + return fmt.Sprintf("%g", num), nil } - return r, nil + // If both attempts fail, return an error + return "", fmt.Errorf("release field must be a string or number") } // GetSkipRange returns the skiprange of the CSV diff --git a/staging/operator-registry/pkg/registry/csv_test.go b/staging/operator-registry/pkg/registry/csv_test.go index 59a64cc8a7..b0553eef43 100644 --- a/staging/operator-registry/pkg/registry/csv_test.go +++ b/staging/operator-registry/pkg/registry/csv_test.go @@ -465,6 +465,101 @@ func TestClusterServiceVersion_GetVersion(t *testing.T) { } } +func TestClusterServiceVersion_GetRelease(t *testing.T) { + type fields struct { + TypeMeta metav1.TypeMeta + ObjectMeta metav1.ObjectMeta + Spec json.RawMessage + } + tests := []struct { + name string + fields fields + want string + wantErr bool + }{ + { + name: "string release", + fields: fields{ + TypeMeta: metav1.TypeMeta{}, + ObjectMeta: metav1.ObjectMeta{}, + Spec: json.RawMessage(`{"release": "1.0.0"}`), + }, + want: "1.0.0", + }, + { + name: "integer numeric release", + fields: fields{ + TypeMeta: metav1.TypeMeta{}, + ObjectMeta: metav1.ObjectMeta{}, + Spec: json.RawMessage(`{"release": 20250104}`), + }, + want: "20250104", + }, + { + name: "float numeric release", + fields: fields{ + TypeMeta: metav1.TypeMeta{}, + ObjectMeta: metav1.ObjectMeta{}, + Spec: json.RawMessage(`{"release": 0.20250104}`), + }, + want: "0.20250104", + }, + { + name: "large integer release", + fields: fields{ + TypeMeta: metav1.TypeMeta{}, + ObjectMeta: metav1.ObjectMeta{}, + Spec: json.RawMessage(`{"release": 20250104235959}`), + }, + want: "20250104235959", + }, + { + name: "no release field", + fields: fields{ + TypeMeta: metav1.TypeMeta{}, + ObjectMeta: metav1.ObjectMeta{}, + Spec: json.RawMessage(`{"other": "field"}`), + }, + want: "", + }, + { + name: "null release", + fields: fields{ + TypeMeta: metav1.TypeMeta{}, + ObjectMeta: metav1.ObjectMeta{}, + Spec: json.RawMessage(`{"release": null}`), + }, + want: "", + }, + { + name: "invalid release type", + fields: fields{ + TypeMeta: metav1.TypeMeta{}, + ObjectMeta: metav1.ObjectMeta{}, + Spec: json.RawMessage(`{"release": true}`), + }, + wantErr: true, + }, + } + for _, tt := range tests { + t.Run(tt.name, func(t *testing.T) { + csv := &ClusterServiceVersion{ + TypeMeta: tt.fields.TypeMeta, + ObjectMeta: tt.fields.ObjectMeta, + Spec: tt.fields.Spec, + } + got, err := csv.GetRelease() + if (err != nil) != tt.wantErr { + t.Errorf("GetRelease() error = %v, wantErr %v", err, tt.wantErr) + return + } + if got != tt.want { + t.Errorf("GetRelease() got = %v, want %v", got, tt.want) + } + }) + } +} + func TestClusterServiceVersion_GetRelatedImages(t *testing.T) { type fields struct { TypeMeta metav1.TypeMeta diff --git a/vendor/github.com/operator-framework/operator-registry/pkg/registry/csv.go b/vendor/github.com/operator-framework/operator-registry/pkg/registry/csv.go index fec3d2907b..26766f6b60 100644 --- a/vendor/github.com/operator-framework/operator-registry/pkg/registry/csv.go +++ b/vendor/github.com/operator-framework/operator-registry/pkg/registry/csv.go @@ -187,6 +187,7 @@ func (csv *ClusterServiceVersion) GetVersion() (string, error) { // GetRelease returns the release of the CSV // // If not defined, the function returns an empty string. +// The release field can be either a string or a number. func (csv *ClusterServiceVersion) GetRelease() (string, error) { var objmap map[string]*json.RawMessage if err := json.Unmarshal(csv.Spec, &objmap); err != nil { @@ -198,12 +199,24 @@ func (csv *ClusterServiceVersion) GetRelease() (string, error) { return "", nil } + // Try to unmarshal as string first (the expected type) var r string - if err := json.Unmarshal(*rawValue, &r); err != nil { - return "", err + if err := json.Unmarshal(*rawValue, &r); err == nil { + return r, nil + } + + // If string unmarshal fails, try as a number and convert to string + var num float64 + if err := json.Unmarshal(*rawValue, &num); err == nil { + // Format as integer if it's a whole number, otherwise as float + if num == float64(int64(num)) { + return fmt.Sprintf("%d", int64(num)), nil + } + return fmt.Sprintf("%g", num), nil } - return r, nil + // If both attempts fail, return an error + return "", fmt.Errorf("release field must be a string or number") } // GetSkipRange returns the skiprange of the CSV From e8668e300f4810d6de5fd0289d99917d0bc9a919 Mon Sep 17 00:00:00 2001 From: Todd Short Date: Thu, 26 Feb 2026 21:41:48 -0500 Subject: [PATCH 16/24] Update to go 1.25.7 (#1918) Signed-off-by: Todd Short Upstream-repository: operator-registry Upstream-commit: 1731fc868fa12e14f0583d06cf0165a314614f62 --- staging/operator-registry/go.mod | 2 +- vendor/modules.txt | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/staging/operator-registry/go.mod b/staging/operator-registry/go.mod index 86179b472a..1e77d2eefd 100644 --- a/staging/operator-registry/go.mod +++ b/staging/operator-registry/go.mod @@ -1,6 +1,6 @@ module github.com/operator-framework/operator-registry -go 1.25.3 +go 1.25.7 require ( github.com/akrylysov/pogreb v0.10.2 diff --git a/vendor/modules.txt b/vendor/modules.txt index b1689107f5..965931cd3f 100644 --- a/vendor/modules.txt +++ b/vendor/modules.txt @@ -757,7 +757,7 @@ github.com/operator-framework/operator-lifecycle-manager/pkg/package-server/vers github.com/operator-framework/operator-lifecycle-manager/pkg/version github.com/operator-framework/operator-lifecycle-manager/util/cpb # github.com/operator-framework/operator-registry v1.64.0 => ./staging/operator-registry -## explicit; go 1.25.3 +## explicit; go 1.25.7 github.com/operator-framework/operator-registry/alpha/action github.com/operator-framework/operator-registry/alpha/action/migrations github.com/operator-framework/operator-registry/alpha/declcfg From cf0b109b69da06a3e91dbebf28efcfcf731c62b4 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 27 Feb 2026 04:32:13 +0000 Subject: [PATCH 17/24] Bump github.com/operator-framework/api from 0.39.0 to 0.40.0 (#1917) Bumps [github.com/operator-framework/api](https://github.com/operator-framework/api) from 0.39.0 to 0.40.0. - [Release notes](https://github.com/operator-framework/api/releases) - [Changelog](https://github.com/operator-framework/api/blob/master/RELEASE.md) - [Commits](https://github.com/operator-framework/api/compare/v0.39.0...v0.40.0) --- updated-dependencies: - dependency-name: github.com/operator-framework/api dependency-version: 0.40.0 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Upstream-repository: operator-registry Upstream-commit: ce760e12583de9c47ff57ffa2df02bda27136be7 --- staging/operator-registry/go.mod | 2 +- staging/operator-registry/go.sum | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/staging/operator-registry/go.mod b/staging/operator-registry/go.mod index 1e77d2eefd..542716e9ad 100644 --- a/staging/operator-registry/go.mod +++ b/staging/operator-registry/go.mod @@ -24,7 +24,7 @@ require ( github.com/onsi/gomega v1.39.1 github.com/opencontainers/go-digest v1.0.0 github.com/opencontainers/image-spec v1.1.1 - github.com/operator-framework/api v0.39.0 + github.com/operator-framework/api v0.40.0 github.com/otiai10/copy v1.14.1 github.com/pkg/errors v0.9.1 github.com/sirupsen/logrus v1.9.4 diff --git a/staging/operator-registry/go.sum b/staging/operator-registry/go.sum index 34f4ee5649..3167b125f0 100644 --- a/staging/operator-registry/go.sum +++ b/staging/operator-registry/go.sum @@ -337,8 +337,8 @@ github.com/opencontainers/image-spec v1.1.1 h1:y0fUlFfIZhPF1W537XOLg0/fcx6zcHCJw github.com/opencontainers/image-spec v1.1.1/go.mod h1:qpqAh3Dmcf36wStyyWU+kCeDgrGnAve2nCC8+7h8Q0M= github.com/opencontainers/runtime-spec v1.3.0 h1:YZupQUdctfhpZy3TM39nN9Ika5CBWT5diQ8ibYCRkxg= github.com/opencontainers/runtime-spec v1.3.0/go.mod h1:jwyrGlmzljRJv/Fgzds9SsS/C5hL+LL3ko9hs6T5lQ0= -github.com/operator-framework/api v0.39.0 h1:9h7aVufeQ+l2ACXJE51hkMFcqrQwJOLM6/vwgGu6tgI= -github.com/operator-framework/api v0.39.0/go.mod h1:tcYIwuznZzfo4HKUTu0dbquIHqxiewnKW/ZmhHKzMH8= +github.com/operator-framework/api v0.40.0 h1:xTTKJM6Yv6sr/pLibiINlnaXy+iNClmCo5QJMeHwyuc= +github.com/operator-framework/api v0.40.0/go.mod h1:cMF6TTZ2BgBoV/sDlO4Pm7G2jma7JlEsCYXjOOqwrnw= github.com/otiai10/copy v1.14.1 h1:5/7E6qsUMBaH5AnQ0sSLzzTg1oTECmcCmT6lvF45Na8= github.com/otiai10/copy v1.14.1/go.mod h1:oQwrEDDOci3IM8dJF0d8+jnbfPDllW6vUjNc3DoZm9I= github.com/otiai10/mint v1.6.3 h1:87qsV/aw1F5as1eH1zS/yqHY85ANKVMgkDrf9rcxbQs= From e1d46dd7fe10f2cc56b4ec173e3fd931290e12e5 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 27 Feb 2026 04:35:00 +0000 Subject: [PATCH 18/24] Bump actions/download-artifact from 7 to 8 (#1919) Bumps [actions/download-artifact](https://github.com/actions/download-artifact) from 7 to 8. - [Release notes](https://github.com/actions/download-artifact/releases) - [Commits](https://github.com/actions/download-artifact/compare/v7...v8) --- updated-dependencies: - dependency-name: actions/download-artifact dependency-version: '8' dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Upstream-repository: operator-registry Upstream-commit: 8811033bc85a54a6fe6258354b11fef6987ff6a7 --- staging/operator-registry/.github/workflows/goreleaser.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/staging/operator-registry/.github/workflows/goreleaser.yaml b/staging/operator-registry/.github/workflows/goreleaser.yaml index 85703681d1..f503ef0afb 100644 --- a/staging/operator-registry/.github/workflows/goreleaser.yaml +++ b/staging/operator-registry/.github/workflows/goreleaser.yaml @@ -20,7 +20,7 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v6 - - uses: actions/download-artifact@v7 + - uses: actions/download-artifact@v8 - run: | for dist in dist-*; do From 495287c26455c3f56eed46013cb258f44796c9f1 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 27 Feb 2026 04:37:35 +0000 Subject: [PATCH 19/24] Bump actions/upload-artifact from 6 to 7 (#1920) Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 6 to 7. - [Release notes](https://github.com/actions/upload-artifact/releases) - [Commits](https://github.com/actions/upload-artifact/compare/v6...v7) --- updated-dependencies: - dependency-name: actions/upload-artifact dependency-version: '7' dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Upstream-repository: operator-registry Upstream-commit: 7474e676de1188793bd9d9bbcc45586dc451390f --- staging/operator-registry/.github/workflows/goreleaser.yaml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/staging/operator-registry/.github/workflows/goreleaser.yaml b/staging/operator-registry/.github/workflows/goreleaser.yaml index f503ef0afb..8b19a1ebc4 100644 --- a/staging/operator-registry/.github/workflows/goreleaser.yaml +++ b/staging/operator-registry/.github/workflows/goreleaser.yaml @@ -64,7 +64,7 @@ jobs: RELEASE_ARGS: release --verbose --skip=validate --clean -f release/goreleaser.windows.yaml ${{ github.event_name == 'pull_request' && '--snapshot' || '' }} - run: tar -cvf dist-windows.tar dist - - uses: actions/upload-artifact@v6 + - uses: actions/upload-artifact@v7 with: name: dist-windows path: dist-windows.tar @@ -88,7 +88,7 @@ jobs: RELEASE_ARGS: release --verbose --clean -f release/goreleaser.darwin.yaml --skip=validate ${{ github.event_name == 'pull_request' && '--snapshot' || '' }} - run: gtar -cvf dist-darwin.tar dist - - uses: actions/upload-artifact@v6 + - uses: actions/upload-artifact@v7 with: name: dist-darwin path: dist-darwin.tar @@ -146,7 +146,7 @@ jobs: RELEASE_ARGS: release --verbose --clean -f release/goreleaser.linux.yaml --skip=validate ${{ github.event_name == 'pull_request' && '--snapshot' || '' }} - run: tar -cvf dist-linux.tar dist - - uses: actions/upload-artifact@v6 + - uses: actions/upload-artifact@v7 with: name: dist-linux path: dist-linux.tar From 3bf5ed39bf88905b756f76fc7e18a93866c7a30b Mon Sep 17 00:00:00 2001 From: Jordan Keister Date: Fri, 27 Feb 2026 15:31:43 -0600 Subject: [PATCH 20/24] bumping api to capture go bumps across the whole o-f set (#1921) Signed-off-by: grokspawn Upstream-repository: operator-registry Upstream-commit: 4bf3823b24386a1061188b2907d2a62d5e63d167 --- staging/operator-registry/go.mod | 2 +- staging/operator-registry/go.sum | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/staging/operator-registry/go.mod b/staging/operator-registry/go.mod index 542716e9ad..c3de54805a 100644 --- a/staging/operator-registry/go.mod +++ b/staging/operator-registry/go.mod @@ -24,7 +24,7 @@ require ( github.com/onsi/gomega v1.39.1 github.com/opencontainers/go-digest v1.0.0 github.com/opencontainers/image-spec v1.1.1 - github.com/operator-framework/api v0.40.0 + github.com/operator-framework/api v0.41.0 github.com/otiai10/copy v1.14.1 github.com/pkg/errors v0.9.1 github.com/sirupsen/logrus v1.9.4 diff --git a/staging/operator-registry/go.sum b/staging/operator-registry/go.sum index 3167b125f0..e4642d6534 100644 --- a/staging/operator-registry/go.sum +++ b/staging/operator-registry/go.sum @@ -337,8 +337,8 @@ github.com/opencontainers/image-spec v1.1.1 h1:y0fUlFfIZhPF1W537XOLg0/fcx6zcHCJw github.com/opencontainers/image-spec v1.1.1/go.mod h1:qpqAh3Dmcf36wStyyWU+kCeDgrGnAve2nCC8+7h8Q0M= github.com/opencontainers/runtime-spec v1.3.0 h1:YZupQUdctfhpZy3TM39nN9Ika5CBWT5diQ8ibYCRkxg= github.com/opencontainers/runtime-spec v1.3.0/go.mod h1:jwyrGlmzljRJv/Fgzds9SsS/C5hL+LL3ko9hs6T5lQ0= -github.com/operator-framework/api v0.40.0 h1:xTTKJM6Yv6sr/pLibiINlnaXy+iNClmCo5QJMeHwyuc= -github.com/operator-framework/api v0.40.0/go.mod h1:cMF6TTZ2BgBoV/sDlO4Pm7G2jma7JlEsCYXjOOqwrnw= +github.com/operator-framework/api v0.41.0 h1:B0nutndl95elbLXJGRlkFNTI8OuZIjSqvTEeORPhTKo= +github.com/operator-framework/api v0.41.0/go.mod h1:Ouud+eqruzll9X3iv8wuAOTNAyyEncYXp4IVgbIlIdg= github.com/otiai10/copy v1.14.1 h1:5/7E6qsUMBaH5AnQ0sSLzzTg1oTECmcCmT6lvF45Na8= github.com/otiai10/copy v1.14.1/go.mod h1:oQwrEDDOci3IM8dJF0d8+jnbfPDllW6vUjNc3DoZm9I= github.com/otiai10/mint v1.6.3 h1:87qsV/aw1F5as1eH1zS/yqHY85ANKVMgkDrf9rcxbQs= From 363f3c9204042ebf4427bab95d98c874b42bc411 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 17 Feb 2026 15:49:09 +0000 Subject: [PATCH 21/24] Bump the k8s-dependencies group with 4 updates (#478) Bumps the k8s-dependencies group with 4 updates: [k8s.io/api](https://github.com/kubernetes/api), [k8s.io/apiextensions-apiserver](https://github.com/kubernetes/apiextensions-apiserver), [k8s.io/apimachinery](https://github.com/kubernetes/apimachinery) and [k8s.io/client-go](https://github.com/kubernetes/client-go). Updates `k8s.io/api` from 0.35.0 to 0.35.1 - [Commits](https://github.com/kubernetes/api/compare/v0.35.0...v0.35.1) Updates `k8s.io/apiextensions-apiserver` from 0.35.0 to 0.35.1 - [Release notes](https://github.com/kubernetes/apiextensions-apiserver/releases) - [Commits](https://github.com/kubernetes/apiextensions-apiserver/compare/v0.35.0...v0.35.1) Updates `k8s.io/apimachinery` from 0.35.0 to 0.35.1 - [Commits](https://github.com/kubernetes/apimachinery/compare/v0.35.0...v0.35.1) Updates `k8s.io/client-go` from 0.35.0 to 0.35.1 - [Changelog](https://github.com/kubernetes/client-go/blob/master/CHANGELOG.md) - [Commits](https://github.com/kubernetes/client-go/compare/v0.35.0...v0.35.1) --- updated-dependencies: - dependency-name: k8s.io/api dependency-version: 0.35.1 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: k8s-dependencies - dependency-name: k8s.io/apiextensions-apiserver dependency-version: 0.35.1 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: k8s-dependencies - dependency-name: k8s.io/apimachinery dependency-version: 0.35.1 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: k8s-dependencies - dependency-name: k8s.io/client-go dependency-version: 0.35.1 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: k8s-dependencies ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Upstream-repository: api Upstream-commit: 1b5c3eaae4931fe77f2933d71ad3d32d9bdedcbb --- staging/api/go.mod | 12 ++++++------ staging/api/go.sum | 24 ++++++++++++------------ 2 files changed, 18 insertions(+), 18 deletions(-) diff --git a/staging/api/go.mod b/staging/api/go.mod index 5ca112dfdd..f4c10dbc8b 100644 --- a/staging/api/go.mod +++ b/staging/api/go.mod @@ -10,10 +10,10 @@ require ( github.com/spf13/cobra v1.10.2 github.com/stretchr/testify v1.11.1 google.golang.org/genproto/googleapis/api v0.0.0-20260202165425-ce8ad4cf556b - k8s.io/api v0.35.0 - k8s.io/apiextensions-apiserver v0.35.0 - k8s.io/apimachinery v0.35.0 - k8s.io/client-go v0.35.0 + k8s.io/api v0.35.1 + k8s.io/apiextensions-apiserver v0.35.1 + k8s.io/apimachinery v0.35.1 + k8s.io/client-go v0.35.1 sigs.k8s.io/controller-runtime v0.23.1 sigs.k8s.io/yaml v1.6.0 ) @@ -86,8 +86,8 @@ require ( google.golang.org/protobuf v1.36.11 // indirect gopkg.in/inf.v0 v0.9.1 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect - k8s.io/apiserver v0.35.0 // indirect - k8s.io/component-base v0.35.0 // indirect + k8s.io/apiserver v0.35.1 // indirect + k8s.io/component-base v0.35.1 // indirect k8s.io/klog/v2 v2.130.1 // indirect k8s.io/kube-openapi v0.0.0-20260127142750-a19766b6e2d4 // indirect k8s.io/utils v0.0.0-20260108192941-914a6e750570 // indirect diff --git a/staging/api/go.sum b/staging/api/go.sum index 6f48c1297b..864d98a6b5 100644 --- a/staging/api/go.sum +++ b/staging/api/go.sum @@ -241,18 +241,18 @@ gopkg.in/inf.v0 v0.9.1 h1:73M5CoZyi3ZLMOyDlQh031Cx6N9NDJ2Vvfl76EDAgDc= gopkg.in/inf.v0 v0.9.1/go.mod h1:cWUDdTG/fYaXco+Dcufb5Vnc6Gp2YChqWtbxRZE0mXw= gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= -k8s.io/api v0.35.0 h1:iBAU5LTyBI9vw3L5glmat1njFK34srdLmktWwLTprlY= -k8s.io/api v0.35.0/go.mod h1:AQ0SNTzm4ZAczM03QH42c7l3bih1TbAXYo0DkF8ktnA= -k8s.io/apiextensions-apiserver v0.35.0 h1:3xHk2rTOdWXXJM+RDQZJvdx0yEOgC0FgQ1PlJatA5T4= -k8s.io/apiextensions-apiserver v0.35.0/go.mod h1:E1Ahk9SADaLQ4qtzYFkwUqusXTcaV2uw3l14aqpL2LU= -k8s.io/apimachinery v0.35.0 h1:Z2L3IHvPVv/MJ7xRxHEtk6GoJElaAqDCCU0S6ncYok8= -k8s.io/apimachinery v0.35.0/go.mod h1:jQCgFZFR1F4Ik7hvr2g84RTJSZegBc8yHgFWKn//hns= -k8s.io/apiserver v0.35.0 h1:CUGo5o+7hW9GcAEF3x3usT3fX4f9r8xmgQeCBDaOgX4= -k8s.io/apiserver v0.35.0/go.mod h1:QUy1U4+PrzbJaM3XGu2tQ7U9A4udRRo5cyxkFX0GEds= -k8s.io/client-go v0.35.0 h1:IAW0ifFbfQQwQmga0UdoH0yvdqrbwMdq9vIFEhRpxBE= -k8s.io/client-go v0.35.0/go.mod h1:q2E5AAyqcbeLGPdoRB+Nxe3KYTfPce1Dnu1myQdqz9o= -k8s.io/component-base v0.35.0 h1:+yBrOhzri2S1BVqyVSvcM3PtPyx5GUxCK2tinZz1G94= -k8s.io/component-base v0.35.0/go.mod h1:85SCX4UCa6SCFt6p3IKAPej7jSnF3L8EbfSyMZayJR0= +k8s.io/api v0.35.1 h1:0PO/1FhlK/EQNVK5+txc4FuhQibV25VLSdLMmGpDE/Q= +k8s.io/api v0.35.1/go.mod h1:28uR9xlXWml9eT0uaGo6y71xK86JBELShLy4wR1XtxM= +k8s.io/apiextensions-apiserver v0.35.1 h1:p5vvALkknlOcAqARwjS20kJffgzHqwyQRM8vHLwgU7w= +k8s.io/apiextensions-apiserver v0.35.1/go.mod h1:2CN4fe1GZ3HMe4wBr25qXyJnJyZaquy4nNlNmb3R7AQ= +k8s.io/apimachinery v0.35.1 h1:yxO6gV555P1YV0SANtnTjXYfiivaTPvCTKX6w6qdDsU= +k8s.io/apimachinery v0.35.1/go.mod h1:jQCgFZFR1F4Ik7hvr2g84RTJSZegBc8yHgFWKn//hns= +k8s.io/apiserver v0.35.1 h1:potxdhhTL4i6AYAa2QCwtlhtB1eCdWQFvJV6fXgJzxs= +k8s.io/apiserver v0.35.1/go.mod h1:BiL6Dd3A2I/0lBnteXfWmCFobHM39vt5+hJQd7Lbpi4= +k8s.io/client-go v0.35.1 h1:+eSfZHwuo/I19PaSxqumjqZ9l5XiTEKbIaJ+j1wLcLM= +k8s.io/client-go v0.35.1/go.mod h1:1p1KxDt3a0ruRfc/pG4qT/3oHmUj1AhSHEcxNSGg+OA= +k8s.io/component-base v0.35.1 h1:XgvpRf4srp037QWfGBLFsYMUQJkE5yMa94UsJU7pmcE= +k8s.io/component-base v0.35.1/go.mod h1:HI/6jXlwkiOL5zL9bqA3en1Ygv60F03oEpnuU1G56Bs= k8s.io/klog/v2 v2.130.1 h1:n9Xl7H1Xvksem4KFG4PYbdQCQxqc/tTUyrgXaOhHSzk= k8s.io/klog/v2 v2.130.1/go.mod h1:3Jpz1GvMt720eyJH1ckRHK1EDfpxISzJ7I9OYgaDtPE= k8s.io/kube-openapi v0.0.0-20260127142750-a19766b6e2d4 h1:HhDfevmPS+OalTjQRKbTHppRIz01AWi8s45TMXStgYY= From 074f9aa8cff6c4794cc903d379a244e5a602efd2 Mon Sep 17 00:00:00 2001 From: Jordan Keister Date: Wed, 18 Feb 2026 09:15:40 -0600 Subject: [PATCH 22/24] add bundle relatedimage image pullspec validation (#475) Signed-off-by: grokspawn Upstream-repository: api Upstream-commit: 63554abeb51540fadade28fae27994da20de32f7 --- staging/api/go.mod | 3 + staging/api/go.sum | 6 + staging/api/pkg/validation/internal/bundle.go | 29 ++++ .../pkg/validation/internal/bundle_test.go | 150 ++++++++++++++++++ .../api/pkg/validation/internal/bundle.go | 29 ++++ 5 files changed, 217 insertions(+) diff --git a/staging/api/go.mod b/staging/api/go.mod index f4c10dbc8b..4e143fa20a 100644 --- a/staging/api/go.mod +++ b/staging/api/go.mod @@ -9,6 +9,7 @@ require ( github.com/sirupsen/logrus v1.9.4 github.com/spf13/cobra v1.10.2 github.com/stretchr/testify v1.11.1 + go.podman.io/image/v5 v5.39.1 google.golang.org/genproto/googleapis/api v0.0.0-20260202165425-ce8ad4cf556b k8s.io/api v0.35.1 k8s.io/apiextensions-apiserver v0.35.1 @@ -52,6 +53,7 @@ require ( github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect github.com/modern-go/reflect2 v1.0.3-0.20250322232337-35a7c28c31ee // indirect github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 // indirect + github.com/opencontainers/go-digest v1.0.0 // indirect github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 // indirect github.com/prometheus/client_golang v1.23.2 // indirect github.com/prometheus/client_model v0.6.2 // indirect @@ -68,6 +70,7 @@ require ( go.opentelemetry.io/otel/sdk v1.40.0 // indirect go.opentelemetry.io/otel/trace v1.40.0 // indirect go.opentelemetry.io/proto/otlp v1.9.0 // indirect + go.podman.io/storage v1.62.0 // indirect go.yaml.in/yaml/v2 v2.4.3 // indirect go.yaml.in/yaml/v3 v3.0.4 // indirect golang.org/x/exp v0.0.0-20260112195511-716be5621a96 // indirect diff --git a/staging/api/go.sum b/staging/api/go.sum index 864d98a6b5..754745c585 100644 --- a/staging/api/go.sum +++ b/staging/api/go.sum @@ -118,6 +118,8 @@ github.com/onsi/ginkgo/v2 v2.27.2 h1:LzwLj0b89qtIy6SSASkzlNvX6WktqurSHwkk2ipF/Ns github.com/onsi/ginkgo/v2 v2.27.2/go.mod h1:ArE1D/XhNXBXCBkKOLkbsb2c81dQHCRcF5zwn/ykDRo= github.com/onsi/gomega v1.38.2 h1:eZCjf2xjZAqe+LeWvKb5weQ+NcPwX84kqJ0cZNxok2A= github.com/onsi/gomega v1.38.2/go.mod h1:W2MJcYxRGV63b418Ai34Ud0hEdTVXq9NW9+Sx6uXf3k= +github.com/opencontainers/go-digest v1.0.0 h1:apOUWs51W5PlhuyGyz9FCeeBIOUDA/6nW8Oi/yOhh5U= +github.com/opencontainers/go-digest v1.0.0/go.mod h1:0JzlMkj0TRzQZfJkVvzbP0HBR3IKzErnv2BNG4W4MAM= github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 h1:Jamvg5psRIccs7FGNTlIRMkT8wgtp5eCXdBlqhYGL6U= github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= @@ -175,6 +177,10 @@ go.opentelemetry.io/otel/trace v1.40.0 h1:WA4etStDttCSYuhwvEa8OP8I5EWu24lkOzp+ZY go.opentelemetry.io/otel/trace v1.40.0/go.mod h1:zeAhriXecNGP/s2SEG3+Y8X9ujcJOTqQ5RgdEJcawiA= go.opentelemetry.io/proto/otlp v1.9.0 h1:l706jCMITVouPOqEnii2fIAuO3IVGBRPV5ICjceRb/A= go.opentelemetry.io/proto/otlp v1.9.0/go.mod h1:xE+Cx5E/eEHw+ISFkwPLwCZefwVjY+pqKg1qcK03+/4= +go.podman.io/image/v5 v5.39.1 h1:loIw4qHzZzBlUguYZau40u8HbR5MrTPQhwT4Hy6sCm0= +go.podman.io/image/v5 v5.39.1/go.mod h1:SlaR6Pra1ATIx4BcuZ16oafb3QcCHISaKcJbtlN/G/0= +go.podman.io/storage v1.62.0 h1:0QjX1XlzVmbiaulb+aR/CG6p9+pzaqwIeZPe3tEjHbY= +go.podman.io/storage v1.62.0/go.mod h1:A3UBK0XypjNZ6pghRhuxg62+2NIm5lcUGv/7XyMhMUI= go.uber.org/goleak v1.3.0 h1:2K3zAYmnTNqV73imy9J1T3WC+gmCePx2hEGkimedGto= go.uber.org/goleak v1.3.0/go.mod h1:CoHD4mav9JJNrW/WLlf7HGZPjdw8EucARQHekz1X6bE= go.uber.org/multierr v1.11.0 h1:blXXJkSxSSfBVBlC76pxqeO+LN3aDfLQo+309xJstO0= diff --git a/staging/api/pkg/validation/internal/bundle.go b/staging/api/pkg/validation/internal/bundle.go index c5f7ba18d5..8e4e22019b 100644 --- a/staging/api/pkg/validation/internal/bundle.go +++ b/staging/api/pkg/validation/internal/bundle.go @@ -8,6 +8,7 @@ import ( operatorsv1alpha1 "github.com/operator-framework/api/pkg/operators/v1alpha1" "github.com/operator-framework/api/pkg/validation/errors" interfaces "github.com/operator-framework/api/pkg/validation/interfaces" + "go.podman.io/image/v5/docker/reference" v1 "k8s.io/api/core/v1" "k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/runtime/schema" @@ -46,6 +47,10 @@ func validateBundle(bundle *manifests.Bundle) (result errors.ManifestResult) { if nameErrors != nil { result.Add(nameErrors...) } + relatedImagesErrors := validateRelatedImages(bundle) + if relatedImagesErrors != nil { + result.Add(relatedImagesErrors...) + } return result } @@ -62,6 +67,30 @@ func validateBundleName(bundle *manifests.Bundle) []errors.Error { return errs } +// validateRelatedImages checks that all relatedImages[].image pullspecs are valid +// using github.com/distribution/reference.ParseNormalizedNamed +func validateRelatedImages(bundle *manifests.Bundle) []errors.Error { + var errs []errors.Error + + for i, relatedImage := range bundle.CSV.Spec.RelatedImages { + if relatedImage.Image == "" { + errs = append(errs, errors.ErrInvalidBundle( + fmt.Sprintf("relatedImages[%d] has an empty image field", i), + fmt.Sprintf("spec.relatedImages[%d].image", i))) + continue + } + + // Parse and validate the image reference + if _, err := reference.ParseNormalizedNamed(relatedImage.Image); err != nil { + errs = append(errs, errors.ErrInvalidBundle( + fmt.Sprintf("relatedImages[%d] has an invalid image pullspec %q: %v", i, relatedImage.Image, err), + fmt.Sprintf("spec.relatedImages[%d].image", i))) + } + } + + return errs +} + func validateServiceAccounts(bundle *manifests.Bundle) []errors.Error { // get service account names defined in the csv saNamesFromCSV := make(map[string]struct{}, 0) diff --git a/staging/api/pkg/validation/internal/bundle_test.go b/staging/api/pkg/validation/internal/bundle_test.go index 4bb9ad5973..b0b7ef65a8 100644 --- a/staging/api/pkg/validation/internal/bundle_test.go +++ b/staging/api/pkg/validation/internal/bundle_test.go @@ -2,6 +2,7 @@ package internal import ( "fmt" + "strings" "testing" "github.com/stretchr/testify/require" @@ -302,3 +303,152 @@ func Test_EnsureGetBundleSizeValue(t *testing.T) { }) } } + +func TestValidateRelatedImages(t *testing.T) { + tests := []struct { + name string + relatedImages []v1alpha1.RelatedImage + wantError bool + errCount int + errContains []string + }{ + { + name: "no related images should pass", + relatedImages: []v1alpha1.RelatedImage{}, + wantError: false, + }, + { + name: "valid image with tag should pass", + relatedImages: []v1alpha1.RelatedImage{ + {Name: "operator", Image: "quay.io/operator-framework/my-operator:v1.0.0"}, + }, + wantError: false, + }, + { + name: "valid image with digest should pass", + relatedImages: []v1alpha1.RelatedImage{ + {Name: "operator", Image: "quay.io/operator-framework/my-operator@sha256:abcd1234abcd1234abcd1234abcd1234abcd1234abcd1234abcd1234abcd1234"}, + }, + wantError: false, + }, + { + name: "valid image with tag and digest should pass", + relatedImages: []v1alpha1.RelatedImage{ + {Name: "operator", Image: "quay.io/operator-framework/my-operator:v1.0.0@sha256:abcd1234abcd1234abcd1234abcd1234abcd1234abcd1234abcd1234abcd1234"}, + }, + wantError: false, + }, + { + name: "valid image without tag (latest implied) should pass", + relatedImages: []v1alpha1.RelatedImage{ + {Name: "operator", Image: "quay.io/operator-framework/my-operator"}, + }, + wantError: false, + }, + { + name: "multiple valid images should pass", + relatedImages: []v1alpha1.RelatedImage{ + {Name: "operator", Image: "quay.io/operator-framework/my-operator:v1.0.0"}, + {Name: "operand", Image: "gcr.io/my-project/my-operand@sha256:abcd1234abcd1234abcd1234abcd1234abcd1234abcd1234abcd1234abcd1234"}, + {Name: "init", Image: "docker.io/library/busybox:latest"}, + }, + wantError: false, + }, + { + name: "empty image field should error", + relatedImages: []v1alpha1.RelatedImage{ + {Name: "operator", Image: ""}, + }, + wantError: true, + errCount: 1, + errContains: []string{"empty image field"}, + }, + { + name: "invalid image with spaces should error", + relatedImages: []v1alpha1.RelatedImage{ + {Name: "operator", Image: "invalid image name"}, + }, + wantError: true, + errCount: 1, + errContains: []string{"invalid image pullspec"}, + }, + { + name: "invalid image with uppercase should error", + relatedImages: []v1alpha1.RelatedImage{ + {Name: "operator", Image: "quay.io/Operator-Framework/my-operator:v1.0.0"}, + }, + wantError: true, + errCount: 1, + errContains: []string{"invalid image pullspec", "Operator-Framework"}, + }, + { + name: "invalid image with special characters should error", + relatedImages: []v1alpha1.RelatedImage{ + {Name: "operator", Image: "quay.io/operator-framework/my-operator:v1.0.0!"}, + }, + wantError: true, + errCount: 1, + errContains: []string{"invalid image pullspec"}, + }, + { + name: "invalid digest algorithm should error", + relatedImages: []v1alpha1.RelatedImage{ + {Name: "operator", Image: "quay.io/operator-framework/my-operator@ssha256:abcd1234abcd1234abcd1234abcd1234abcd1234abcd1234abcd1234abcd1234"}, + }, + wantError: true, + errCount: 1, + errContains: []string{"invalid image pullspec"}, + }, + { + name: "multiple errors should all be reported", + relatedImages: []v1alpha1.RelatedImage{ + {Name: "operator", Image: ""}, + {Name: "operand", Image: "invalid image"}, + }, + wantError: true, + errCount: 2, + errContains: []string{"relatedImages[0]", "relatedImages[1]"}, + }, + { + name: "mixed valid and invalid images should error", + relatedImages: []v1alpha1.RelatedImage{ + {Name: "operator", Image: "quay.io/operator-framework/my-operator:v1.0.0"}, + {Name: "bad", Image: "invalid image"}, + }, + wantError: true, + errCount: 1, + errContains: []string{"relatedImages[1]", "invalid image pullspec"}, + }, + } + + for _, tt := range tests { + t.Run(tt.name, func(t *testing.T) { + bundle := &manifests.Bundle{ + CSV: &v1alpha1.ClusterServiceVersion{ + Spec: v1alpha1.ClusterServiceVersionSpec{ + RelatedImages: tt.relatedImages, + }, + }, + } + + errs := validateRelatedImages(bundle) + + if tt.wantError { + require.Equal(t, tt.errCount, len(errs), "expected %d errors but got %d", tt.errCount, len(errs)) + // Check that each expected string appears in at least one error + for _, expectedStr := range tt.errContains { + found := false + for _, err := range errs { + if strings.Contains(err.Error(), expectedStr) { + found = true + break + } + } + require.True(t, found, "expected to find %q in error messages", expectedStr) + } + } else { + require.Equal(t, 0, len(errs), "expected no errors but got: %v", errs) + } + }) + } +} diff --git a/vendor/github.com/operator-framework/api/pkg/validation/internal/bundle.go b/vendor/github.com/operator-framework/api/pkg/validation/internal/bundle.go index c5f7ba18d5..8e4e22019b 100644 --- a/vendor/github.com/operator-framework/api/pkg/validation/internal/bundle.go +++ b/vendor/github.com/operator-framework/api/pkg/validation/internal/bundle.go @@ -8,6 +8,7 @@ import ( operatorsv1alpha1 "github.com/operator-framework/api/pkg/operators/v1alpha1" "github.com/operator-framework/api/pkg/validation/errors" interfaces "github.com/operator-framework/api/pkg/validation/interfaces" + "go.podman.io/image/v5/docker/reference" v1 "k8s.io/api/core/v1" "k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/runtime/schema" @@ -46,6 +47,10 @@ func validateBundle(bundle *manifests.Bundle) (result errors.ManifestResult) { if nameErrors != nil { result.Add(nameErrors...) } + relatedImagesErrors := validateRelatedImages(bundle) + if relatedImagesErrors != nil { + result.Add(relatedImagesErrors...) + } return result } @@ -62,6 +67,30 @@ func validateBundleName(bundle *manifests.Bundle) []errors.Error { return errs } +// validateRelatedImages checks that all relatedImages[].image pullspecs are valid +// using github.com/distribution/reference.ParseNormalizedNamed +func validateRelatedImages(bundle *manifests.Bundle) []errors.Error { + var errs []errors.Error + + for i, relatedImage := range bundle.CSV.Spec.RelatedImages { + if relatedImage.Image == "" { + errs = append(errs, errors.ErrInvalidBundle( + fmt.Sprintf("relatedImages[%d] has an empty image field", i), + fmt.Sprintf("spec.relatedImages[%d].image", i))) + continue + } + + // Parse and validate the image reference + if _, err := reference.ParseNormalizedNamed(relatedImage.Image); err != nil { + errs = append(errs, errors.ErrInvalidBundle( + fmt.Sprintf("relatedImages[%d] has an invalid image pullspec %q: %v", i, relatedImage.Image, err), + fmt.Sprintf("spec.relatedImages[%d].image", i))) + } + } + + return errs +} + func validateServiceAccounts(bundle *manifests.Bundle) []errors.Error { // get service account names defined in the csv saNamesFromCSV := make(map[string]struct{}, 0) From 4c677581209648eedc90d72421af150b2be51e15 Mon Sep 17 00:00:00 2001 From: Todd Short Date: Tue, 24 Feb 2026 10:39:18 -0500 Subject: [PATCH 23/24] Add OpenAPIModelName() generation for v1alpha1 and lib/version types (#477) 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. Assisted-By: Claude Signed-off-by: Todd Short Upstream-repository: api Upstream-commit: 7641ce3927be5fafc063561ac0c51e570c222c4c --- staging/api/.bingo/Variables.mk | 6 + staging/api/.bingo/openapi-gen.mod | 5 + staging/api/.bingo/openapi-gen.sum | 66 + staging/api/.bingo/variables.env | 2 + staging/api/Makefile | 19 +- staging/api/api_violations.report | 83 + staging/api/go.mod | 3 +- .../generated/openapi/zz_generated.openapi.go | 3379 +++++++++++++++++ staging/api/pkg/lib/version/doc.go | 5 + .../lib/version/zz_generated.model_name.go | 26 + staging/api/pkg/operators/v1alpha1/doc.go | 2 + .../operators/v1alpha1/subscription_types.go | 2 - .../v1alpha1/zz_generated.model_name.go | 306 ++ .../api/pkg/lib/version/doc.go | 5 + .../lib/version/zz_generated.model_name.go | 26 + .../api/pkg/operators/v1alpha1/doc.go | 2 + .../operators/v1alpha1/subscription_types.go | 2 - .../v1alpha1/zz_generated.model_name.go | 306 ++ 18 files changed, 4238 insertions(+), 7 deletions(-) create mode 100644 staging/api/.bingo/openapi-gen.mod create mode 100644 staging/api/.bingo/openapi-gen.sum create mode 100644 staging/api/api_violations.report create mode 100644 staging/api/pkg/generated/openapi/zz_generated.openapi.go create mode 100644 staging/api/pkg/lib/version/doc.go create mode 100644 staging/api/pkg/lib/version/zz_generated.model_name.go create mode 100644 staging/api/pkg/operators/v1alpha1/zz_generated.model_name.go create mode 100644 vendor/github.com/operator-framework/api/pkg/lib/version/doc.go create mode 100644 vendor/github.com/operator-framework/api/pkg/lib/version/zz_generated.model_name.go create mode 100644 vendor/github.com/operator-framework/api/pkg/operators/v1alpha1/zz_generated.model_name.go diff --git a/staging/api/.bingo/Variables.mk b/staging/api/.bingo/Variables.mk index a0640efc8f..e8d1ae0c3f 100644 --- a/staging/api/.bingo/Variables.mk +++ b/staging/api/.bingo/Variables.mk @@ -29,6 +29,12 @@ $(KIND): $(BINGO_DIR)/kind.mod @echo "(re)installing $(GOBIN)/kind-v0.31.0" @cd $(BINGO_DIR) && GOWORK=off $(GO) build -mod=mod -modfile=kind.mod -o=$(GOBIN)/kind-v0.31.0 "sigs.k8s.io/kind" +OPENAPI_GEN := $(GOBIN)/openapi-gen-v0.0.0-20260127142750-a19766b6e2d4 +$(OPENAPI_GEN): $(BINGO_DIR)/openapi-gen.mod + @# Install binary/ries using Go 1.14+ build command. This is using bwplotka/bingo-controlled, separate go module with pinned dependencies. + @echo "(re)installing $(GOBIN)/openapi-gen-v0.0.0-20260127142750-a19766b6e2d4" + @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" + YQ := $(GOBIN)/yq-v4.45.1 $(YQ): $(BINGO_DIR)/yq.mod @# Install binary/ries using Go 1.14+ build command. This is using bwplotka/bingo-controlled, separate go module with pinned dependencies. diff --git a/staging/api/.bingo/openapi-gen.mod b/staging/api/.bingo/openapi-gen.mod new file mode 100644 index 0000000000..47a61253f5 --- /dev/null +++ b/staging/api/.bingo/openapi-gen.mod @@ -0,0 +1,5 @@ +module _ // Auto generated by https://github.com/bwplotka/bingo. DO NOT EDIT + +go 1.25.3 + +require k8s.io/kube-openapi v0.0.0-20260127142750-a19766b6e2d4 // cmd/openapi-gen diff --git a/staging/api/.bingo/openapi-gen.sum b/staging/api/.bingo/openapi-gen.sum new file mode 100644 index 0000000000..a9102f2c1c --- /dev/null +++ b/staging/api/.bingo/openapi-gen.sum @@ -0,0 +1,66 @@ +github.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E= +github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= +github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= +github.com/emicklei/go-restful/v3 v3.11.0 h1:rAQeMHw1c7zTmncogyy8VvRZwtkmkZ4FxERmMY4rD+g= +github.com/emicklei/go-restful/v3 v3.11.0/go.mod h1:6n3XBCmQQb25CM2LCACGz8ukIrRry+4bhvbpWn3mrbc= +github.com/go-logr/logr v1.4.2 h1:6pFjapn8bFcIbiKo3XT4j/BhANplGihG6tvd+8rYgrY= +github.com/go-logr/logr v1.4.2/go.mod h1:9T104GzyrTigFIr8wt5mBrctHMim0Nb2HLGrmQ40KvY= +github.com/go-openapi/jsonpointer v0.19.6/go.mod h1:osyAmYz/mB/C3I+WsTTSgw1ONzaLJoLCyoi6/zppojs= +github.com/go-openapi/jsonpointer v0.21.0 h1:YgdVicSA9vH5RiHs9TZW5oyafXZFc6+2Vc1rr/O9oNQ= +github.com/go-openapi/jsonpointer v0.21.0/go.mod h1:IUyH9l/+uyhIYQ/PXVA41Rexl+kOkAPDdXEYns6fzUY= +github.com/go-openapi/jsonreference v0.20.1 h1:FBLnyygC4/IZZr893oiomc9XaghoveYTrLC1F86HID8= +github.com/go-openapi/jsonreference v0.20.1/go.mod h1:Bl1zwGIM8/wsvqjsOQLJ/SH+En5Ap4rVB5KVcIDZG2k= +github.com/go-openapi/swag v0.22.3/go.mod h1:UzaqsxGiab7freDnrUUra0MwWfN/q7tE4j+VcZ0yl14= +github.com/go-openapi/swag v0.23.0 h1:vsEVJDUo2hPJ2tu0/Xc+4noaxyEffXNIs3cOULZ+GrE= +github.com/go-openapi/swag v0.23.0/go.mod h1:esZ8ITTYEsH1V2trKHjAN8Ai7xHb8RV+YSZ577vPjgQ= +github.com/google/gnostic-models v0.7.0 h1:qwTtogB15McXDaNqTZdzPJRHvaVJlAl+HVQnLmJEJxo= +github.com/google/gnostic-models v0.7.0/go.mod h1:whL5G0m6dmc5cPxKc5bdKdEN3UjI7OUGxBlw57miDrQ= +github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= +github.com/josharian/intern v1.0.0 h1:vlS4z54oSdjm0bgjRigI+G1HpF+tI+9rE5LLzOg8HmY= +github.com/josharian/intern v1.0.0/go.mod h1:5DoeVV0s6jJacbCEi61lwdGj/aVlrQvzHFFd8Hwg//Y= +github.com/json-iterator/go v1.1.12 h1:PV8peI4a0ysnczrg+LtxykD8LfKY9ML6u2jnxaEnrnM= +github.com/json-iterator/go v1.1.12/go.mod h1:e30LSqwooZae/UwlEbR2852Gd8hjQvJoHmT4TnhNGBo= +github.com/kr/pretty v0.2.1/go.mod h1:ipq/a2n7PKx3OHsz4KJII5eveXtPO4qwEXGdVfWzfnI= +github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ= +github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI= +github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE= +github.com/mailru/easyjson v0.7.7 h1:UGYAvKxe3sBsEDzO8ZeWOSlIQfWFlxbzLZe7hwFURr0= +github.com/mailru/easyjson v0.7.7/go.mod h1:xzfreul335JAWq5oZzymOObrkdz5UnU4kGfJJLY9Nlc= +github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= +github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd h1:TRLaZ9cD/w8PVh93nsPXa1VrQ6jlwL5oN8l14QlcNfg= +github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= +github.com/modern-go/reflect2 v1.0.2 h1:xBagoLtFs94CBntxluKeaWgTMpvLxC4ur3nMaC9Gz0M= +github.com/modern-go/reflect2 v1.0.2/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk= +github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= +github.com/spf13/pflag v1.0.5 h1:iy+VFUOCP1a+8yFto/drg2CJ5u0yRoB7fZw3DKv/JXA= +github.com/spf13/pflag v1.0.5/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg= +github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= +github.com/stretchr/objx v0.4.0/go.mod h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSSt89Yw= +github.com/stretchr/objx v0.5.0/go.mod h1:Yh+to48EsGEfYuaHDzXPcE3xhTkx73EhmCGUpEOglKo= +github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI= +github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= +github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU= +github.com/stretchr/testify v1.8.1/go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o6fzry7u4= +go.yaml.in/yaml/v3 v3.0.3 h1:bXOww4E/J3f66rav3pX3m8w6jDE4knZjGOw8b5Y6iNE= +go.yaml.in/yaml/v3 v3.0.3/go.mod h1:tBHosrYAkRZjRAOREWbDnBXUf08JOwYq++0QNwQiWzI= +golang.org/x/mod v0.27.0 h1:kb+q2PyFnEADO2IEF935ehFUXlWiNjJWtRNgBLSfbxQ= +golang.org/x/mod v0.27.0/go.mod h1:rWI627Fq0DEoudcK+MBkNkCe0EetEaDSwJJkCcjpazc= +golang.org/x/sync v0.16.0 h1:ycBJEhp9p4vXvUZNszeOq0kGTPghopOL8q0fq3vstxw= +golang.org/x/sync v0.16.0/go.mod h1:1dzgHSNfp02xaA81J2MS99Qcpr2w7fw1gpm99rleRqA= +golang.org/x/tools v0.36.0 h1:kWS0uv/zsvHEle1LbV5LE8QujrxB3wfQyxHfhOk0Qkg= +golang.org/x/tools v0.36.0/go.mod h1:WBDiHKJK8YgLHlcQPYQzNCkUxUypCaa5ZegCVutKm+s= +google.golang.org/protobuf v1.35.1 h1:m3LfL6/Ca+fqnjnlqQXNpFPABW1UD7mjh8KO2mKFytA= +google.golang.org/protobuf v1.35.1/go.mod h1:9fA7Ob0pmnwhb644+1+CVWFRbNajQ6iRojtC/QF5bRE= +gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= +gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c/go.mod h1:JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q= +gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= +gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= +gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= +k8s.io/gengo/v2 v2.0.0-20250604051438-85fd79dbfd9f h1:SLb+kxmzfA87x4E4brQzB33VBbT2+x7Zq9ROIHmGn9Q= +k8s.io/gengo/v2 v2.0.0-20250604051438-85fd79dbfd9f/go.mod h1:EJykeLsmFC60UQbYJezXkEsG2FLrt0GPNkU5iK5GWxU= +k8s.io/klog/v2 v2.130.1 h1:n9Xl7H1Xvksem4KFG4PYbdQCQxqc/tTUyrgXaOhHSzk= +k8s.io/klog/v2 v2.130.1/go.mod h1:3Jpz1GvMt720eyJH1ckRHK1EDfpxISzJ7I9OYgaDtPE= +k8s.io/kube-openapi v0.0.0-20260127142750-a19766b6e2d4 h1:HhDfevmPS+OalTjQRKbTHppRIz01AWi8s45TMXStgYY= +k8s.io/kube-openapi v0.0.0-20260127142750-a19766b6e2d4/go.mod h1:kdmbQkyfwUagLfXIad1y2TdrjPFWp2Q89B3qkRwf/pQ= +sigs.k8s.io/randfill v1.0.0 h1:JfjMILfT8A6RbawdsK2JXGBR5AQVfd+9TbzrlneTyrU= +sigs.k8s.io/randfill v1.0.0/go.mod h1:XeLlZ/jmk4i1HRopwe7/aU3H5n1zNUcX6TM94b3QxOY= diff --git a/staging/api/.bingo/variables.env b/staging/api/.bingo/variables.env index 9537239fc3..9696139573 100644 --- a/staging/api/.bingo/variables.env +++ b/staging/api/.bingo/variables.env @@ -12,5 +12,7 @@ CONTROLLER_GEN="${GOBIN}/controller-gen-v0.20.0" KIND="${GOBIN}/kind-v0.31.0" +OPENAPI_GEN="${GOBIN}/openapi-gen-v0.0.0-20260127142750-a19766b6e2d4" + YQ="${GOBIN}/yq-v4.45.1" diff --git a/staging/api/Makefile b/staging/api/Makefile index cac579f0e3..14a66e68d6 100644 --- a/staging/api/Makefile +++ b/staging/api/Makefile @@ -43,7 +43,7 @@ install: ## Build & install operator-verify ### # Code management. ### -.PHONY: format tidy clean generate manifests +.PHONY: format tidy clean generate generate-openapi manifests format: ## Format the source code $(Q)go fmt $(PKGS) @@ -55,9 +55,24 @@ tidy: ## Update dependencies clean: ## Clean up the build artifacts $(Q)rm -rf build -generate: $(CONTROLLER_GEN) ## Generate code +generate: $(CONTROLLER_GEN) generate-openapi ## Generate code $(CONTROLLER_GEN) object:headerFile=./hack/boilerplate.go.txt paths=./... +generate-openapi: $(OPENAPI_GEN) ## Generate OpenAPIModelName() functions and OpenAPI definitions + @# Generate OpenAPIModelName() functions (zz_generated.model_name.go) in each input package. + @# Also produces a consolidated OpenAPI definitions file in pkg/generated/openapi/ (required by openapi-gen). + @# API rule violations are written to api_violations.report instead of failing the build. + @# New violations in api_violations.report will cause `make verify` to fail. + $(OPENAPI_GEN) \ + --go-header-file ./hack/boilerplate.go.txt \ + --output-file zz_generated.openapi.go \ + --output-dir ./pkg/generated/openapi \ + --output-pkg $(REPO)/pkg/generated/openapi \ + --output-model-name-file zz_generated.model_name.go \ + --report-filename ./api_violations.report \ + ./pkg/operators/v1alpha1 \ + ./pkg/lib/version + manifests: $(CONTROLLER_GEN) $(YQ) ## Generate manifests e.g. CRD, RBAC etc @# Create CRDs for new APIs $(CONTROLLER_GEN) crd:crdVersions=v1 output:crd:dir=./crds paths=./pkg/operators/... diff --git a/staging/api/api_violations.report b/staging/api/api_violations.report new file mode 100644 index 0000000000..454559db4a --- /dev/null +++ b/staging/api/api_violations.report @@ -0,0 +1,83 @@ +API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,APIServiceDefinitions,Owned +API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,APIServiceDefinitions,Required +API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,APIServiceDescription,ActionDescriptor +API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,APIServiceDescription,Resources +API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,APIServiceDescription,SpecDescriptors +API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,APIServiceDescription,StatusDescriptors +API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,ActionDescriptor,XDescriptors +API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,BundleLookup,Conditions +API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,CRDDescription,ActionDescriptor +API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,CRDDescription,Resources +API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,CRDDescription,SpecDescriptors +API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,CRDDescription,StatusDescriptors +API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,CatalogSourceSpec,Secrets +API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,CleanupStatus,PendingDeletion +API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,ClusterServiceVersionSpec,Icon +API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,ClusterServiceVersionSpec,InstallModes +API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,ClusterServiceVersionSpec,Keywords +API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,ClusterServiceVersionSpec,Links +API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,ClusterServiceVersionSpec,Maintainers +API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,ClusterServiceVersionSpec,NativeAPIs +API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,ClusterServiceVersionSpec,RelatedImages +API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,ClusterServiceVersionSpec,Skips +API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,ClusterServiceVersionSpec,WebhookDefinitions +API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,ClusterServiceVersionStatus,Conditions +API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,ClusterServiceVersionStatus,RequirementStatus +API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,CustomResourceDefinitions,Owned +API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,CustomResourceDefinitions,Required +API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,GrpcPodConfig,Tolerations +API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,InstallPlanSpec,ClusterServiceVersionNames +API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,InstallPlanStatus,BundleLookups +API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,InstallPlanStatus,CatalogSources +API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,InstallPlanStatus,Conditions +API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,InstallPlanStatus,Plan +API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,RequirementStatus,Dependents +API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,ResourceList,Instances +API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,SpecDescriptor,XDescriptors +API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,StatusDescriptor,XDescriptors +API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,StrategyDeploymentPermissions,Rules +API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,StrategyDetailsDeployment,ClusterPermissions +API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,StrategyDetailsDeployment,DeploymentSpecs +API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,StrategyDetailsDeployment,Permissions +API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,SubscriptionConfig,Env +API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,SubscriptionConfig,EnvFrom +API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,SubscriptionConfig,Tolerations +API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,SubscriptionConfig,VolumeMounts +API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,SubscriptionConfig,Volumes +API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,SubscriptionStatus,CatalogHealth +API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,SubscriptionStatus,Conditions +API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,WebhookDescription,AdmissionReviewVersions +API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,WebhookDescription,ConversionCRDs +API rule violation: list_type_missing,github.com/operator-framework/api/pkg/operators/v1alpha1,WebhookDescription,Rules +API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,APIServiceDescription,ActionDescriptor +API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,ActionDescriptor,XDescriptors +API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,CRDDescription,ActionDescriptor +API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,CatalogSourceStatus,ConfigMapResource +API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,CatalogSourceStatus,GRPCConnectionState +API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,CatalogSourceStatus,RegistryServiceStatus +API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,ClusterServiceVersionSpec,APIServiceDefinitions +API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,ClusterServiceVersionSpec,CustomResourceDefinitions +API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,ClusterServiceVersionSpec,InstallStrategy +API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,ClusterServiceVersionSpec,WebhookDefinitions +API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,GRPCConnectionState,LastConnectTime +API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,Icon,Data +API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,Icon,MediaType +API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,InstallPlanReference,UID +API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,InstallPlanSpec,CatalogSource +API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,InstallPlanSpec,CatalogSourceNamespace +API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,NamedInstallStrategy,StrategyName +API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,NamedInstallStrategy,StrategySpec +API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,RegistryPoll,RawInterval +API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,SpecDescriptor,XDescriptors +API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,StatusDescriptor,XDescriptors +API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,StepResource,CatalogSource +API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,StepResource,CatalogSourceNamespace +API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,StrategyDetailsDeployment,DeploymentSpecs +API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,SubscriptionSpec,CatalogSource +API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,SubscriptionSpec,CatalogSourceNamespace +API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,SubscriptionSpec,Package +API rule violation: names_match,github.com/operator-framework/api/pkg/operators/v1alpha1,SubscriptionStatus,Install +API rule violation: streaming_list_type_json_tags,github.com/operator-framework/api/pkg/operators/v1alpha1,CatalogSourceList,ListMeta +API rule violation: streaming_list_type_json_tags,github.com/operator-framework/api/pkg/operators/v1alpha1,ClusterServiceVersionList,ListMeta +API rule violation: streaming_list_type_json_tags,github.com/operator-framework/api/pkg/operators/v1alpha1,InstallPlanList,ListMeta +API rule violation: streaming_list_type_json_tags,github.com/operator-framework/api/pkg/operators/v1alpha1,SubscriptionList,ListMeta diff --git a/staging/api/go.mod b/staging/api/go.mod index 4e143fa20a..f6f64ea6f0 100644 --- a/staging/api/go.mod +++ b/staging/api/go.mod @@ -15,6 +15,7 @@ require ( k8s.io/apiextensions-apiserver v0.35.1 k8s.io/apimachinery v0.35.1 k8s.io/client-go v0.35.1 + k8s.io/kube-openapi v0.0.0-20260127142750-a19766b6e2d4 sigs.k8s.io/controller-runtime v0.23.1 sigs.k8s.io/yaml v1.6.0 ) @@ -26,6 +27,7 @@ require ( github.com/cenkalti/backoff/v5 v5.0.3 // indirect github.com/cespare/xxhash/v2 v2.3.0 // indirect github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc // indirect + github.com/emicklei/go-restful/v3 v3.12.2 // indirect github.com/felixge/httpsnoop v1.0.4 // indirect github.com/fxamacker/cbor/v2 v2.9.0 // indirect github.com/go-logr/logr v1.4.3 // indirect @@ -92,7 +94,6 @@ require ( k8s.io/apiserver v0.35.1 // indirect k8s.io/component-base v0.35.1 // indirect k8s.io/klog/v2 v2.130.1 // indirect - k8s.io/kube-openapi v0.0.0-20260127142750-a19766b6e2d4 // indirect k8s.io/utils v0.0.0-20260108192941-914a6e750570 // indirect sigs.k8s.io/apiserver-network-proxy/konnectivity-client v0.34.0 // indirect sigs.k8s.io/json v0.0.0-20250730193827-2d320260d730 // indirect diff --git a/staging/api/pkg/generated/openapi/zz_generated.openapi.go b/staging/api/pkg/generated/openapi/zz_generated.openapi.go new file mode 100644 index 0000000000..07bef4dca2 --- /dev/null +++ b/staging/api/pkg/generated/openapi/zz_generated.openapi.go @@ -0,0 +1,3379 @@ +//go:build !ignore_autogenerated +// +build !ignore_autogenerated + +/* + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// Code generated by openapi-gen-v0.0. DO NOT EDIT. + +package openapi + +import ( + version "github.com/operator-framework/api/pkg/lib/version" + v1alpha1 "github.com/operator-framework/api/pkg/operators/v1alpha1" + common "k8s.io/kube-openapi/pkg/common" + spec "k8s.io/kube-openapi/pkg/validation/spec" +) + +func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenAPIDefinition { + return map[string]common.OpenAPIDefinition{ + version.OperatorVersion{}.OpenAPIModelName(): schema_api_pkg_lib_version_OperatorVersion(ref), + v1alpha1.APIResourceReference{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_APIResourceReference(ref), + v1alpha1.APIServiceDefinitions{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_APIServiceDefinitions(ref), + v1alpha1.APIServiceDescription{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_APIServiceDescription(ref), + v1alpha1.ActionDescriptor{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_ActionDescriptor(ref), + v1alpha1.AppLink{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_AppLink(ref), + v1alpha1.BundleLookup{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_BundleLookup(ref), + v1alpha1.BundleLookupCondition{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_BundleLookupCondition(ref), + v1alpha1.CRDDescription{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_CRDDescription(ref), + v1alpha1.CatalogSource{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_CatalogSource(ref), + v1alpha1.CatalogSourceList{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_CatalogSourceList(ref), + v1alpha1.CatalogSourceSpec{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_CatalogSourceSpec(ref), + v1alpha1.CatalogSourceStatus{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_CatalogSourceStatus(ref), + v1alpha1.CleanupSpec{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_CleanupSpec(ref), + v1alpha1.CleanupStatus{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_CleanupStatus(ref), + v1alpha1.ClusterServiceVersion{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_ClusterServiceVersion(ref), + v1alpha1.ClusterServiceVersionCondition{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_ClusterServiceVersionCondition(ref), + v1alpha1.ClusterServiceVersionList{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_ClusterServiceVersionList(ref), + v1alpha1.ClusterServiceVersionSpec{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_ClusterServiceVersionSpec(ref), + v1alpha1.ClusterServiceVersionStatus{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_ClusterServiceVersionStatus(ref), + v1alpha1.ConfigMapResourceReference{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_ConfigMapResourceReference(ref), + v1alpha1.CustomResourceDefinitions{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_CustomResourceDefinitions(ref), + v1alpha1.DependentStatus{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_DependentStatus(ref), + v1alpha1.ExtractContentConfig{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_ExtractContentConfig(ref), + v1alpha1.GRPCConnectionState{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_GRPCConnectionState(ref), + v1alpha1.GrpcPodConfig{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_GrpcPodConfig(ref), + v1alpha1.Icon{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_Icon(ref), + v1alpha1.InstallMode{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_InstallMode(ref), + v1alpha1.InstallPlan{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_InstallPlan(ref), + v1alpha1.InstallPlanCondition{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_InstallPlanCondition(ref), + v1alpha1.InstallPlanList{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_InstallPlanList(ref), + v1alpha1.InstallPlanReference{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_InstallPlanReference(ref), + v1alpha1.InstallPlanSpec{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_InstallPlanSpec(ref), + v1alpha1.InstallPlanStatus{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_InstallPlanStatus(ref), + v1alpha1.Maintainer{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_Maintainer(ref), + v1alpha1.NamedInstallStrategy{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_NamedInstallStrategy(ref), + v1alpha1.RegistryPoll{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_RegistryPoll(ref), + v1alpha1.RegistryServiceStatus{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_RegistryServiceStatus(ref), + v1alpha1.RelatedImage{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_RelatedImage(ref), + v1alpha1.RequirementStatus{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_RequirementStatus(ref), + v1alpha1.ResourceInstance{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_ResourceInstance(ref), + v1alpha1.ResourceList{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_ResourceList(ref), + v1alpha1.SpecDescriptor{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_SpecDescriptor(ref), + v1alpha1.StatusDescriptor{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_StatusDescriptor(ref), + v1alpha1.Step{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_Step(ref), + v1alpha1.StepResource{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_StepResource(ref), + v1alpha1.StrategyDeploymentPermissions{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_StrategyDeploymentPermissions(ref), + v1alpha1.StrategyDeploymentSpec{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_StrategyDeploymentSpec(ref), + v1alpha1.StrategyDetailsDeployment{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_StrategyDetailsDeployment(ref), + v1alpha1.Subscription{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_Subscription(ref), + v1alpha1.SubscriptionCatalogHealth{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_SubscriptionCatalogHealth(ref), + v1alpha1.SubscriptionCondition{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_SubscriptionCondition(ref), + v1alpha1.SubscriptionConfig{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_SubscriptionConfig(ref), + v1alpha1.SubscriptionList{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_SubscriptionList(ref), + v1alpha1.SubscriptionSpec{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_SubscriptionSpec(ref), + v1alpha1.SubscriptionStatus{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_SubscriptionStatus(ref), + v1alpha1.UpdateStrategy{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_UpdateStrategy(ref), + v1alpha1.WebhookDescription{}.OpenAPIModelName(): schema_api_pkg_operators_v1alpha1_WebhookDescription(ref), + } +} + +func schema_api_pkg_lib_version_OperatorVersion(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "OperatorVersion is a wrapper around semver.Version which supports correct marshaling to YAML and JSON.", + Type: version.OperatorVersion{}.OpenAPISchemaType(), + Format: version.OperatorVersion{}.OpenAPISchemaFormat(), + }, + }, + } +} + +func schema_api_pkg_operators_v1alpha1_APIResourceReference(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "APIResourceReference is a reference to a Kubernetes resource type that the referrer utilizes.", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "name": { + SchemaProps: spec.SchemaProps{ + Description: "Plural name of the referenced resource type (CustomResourceDefinition.Spec.Names[].Plural). Empty string if the referenced resource type is not a custom resource.", + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind of the referenced resource type.", + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "version": { + SchemaProps: spec.SchemaProps{ + Description: "API Version of the referenced resource type.", + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + }, + Required: []string{"name", "kind", "version"}, + }, + }, + } +} + +func schema_api_pkg_operators_v1alpha1_APIServiceDefinitions(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "APIServiceDefinitions declares all of the extension apis managed or required by an operator being ran by ClusterServiceVersion.", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "owned": { + SchemaProps: spec.SchemaProps{ + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.APIServiceDescription{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + "required": { + SchemaProps: spec.SchemaProps{ + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.APIServiceDescription{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + }, + }, + }, + Dependencies: []string{ + v1alpha1.APIServiceDescription{}.OpenAPIModelName()}, + } +} + +func schema_api_pkg_operators_v1alpha1_APIServiceDescription(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "APIServiceDescription provides details to OLM about apis provided via aggregation", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "name": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "group": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "version": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "kind": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "deploymentName": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "containerPort": { + SchemaProps: spec.SchemaProps{ + Type: []string{"integer"}, + Format: "int32", + }, + }, + "displayName": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "description": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "resources": { + SchemaProps: spec.SchemaProps{ + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.APIResourceReference{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + "statusDescriptors": { + SchemaProps: spec.SchemaProps{ + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.StatusDescriptor{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + "specDescriptors": { + SchemaProps: spec.SchemaProps{ + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.SpecDescriptor{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + "actionDescriptors": { + SchemaProps: spec.SchemaProps{ + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.ActionDescriptor{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + }, + Required: []string{"name", "group", "version", "kind"}, + }, + }, + Dependencies: []string{ + v1alpha1.APIResourceReference{}.OpenAPIModelName(), v1alpha1.ActionDescriptor{}.OpenAPIModelName(), v1alpha1.SpecDescriptor{}.OpenAPIModelName(), v1alpha1.StatusDescriptor{}.OpenAPIModelName()}, + } +} + +func schema_api_pkg_operators_v1alpha1_ActionDescriptor(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "ActionDescriptor describes a declarative action that can be performed on a custom resource instance", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "path": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "displayName": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "description": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "x-descriptors": { + SchemaProps: spec.SchemaProps{ + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + }, + }, + }, + "value": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "byte", + }, + }, + }, + Required: []string{"path"}, + }, + }, + } +} + +func schema_api_pkg_operators_v1alpha1_AppLink(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "name": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "url": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + }, + }, + }, + } +} + +func schema_api_pkg_operators_v1alpha1_BundleLookup(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "BundleLookup is a request to pull and unpackage the content of a bundle to the cluster.", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "path": { + SchemaProps: spec.SchemaProps{ + Description: "Path refers to the location of a bundle to pull. It's typically an image reference.", + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "identifier": { + SchemaProps: spec.SchemaProps{ + Description: "Identifier is the catalog-unique name of the operator (the name of the CSV for bundles that contain CSVs)", + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "replaces": { + SchemaProps: spec.SchemaProps{ + Description: "Replaces is the name of the bundle to replace with the one found at Path.", + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "catalogSourceRef": { + SchemaProps: spec.SchemaProps{ + Description: "CatalogSourceRef is a reference to the CatalogSource the bundle path was resolved from.", + Ref: ref("k8s.io/api/core/v1.ObjectReference"), + }, + }, + "conditions": { + VendorExtensible: spec.VendorExtensible{ + Extensions: spec.Extensions{ + "x-kubernetes-patch-merge-key": "type", + "x-kubernetes-patch-strategy": "merge", + }, + }, + SchemaProps: spec.SchemaProps{ + Description: "Conditions represents the overall state of a BundleLookup.", + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.BundleLookupCondition{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + "properties": { + SchemaProps: spec.SchemaProps{ + Description: "The effective properties of the unpacked bundle.", + Type: []string{"string"}, + Format: "", + }, + }, + }, + Required: []string{"path", "identifier", "replaces", "catalogSourceRef"}, + }, + }, + Dependencies: []string{ + v1alpha1.BundleLookupCondition{}.OpenAPIModelName(), "k8s.io/api/core/v1.ObjectReference"}, + } +} + +func schema_api_pkg_operators_v1alpha1_BundleLookupCondition(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "type": { + SchemaProps: spec.SchemaProps{ + Description: "Type of condition.", + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "status": { + SchemaProps: spec.SchemaProps{ + Description: "Status of the condition, one of True, False, Unknown.", + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "reason": { + SchemaProps: spec.SchemaProps{ + Description: "The reason for the condition's last transition.", + Type: []string{"string"}, + Format: "", + }, + }, + "message": { + SchemaProps: spec.SchemaProps{ + Description: "A human readable message indicating details about the transition.", + Type: []string{"string"}, + Format: "", + }, + }, + "lastUpdateTime": { + SchemaProps: spec.SchemaProps{ + Description: "Last time the condition was probed.", + Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Time"), + }, + }, + "lastTransitionTime": { + SchemaProps: spec.SchemaProps{ + Description: "Last time the condition transitioned from one status to another.", + Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Time"), + }, + }, + }, + Required: []string{"type", "status"}, + }, + }, + Dependencies: []string{ + "k8s.io/apimachinery/pkg/apis/meta/v1.Time"}, + } +} + +func schema_api_pkg_operators_v1alpha1_CRDDescription(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "CRDDescription provides details to OLM about the CRDs", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "name": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "version": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "kind": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "displayName": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "description": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "resources": { + SchemaProps: spec.SchemaProps{ + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.APIResourceReference{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + "statusDescriptors": { + SchemaProps: spec.SchemaProps{ + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.StatusDescriptor{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + "specDescriptors": { + SchemaProps: spec.SchemaProps{ + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.SpecDescriptor{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + "actionDescriptors": { + SchemaProps: spec.SchemaProps{ + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.ActionDescriptor{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + }, + Required: []string{"name", "version", "kind"}, + }, + }, + Dependencies: []string{ + v1alpha1.APIResourceReference{}.OpenAPIModelName(), v1alpha1.ActionDescriptor{}.OpenAPIModelName(), v1alpha1.SpecDescriptor{}.OpenAPIModelName(), v1alpha1.StatusDescriptor{}.OpenAPIModelName()}, + } +} + +func schema_api_pkg_operators_v1alpha1_CatalogSource(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "CatalogSource is a repository of CSVs, CRDs, and operator packages.", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, + "metadata": { + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta"), + }, + }, + "spec": { + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.CatalogSourceSpec{}.OpenAPIModelName()), + }, + }, + "status": { + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.CatalogSourceStatus{}.OpenAPIModelName()), + }, + }, + }, + Required: []string{"metadata", "spec"}, + }, + }, + Dependencies: []string{ + v1alpha1.CatalogSourceSpec{}.OpenAPIModelName(), v1alpha1.CatalogSourceStatus{}.OpenAPIModelName(), "k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta"}, + } +} + +func schema_api_pkg_operators_v1alpha1_CatalogSourceList(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "CatalogSourceList is a repository of CSVs, CRDs, and operator packages.", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, + "metadata": { + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"), + }, + }, + "items": { + SchemaProps: spec.SchemaProps{ + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.CatalogSource{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + }, + Required: []string{"metadata", "items"}, + }, + }, + Dependencies: []string{ + v1alpha1.CatalogSource{}.OpenAPIModelName(), "k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"}, + } +} + +func schema_api_pkg_operators_v1alpha1_CatalogSourceSpec(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "sourceType": { + SchemaProps: spec.SchemaProps{ + Description: "SourceType is the type of source", + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "priority": { + SchemaProps: spec.SchemaProps{ + Description: "Priority field assigns a weight to the catalog source to prioritize them so that it can be consumed by the dependency resolver. Usage: Higher weight indicates that this catalog source is preferred over lower weighted catalog sources during dependency resolution. The range of the priority value can go from positive to negative in the range of int32. The default value to a catalog source with unassigned priority would be 0. The catalog source with the same priority values will be ranked lexicographically based on its name.", + Type: []string{"integer"}, + Format: "int32", + }, + }, + "configMap": { + SchemaProps: spec.SchemaProps{ + Description: "ConfigMap is the name of the ConfigMap to be used to back a configmap-server registry. Only used when SourceType = SourceTypeConfigmap or SourceTypeInternal.", + Type: []string{"string"}, + Format: "", + }, + }, + "address": { + SchemaProps: spec.SchemaProps{ + Description: "Address is a host that OLM can use to connect to a pre-existing registry. Format: : Only used when SourceType = SourceTypeGrpc. Ignored when the Image field is set.", + Type: []string{"string"}, + Format: "", + }, + }, + "image": { + SchemaProps: spec.SchemaProps{ + Description: "Image is an operator-registry container image to instantiate a registry-server with. Only used when SourceType = SourceTypeGrpc. If present, the address field is ignored.", + Type: []string{"string"}, + Format: "", + }, + }, + "grpcPodConfig": { + SchemaProps: spec.SchemaProps{ + Description: "GrpcPodConfig exposes different overrides for the pod spec of the CatalogSource Pod. Only used when SourceType = SourceTypeGrpc and Image is set.", + Ref: ref(v1alpha1.GrpcPodConfig{}.OpenAPIModelName()), + }, + }, + "updateStrategy": { + SchemaProps: spec.SchemaProps{ + Description: "UpdateStrategy defines how updated catalog source images can be discovered Consists of an interval that defines polling duration and an embedded strategy type", + Ref: ref(v1alpha1.UpdateStrategy{}.OpenAPIModelName()), + }, + }, + "secrets": { + SchemaProps: spec.SchemaProps{ + Description: "Secrets represent set of secrets that can be used to access the contents of the catalog. It is best to keep this list small, since each will need to be tried for every catalog entry.", + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + }, + }, + }, + "displayName": { + SchemaProps: spec.SchemaProps{ + Description: "Metadata", + Type: []string{"string"}, + Format: "", + }, + }, + "description": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "publisher": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "icon": { + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.Icon{}.OpenAPIModelName()), + }, + }, + }, + Required: []string{"sourceType"}, + }, + }, + Dependencies: []string{ + v1alpha1.GrpcPodConfig{}.OpenAPIModelName(), v1alpha1.Icon{}.OpenAPIModelName(), v1alpha1.UpdateStrategy{}.OpenAPIModelName()}, + } +} + +func schema_api_pkg_operators_v1alpha1_CatalogSourceStatus(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "message": { + SchemaProps: spec.SchemaProps{ + Description: "A human readable message indicating details about why the CatalogSource is in this condition.", + Type: []string{"string"}, + Format: "", + }, + }, + "reason": { + SchemaProps: spec.SchemaProps{ + Description: "Reason is the reason the CatalogSource was transitioned to its current state.", + Type: []string{"string"}, + Format: "", + }, + }, + "latestImageRegistryPoll": { + SchemaProps: spec.SchemaProps{ + Description: "The last time the CatalogSource image registry has been polled to ensure the image is up-to-date", + Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Time"), + }, + }, + "configMapReference": { + SchemaProps: spec.SchemaProps{ + Description: "ConfigMapReference (deprecated) is the reference to the ConfigMap containing the catalog source's configuration, when the catalog source is a ConfigMap", + Ref: ref(v1alpha1.ConfigMapResourceReference{}.OpenAPIModelName()), + }, + }, + "registryService": { + SchemaProps: spec.SchemaProps{ + Description: "RegistryService represents the current state of the GRPC service used to serve the catalog", + Ref: ref(v1alpha1.RegistryServiceStatus{}.OpenAPIModelName()), + }, + }, + "connectionState": { + SchemaProps: spec.SchemaProps{ + Description: "ConnectionState represents the current state of the CatalogSource's connection to the registry", + Ref: ref(v1alpha1.GRPCConnectionState{}.OpenAPIModelName()), + }, + }, + "conditions": { + VendorExtensible: spec.VendorExtensible{ + Extensions: spec.Extensions{ + "x-kubernetes-list-map-keys": []interface{}{ + "type", + }, + "x-kubernetes-list-type": "map", + "x-kubernetes-patch-merge-key": "type", + "x-kubernetes-patch-strategy": "merge", + }, + }, + SchemaProps: spec.SchemaProps{ + Description: "Represents the state of a CatalogSource. Note that Message and Reason represent the original status information, which may be migrated to be conditions based in the future. Any new features introduced will use conditions.", + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Condition"), + }, + }, + }, + }, + }, + }, + }, + }, + Dependencies: []string{ + v1alpha1.ConfigMapResourceReference{}.OpenAPIModelName(), v1alpha1.GRPCConnectionState{}.OpenAPIModelName(), v1alpha1.RegistryServiceStatus{}.OpenAPIModelName(), "k8s.io/apimachinery/pkg/apis/meta/v1.Condition", "k8s.io/apimachinery/pkg/apis/meta/v1.Time"}, + } +} + +func schema_api_pkg_operators_v1alpha1_CleanupSpec(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "enabled": { + SchemaProps: spec.SchemaProps{ + Default: false, + Type: []string{"boolean"}, + Format: "", + }, + }, + }, + Required: []string{"enabled"}, + }, + }, + } +} + +func schema_api_pkg_operators_v1alpha1_CleanupStatus(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "CleanupStatus represents information about the status of cleanup while a CSV is pending deletion", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "pendingDeletion": { + SchemaProps: spec.SchemaProps{ + Description: "PendingDeletion is the list of custom resource objects that are pending deletion and blocked on finalizers. This indicates the progress of cleanup that is blocking CSV deletion or operator uninstall.", + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.ResourceList{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + }, + }, + }, + Dependencies: []string{ + v1alpha1.ResourceList{}.OpenAPIModelName()}, + } +} + +func schema_api_pkg_operators_v1alpha1_ClusterServiceVersion(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "ClusterServiceVersion is a Custom Resource of type `ClusterServiceVersionSpec`.", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, + "metadata": { + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta"), + }, + }, + "spec": { + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.ClusterServiceVersionSpec{}.OpenAPIModelName()), + }, + }, + "status": { + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.ClusterServiceVersionStatus{}.OpenAPIModelName()), + }, + }, + }, + Required: []string{"metadata", "spec"}, + }, + }, + Dependencies: []string{ + v1alpha1.ClusterServiceVersionSpec{}.OpenAPIModelName(), v1alpha1.ClusterServiceVersionStatus{}.OpenAPIModelName(), "k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta"}, + } +} + +func schema_api_pkg_operators_v1alpha1_ClusterServiceVersionCondition(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "Conditions appear in the status as a record of state transitions on the ClusterServiceVersion", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "phase": { + SchemaProps: spec.SchemaProps{ + Description: "Condition of the ClusterServiceVersion", + Type: []string{"string"}, + Format: "", + }, + }, + "message": { + SchemaProps: spec.SchemaProps{ + Description: "A human readable message indicating details about why the ClusterServiceVersion is in this condition.", + Type: []string{"string"}, + Format: "", + }, + }, + "reason": { + SchemaProps: spec.SchemaProps{ + Description: "A brief CamelCase message indicating details about why the ClusterServiceVersion is in this state. e.g. 'RequirementsNotMet'", + Type: []string{"string"}, + Format: "", + }, + }, + "lastUpdateTime": { + SchemaProps: spec.SchemaProps{ + Description: "Last time we updated the status", + Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Time"), + }, + }, + "lastTransitionTime": { + SchemaProps: spec.SchemaProps{ + Description: "Last time the status transitioned from one status to another.", + Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Time"), + }, + }, + }, + }, + }, + Dependencies: []string{ + "k8s.io/apimachinery/pkg/apis/meta/v1.Time"}, + } +} + +func schema_api_pkg_operators_v1alpha1_ClusterServiceVersionList(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "ClusterServiceVersionList represents a list of ClusterServiceVersions.", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, + "metadata": { + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"), + }, + }, + "items": { + SchemaProps: spec.SchemaProps{ + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.ClusterServiceVersion{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + }, + Required: []string{"metadata", "items"}, + }, + }, + Dependencies: []string{ + v1alpha1.ClusterServiceVersion{}.OpenAPIModelName(), "k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"}, + } +} + +func schema_api_pkg_operators_v1alpha1_ClusterServiceVersionSpec(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "ClusterServiceVersionSpec declarations tell OLM how to install an operator that can manage apps for a given version.", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "install": { + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.NamedInstallStrategy{}.OpenAPIModelName()), + }, + }, + "version": { + SchemaProps: spec.SchemaProps{ + Ref: ref(version.OperatorVersion{}.OpenAPIModelName()), + }, + }, + "release": { + SchemaProps: spec.SchemaProps{ + Description: "release specifies the packaging version of the operator, defaulting to empty release is optional\n\nA ClusterServiceVersion's release field is used to distinguish between different builds of the same operator version This is useful for operators that need to make changes to the CSV which don't affect their functionality, for example: - to fix a typo in their description - to add/amend annotations or labels - to amend examples or documentation - to produce different builds for different environments\n\nIt is up to operator authors to determine the semantics of release versions they use for their operator. All release versions must conform to the semver prerelease format (dot-separated identifiers containing only alphanumerics and hyphens) and are limited to a maximum length of 20 characters.", + Ref: ref("github.com/operator-framework/api/pkg/lib/release.OperatorRelease"), + }, + }, + "maturity": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "customresourcedefinitions": { + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.CustomResourceDefinitions{}.OpenAPIModelName()), + }, + }, + "apiservicedefinitions": { + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.APIServiceDefinitions{}.OpenAPIModelName()), + }, + }, + "webhookdefinitions": { + SchemaProps: spec.SchemaProps{ + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.WebhookDescription{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + "nativeAPIs": { + SchemaProps: spec.SchemaProps{ + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.GroupVersionKind"), + }, + }, + }, + }, + }, + "minKubeVersion": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "displayName": { + SchemaProps: spec.SchemaProps{ + Description: "The name of the operator in display format.", + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "description": { + SchemaProps: spec.SchemaProps{ + Description: "Description of the operator. Can include the features, limitations or use-cases of the operator.", + Type: []string{"string"}, + Format: "", + }, + }, + "keywords": { + SchemaProps: spec.SchemaProps{ + Description: "A list of keywords describing the operator.", + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + }, + }, + }, + "maintainers": { + SchemaProps: spec.SchemaProps{ + Description: "A list of organizational entities maintaining the operator.", + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.Maintainer{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + "provider": { + SchemaProps: spec.SchemaProps{ + Description: "The publishing entity behind the operator.", + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.AppLink{}.OpenAPIModelName()), + }, + }, + "links": { + SchemaProps: spec.SchemaProps{ + Description: "A list of links related to the operator.", + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.AppLink{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + "icon": { + SchemaProps: spec.SchemaProps{ + Description: "The icon for this operator.", + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.Icon{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + "installModes": { + SchemaProps: spec.SchemaProps{ + Description: "InstallModes specify supported installation types", + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.InstallMode{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + "replaces": { + SchemaProps: spec.SchemaProps{ + Description: "The name of a CSV this one replaces. Should match the `metadata.Name` field of the old CSV.", + Type: []string{"string"}, + Format: "", + }, + }, + "labels": { + SchemaProps: spec.SchemaProps{ + Description: "Map of string keys and values that can be used to organize and categorize (scope and select) objects.", + Type: []string{"object"}, + AdditionalProperties: &spec.SchemaOrBool{ + Allows: true, + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + }, + }, + }, + "annotations": { + SchemaProps: spec.SchemaProps{ + Description: "Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata.", + Type: []string{"object"}, + AdditionalProperties: &spec.SchemaOrBool{ + Allows: true, + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + }, + }, + }, + "selector": { + SchemaProps: spec.SchemaProps{ + Description: "Label selector for related resources.", + Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.LabelSelector"), + }, + }, + "cleanup": { + SchemaProps: spec.SchemaProps{ + Description: "Cleanup specifies the cleanup behaviour when the CSV gets deleted", + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.CleanupSpec{}.OpenAPIModelName()), + }, + }, + "skips": { + SchemaProps: spec.SchemaProps{ + Description: "The name(s) of one or more CSV(s) that should be skipped in the upgrade graph. Should match the `metadata.Name` field of the CSV that should be skipped. This field is only used during catalog creation and plays no part in cluster runtime.", + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + }, + }, + }, + "relatedImages": { + SchemaProps: spec.SchemaProps{ + Description: "List any related images, or other container images that your Operator might require to perform their functions. This list should also include operand images as well. All image references should be specified by digest (SHA) and not by tag. This field is only used during catalog creation and plays no part in cluster runtime.", + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.RelatedImage{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + }, + Required: []string{"install", "displayName"}, + }, + }, + Dependencies: []string{ + "github.com/operator-framework/api/pkg/lib/release.OperatorRelease", version.OperatorVersion{}.OpenAPIModelName(), v1alpha1.APIServiceDefinitions{}.OpenAPIModelName(), v1alpha1.AppLink{}.OpenAPIModelName(), v1alpha1.CleanupSpec{}.OpenAPIModelName(), v1alpha1.CustomResourceDefinitions{}.OpenAPIModelName(), v1alpha1.Icon{}.OpenAPIModelName(), v1alpha1.InstallMode{}.OpenAPIModelName(), v1alpha1.Maintainer{}.OpenAPIModelName(), v1alpha1.NamedInstallStrategy{}.OpenAPIModelName(), v1alpha1.RelatedImage{}.OpenAPIModelName(), v1alpha1.WebhookDescription{}.OpenAPIModelName(), "k8s.io/apimachinery/pkg/apis/meta/v1.GroupVersionKind", "k8s.io/apimachinery/pkg/apis/meta/v1.LabelSelector"}, + } +} + +func schema_api_pkg_operators_v1alpha1_ClusterServiceVersionStatus(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "ClusterServiceVersionStatus represents information about the status of a CSV. Status may trail the actual state of a system.", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "phase": { + SchemaProps: spec.SchemaProps{ + Description: "Current condition of the ClusterServiceVersion", + Type: []string{"string"}, + Format: "", + }, + }, + "message": { + SchemaProps: spec.SchemaProps{ + Description: "A human readable message indicating details about why the ClusterServiceVersion is in this condition.", + Type: []string{"string"}, + Format: "", + }, + }, + "reason": { + SchemaProps: spec.SchemaProps{ + Description: "A brief CamelCase message indicating details about why the ClusterServiceVersion is in this state. e.g. 'RequirementsNotMet'", + Type: []string{"string"}, + Format: "", + }, + }, + "lastUpdateTime": { + SchemaProps: spec.SchemaProps{ + Description: "Last time we updated the status", + Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Time"), + }, + }, + "lastTransitionTime": { + SchemaProps: spec.SchemaProps{ + Description: "Last time the status transitioned from one status to another.", + Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Time"), + }, + }, + "conditions": { + SchemaProps: spec.SchemaProps{ + Description: "List of conditions, a history of state transitions", + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.ClusterServiceVersionCondition{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + "requirementStatus": { + SchemaProps: spec.SchemaProps{ + Description: "The status of each requirement for this CSV", + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.RequirementStatus{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + "certsLastUpdated": { + SchemaProps: spec.SchemaProps{ + Description: "Last time the owned APIService certs were updated", + Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Time"), + }, + }, + "certsRotateAt": { + SchemaProps: spec.SchemaProps{ + Description: "Time the owned APIService certs will rotate next", + Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Time"), + }, + }, + "cleanup": { + SchemaProps: spec.SchemaProps{ + Description: "CleanupStatus represents information about the status of cleanup while a CSV is pending deletion", + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.CleanupStatus{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + Dependencies: []string{ + v1alpha1.CleanupStatus{}.OpenAPIModelName(), v1alpha1.ClusterServiceVersionCondition{}.OpenAPIModelName(), v1alpha1.RequirementStatus{}.OpenAPIModelName(), "k8s.io/apimachinery/pkg/apis/meta/v1.Time"}, + } +} + +func schema_api_pkg_operators_v1alpha1_ConfigMapResourceReference(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "name": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "namespace": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "uid": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "resourceVersion": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "lastUpdateTime": { + SchemaProps: spec.SchemaProps{ + Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Time"), + }, + }, + }, + Required: []string{"name", "namespace"}, + }, + }, + Dependencies: []string{ + "k8s.io/apimachinery/pkg/apis/meta/v1.Time"}, + } +} + +func schema_api_pkg_operators_v1alpha1_CustomResourceDefinitions(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "CustomResourceDefinitions declares all of the CRDs managed or required by an operator being ran by ClusterServiceVersion.\n\nIf the CRD is present in the Owned list, it is implicitly required.", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "owned": { + SchemaProps: spec.SchemaProps{ + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.CRDDescription{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + "required": { + SchemaProps: spec.SchemaProps{ + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.CRDDescription{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + }, + }, + }, + Dependencies: []string{ + v1alpha1.CRDDescription{}.OpenAPIModelName()}, + } +} + +func schema_api_pkg_operators_v1alpha1_DependentStatus(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "DependentStatus is the status for a dependent requirement (to prevent infinite nesting)", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "group": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "version": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "kind": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "status": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "uuid": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "message": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + }, + Required: []string{"group", "version", "kind", "status"}, + }, + }, + } +} + +func schema_api_pkg_operators_v1alpha1_ExtractContentConfig(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "ExtractContentConfig configures context extraction from a file-based catalog index image.", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "cacheDir": { + SchemaProps: spec.SchemaProps{ + Description: "CacheDir is the (optional) directory storing the pre-calculated API cache.", + Type: []string{"string"}, + Format: "", + }, + }, + "catalogDir": { + SchemaProps: spec.SchemaProps{ + Description: "CatalogDir is the directory storing the file-based catalog contents.", + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + }, + Required: []string{"catalogDir"}, + }, + }, + } +} + +func schema_api_pkg_operators_v1alpha1_GRPCConnectionState(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "address": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "lastObservedState": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "lastConnect": { + SchemaProps: spec.SchemaProps{ + Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Time"), + }, + }, + }, + Required: []string{"lastObservedState"}, + }, + }, + Dependencies: []string{ + "k8s.io/apimachinery/pkg/apis/meta/v1.Time"}, + } +} + +func schema_api_pkg_operators_v1alpha1_GrpcPodConfig(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "GrpcPodConfig contains configuration specified for a catalog source", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "nodeSelector": { + SchemaProps: spec.SchemaProps{ + Description: "NodeSelector is a selector which must be true for the pod to fit on a node. Selector which must match a node's labels for the pod to be scheduled on that node.", + Type: []string{"object"}, + AdditionalProperties: &spec.SchemaOrBool{ + Allows: true, + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + }, + }, + }, + "tolerations": { + SchemaProps: spec.SchemaProps{ + Description: "Tolerations are the catalog source's pod's tolerations.", + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref("k8s.io/api/core/v1.Toleration"), + }, + }, + }, + }, + }, + "affinity": { + SchemaProps: spec.SchemaProps{ + Description: "Affinity is the catalog source's pod's affinity.", + Ref: ref("k8s.io/api/core/v1.Affinity"), + }, + }, + "priorityClassName": { + SchemaProps: spec.SchemaProps{ + Description: "If specified, indicates the pod's priority. If not specified, the pod priority will be default or zero if there is no default.", + Type: []string{"string"}, + Format: "", + }, + }, + "securityContextConfig": { + SchemaProps: spec.SchemaProps{ + Description: "SecurityContextConfig can be one of `legacy` or `restricted`. The CatalogSource's pod is either injected with the right pod.spec.securityContext and pod.spec.container[*].securityContext values to allow the pod to run in Pod Security Admission (PSA) `restricted` mode, or doesn't set these values at all, in which case the pod can only be run in PSA `baseline` or `privileged` namespaces. If the SecurityContextConfig is unspecified, the mode will be determined by the namespace's PSA configuration. If the namespace is enforcing `restricted` mode, then the pod will be configured as if `restricted` was specified. Otherwise, it will be configured as if `legacy` was specified. Specifying a value other than `legacy` or `restricted` result in a validation error. When using older catalog images, which can not run in `restricted` mode, the SecurityContextConfig should be set to `legacy`.\n\nMore information about PSA can be found here: https://kubernetes.io/docs/concepts/security/pod-security-admission/", + Type: []string{"string"}, + Format: "", + }, + }, + "memoryTarget": { + SchemaProps: spec.SchemaProps{ + Description: "MemoryTarget configures the $GOMEMLIMIT value for the gRPC catalog Pod. This is a soft memory limit for the server, which the runtime will attempt to meet but makes no guarantees that it will do so. If this value is set, the Pod will have the following modifications made to the container running the server: - the $GOMEMLIMIT environment variable will be set to this value in bytes - the memory request will be set to this value\n\nThis field should be set if it's desired to reduce the footprint of a catalog server as much as possible, or if a catalog being served is very large and needs more than the default allocation. If your index image has a file- system cache, determine a good approximation for this value by doubling the size of the package cache at /tmp/cache/cache/packages.json in the index image.\n\nThis field is best-effort; if unset, no default will be used and no Pod memory limit or $GOMEMLIMIT value will be set.", + Ref: ref("k8s.io/apimachinery/pkg/api/resource.Quantity"), + }, + }, + "extractContent": { + SchemaProps: spec.SchemaProps{ + Description: "ExtractContent configures the gRPC catalog Pod to extract catalog metadata from the provided index image and use a well-known version of the `opm` server to expose it. The catalog index image that this CatalogSource is configured to use *must* be using the file-based catalogs in order to utilize this feature.", + Ref: ref(v1alpha1.ExtractContentConfig{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + Dependencies: []string{ + v1alpha1.ExtractContentConfig{}.OpenAPIModelName(), "k8s.io/api/core/v1.Affinity", "k8s.io/api/core/v1.Toleration", "k8s.io/apimachinery/pkg/api/resource.Quantity"}, + } +} + +func schema_api_pkg_operators_v1alpha1_Icon(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "base64data": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "mediatype": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + }, + Required: []string{"base64data", "mediatype"}, + }, + }, + } +} + +func schema_api_pkg_operators_v1alpha1_InstallMode(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "InstallMode associates an InstallModeType with a flag representing if the CSV supports it", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "type": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "supported": { + SchemaProps: spec.SchemaProps{ + Default: false, + Type: []string{"boolean"}, + Format: "", + }, + }, + }, + Required: []string{"type", "supported"}, + }, + }, + } +} + +func schema_api_pkg_operators_v1alpha1_InstallPlan(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "InstallPlan defines the installation of a set of operators.", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, + "metadata": { + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta"), + }, + }, + "spec": { + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.InstallPlanSpec{}.OpenAPIModelName()), + }, + }, + "status": { + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.InstallPlanStatus{}.OpenAPIModelName()), + }, + }, + }, + Required: []string{"metadata", "spec"}, + }, + }, + Dependencies: []string{ + v1alpha1.InstallPlanSpec{}.OpenAPIModelName(), v1alpha1.InstallPlanStatus{}.OpenAPIModelName(), "k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta"}, + } +} + +func schema_api_pkg_operators_v1alpha1_InstallPlanCondition(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "InstallPlanCondition represents the overall status of the execution of an InstallPlan.", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "type": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "status": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "lastUpdateTime": { + SchemaProps: spec.SchemaProps{ + Description: "True, False, or Unknown", + Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Time"), + }, + }, + "lastTransitionTime": { + SchemaProps: spec.SchemaProps{ + Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Time"), + }, + }, + "reason": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "message": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + }, + }, + }, + Dependencies: []string{ + "k8s.io/apimachinery/pkg/apis/meta/v1.Time"}, + } +} + +func schema_api_pkg_operators_v1alpha1_InstallPlanList(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "InstallPlanList is a list of InstallPlan resources.", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, + "metadata": { + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"), + }, + }, + "items": { + SchemaProps: spec.SchemaProps{ + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.InstallPlan{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + }, + Required: []string{"metadata", "items"}, + }, + }, + Dependencies: []string{ + v1alpha1.InstallPlan{}.OpenAPIModelName(), "k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"}, + } +} + +func schema_api_pkg_operators_v1alpha1_InstallPlanReference(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "kind": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "name": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "uuid": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + }, + Required: []string{"apiVersion", "kind", "name", "uuid"}, + }, + }, + } +} + +func schema_api_pkg_operators_v1alpha1_InstallPlanSpec(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "InstallPlanSpec defines a set of Application resources to be installed", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "source": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "sourceNamespace": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "clusterServiceVersionNames": { + SchemaProps: spec.SchemaProps{ + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + }, + }, + }, + "approval": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "approved": { + SchemaProps: spec.SchemaProps{ + Default: false, + Type: []string{"boolean"}, + Format: "", + }, + }, + "generation": { + SchemaProps: spec.SchemaProps{ + Type: []string{"integer"}, + Format: "int32", + }, + }, + }, + Required: []string{"clusterServiceVersionNames", "approval", "approved"}, + }, + }, + } +} + +func schema_api_pkg_operators_v1alpha1_InstallPlanStatus(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "InstallPlanStatus represents the information about the status of steps required to complete installation.\n\nStatus may trail the actual state of a system.", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "phase": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "conditions": { + SchemaProps: spec.SchemaProps{ + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.InstallPlanCondition{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + "catalogSources": { + SchemaProps: spec.SchemaProps{ + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + }, + }, + }, + "plan": { + SchemaProps: spec.SchemaProps{ + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Ref: ref(v1alpha1.Step{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + "bundleLookups": { + SchemaProps: spec.SchemaProps{ + Description: "BundleLookups is the set of in-progress requests to pull and unpackage bundle content to the cluster.", + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.BundleLookup{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + "attenuatedServiceAccountRef": { + SchemaProps: spec.SchemaProps{ + Description: "AttenuatedServiceAccountRef references the service account that is used to do scoped operator install.", + Ref: ref("k8s.io/api/core/v1.ObjectReference"), + }, + }, + "startTime": { + SchemaProps: spec.SchemaProps{ + Description: "StartTime is the time when the controller began applying the resources listed in the plan to the cluster.", + Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Time"), + }, + }, + "message": { + SchemaProps: spec.SchemaProps{ + Description: "Message is a human-readable message containing detailed information that may be important to understanding why the plan has its current status.", + Type: []string{"string"}, + Format: "", + }, + }, + }, + Required: []string{"phase", "catalogSources"}, + }, + }, + Dependencies: []string{ + v1alpha1.BundleLookup{}.OpenAPIModelName(), v1alpha1.InstallPlanCondition{}.OpenAPIModelName(), v1alpha1.Step{}.OpenAPIModelName(), "k8s.io/api/core/v1.ObjectReference", "k8s.io/apimachinery/pkg/apis/meta/v1.Time"}, + } +} + +func schema_api_pkg_operators_v1alpha1_Maintainer(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "name": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "email": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + }, + }, + }, + } +} + +func schema_api_pkg_operators_v1alpha1_NamedInstallStrategy(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "NamedInstallStrategy represents the block of an ClusterServiceVersion resource where the install strategy is specified.", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "strategy": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "spec": { + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.StrategyDetailsDeployment{}.OpenAPIModelName()), + }, + }, + }, + Required: []string{"strategy"}, + }, + }, + Dependencies: []string{ + v1alpha1.StrategyDetailsDeployment{}.OpenAPIModelName()}, + } +} + +func schema_api_pkg_operators_v1alpha1_RegistryPoll(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "interval": { + SchemaProps: spec.SchemaProps{ + Description: "Interval is used to determine the time interval between checks of the latest catalog source version. The catalog operator polls to see if a new version of the catalog source is available. If available, the latest image is pulled and gRPC traffic is directed to the latest catalog source.", + Type: []string{"string"}, + Format: "", + }, + }, + }, + }, + }, + } +} + +func schema_api_pkg_operators_v1alpha1_RegistryServiceStatus(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "protocol": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "serviceName": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "serviceNamespace": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "port": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "createdAt": { + SchemaProps: spec.SchemaProps{ + Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Time"), + }, + }, + }, + }, + }, + Dependencies: []string{ + "k8s.io/apimachinery/pkg/apis/meta/v1.Time"}, + } +} + +func schema_api_pkg_operators_v1alpha1_RelatedImage(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "name": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "image": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + }, + Required: []string{"name", "image"}, + }, + }, + } +} + +func schema_api_pkg_operators_v1alpha1_RequirementStatus(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "group": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "version": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "kind": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "name": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "status": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "message": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "uuid": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "dependents": { + SchemaProps: spec.SchemaProps{ + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.DependentStatus{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + }, + Required: []string{"group", "version", "kind", "name", "status", "message"}, + }, + }, + Dependencies: []string{ + v1alpha1.DependentStatus{}.OpenAPIModelName()}, + } +} + +func schema_api_pkg_operators_v1alpha1_ResourceInstance(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "name": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "namespace": { + SchemaProps: spec.SchemaProps{ + Description: "Namespace can be empty for cluster-scoped resources", + Type: []string{"string"}, + Format: "", + }, + }, + }, + Required: []string{"name"}, + }, + }, + } +} + +func schema_api_pkg_operators_v1alpha1_ResourceList(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "ResourceList represents a list of resources which are of the same Group/Kind", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "group": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "kind": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "instances": { + SchemaProps: spec.SchemaProps{ + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.ResourceInstance{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + }, + Required: []string{"group", "kind", "instances"}, + }, + }, + Dependencies: []string{ + v1alpha1.ResourceInstance{}.OpenAPIModelName()}, + } +} + +func schema_api_pkg_operators_v1alpha1_SpecDescriptor(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "SpecDescriptor describes a field in a spec block of a CRD so that OLM can consume it", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "path": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "displayName": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "description": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "x-descriptors": { + SchemaProps: spec.SchemaProps{ + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + }, + }, + }, + "value": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "byte", + }, + }, + }, + Required: []string{"path"}, + }, + }, + } +} + +func schema_api_pkg_operators_v1alpha1_StatusDescriptor(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "StatusDescriptor describes a field in a status block of a CRD so that OLM can consume it", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "path": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "displayName": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "description": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "x-descriptors": { + SchemaProps: spec.SchemaProps{ + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + }, + }, + }, + "value": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "byte", + }, + }, + }, + Required: []string{"path"}, + }, + }, + } +} + +func schema_api_pkg_operators_v1alpha1_Step(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "Step represents the status of an individual step in an InstallPlan.", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "resolving": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "resource": { + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.StepResource{}.OpenAPIModelName()), + }, + }, + "optional": { + SchemaProps: spec.SchemaProps{ + Type: []string{"boolean"}, + Format: "", + }, + }, + "status": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + }, + Required: []string{"resolving", "resource", "status"}, + }, + }, + Dependencies: []string{ + v1alpha1.StepResource{}.OpenAPIModelName()}, + } +} + +func schema_api_pkg_operators_v1alpha1_StepResource(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "StepResource represents the status of a resource to be tracked by an InstallPlan.", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "sourceName": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "sourceNamespace": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "group": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "version": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "kind": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "name": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "manifest": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + }, + Required: []string{"sourceName", "sourceNamespace", "group", "version", "kind", "name"}, + }, + }, + } +} + +func schema_api_pkg_operators_v1alpha1_StrategyDeploymentPermissions(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "StrategyDeploymentPermissions describe the rbac rules and service account needed by the install strategy", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "serviceAccountName": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "rules": { + SchemaProps: spec.SchemaProps{ + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref("k8s.io/api/rbac/v1.PolicyRule"), + }, + }, + }, + }, + }, + }, + Required: []string{"serviceAccountName", "rules"}, + }, + }, + Dependencies: []string{ + "k8s.io/api/rbac/v1.PolicyRule"}, + } +} + +func schema_api_pkg_operators_v1alpha1_StrategyDeploymentSpec(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "StrategyDeploymentSpec contains the name, spec and labels for the deployment ALM should create", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "name": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "spec": { + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref("k8s.io/api/apps/v1.DeploymentSpec"), + }, + }, + "label": { + SchemaProps: spec.SchemaProps{ + Type: []string{"object"}, + AdditionalProperties: &spec.SchemaOrBool{ + Allows: true, + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + }, + }, + }, + }, + Required: []string{"name", "spec"}, + }, + }, + Dependencies: []string{ + "k8s.io/api/apps/v1.DeploymentSpec"}, + } +} + +func schema_api_pkg_operators_v1alpha1_StrategyDetailsDeployment(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "StrategyDetailsDeployment represents the parsed details of a Deployment InstallStrategy.", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "deployments": { + SchemaProps: spec.SchemaProps{ + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.StrategyDeploymentSpec{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + "permissions": { + SchemaProps: spec.SchemaProps{ + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.StrategyDeploymentPermissions{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + "clusterPermissions": { + SchemaProps: spec.SchemaProps{ + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.StrategyDeploymentPermissions{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + }, + Required: []string{"deployments"}, + }, + }, + Dependencies: []string{ + v1alpha1.StrategyDeploymentPermissions{}.OpenAPIModelName(), v1alpha1.StrategyDeploymentSpec{}.OpenAPIModelName()}, + } +} + +func schema_api_pkg_operators_v1alpha1_Subscription(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "Subscription keeps operators up to date by tracking changes to Catalogs.", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, + "metadata": { + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta"), + }, + }, + "spec": { + SchemaProps: spec.SchemaProps{ + Ref: ref(v1alpha1.SubscriptionSpec{}.OpenAPIModelName()), + }, + }, + "status": { + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.SubscriptionStatus{}.OpenAPIModelName()), + }, + }, + }, + Required: []string{"metadata", "spec"}, + }, + }, + Dependencies: []string{ + v1alpha1.SubscriptionSpec{}.OpenAPIModelName(), v1alpha1.SubscriptionStatus{}.OpenAPIModelName(), "k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta"}, + } +} + +func schema_api_pkg_operators_v1alpha1_SubscriptionCatalogHealth(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "SubscriptionCatalogHealth describes the health of a CatalogSource the Subscription knows about.", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "catalogSourceRef": { + SchemaProps: spec.SchemaProps{ + Description: "CatalogSourceRef is a reference to a CatalogSource.", + Ref: ref("k8s.io/api/core/v1.ObjectReference"), + }, + }, + "lastUpdated": { + SchemaProps: spec.SchemaProps{ + Description: "LastUpdated represents the last time that the CatalogSourceHealth changed", + Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Time"), + }, + }, + "healthy": { + SchemaProps: spec.SchemaProps{ + Description: "Healthy is true if the CatalogSource is healthy; false otherwise.", + Default: false, + Type: []string{"boolean"}, + Format: "", + }, + }, + }, + Required: []string{"catalogSourceRef", "lastUpdated", "healthy"}, + }, + }, + Dependencies: []string{ + "k8s.io/api/core/v1.ObjectReference", "k8s.io/apimachinery/pkg/apis/meta/v1.Time"}, + } +} + +func schema_api_pkg_operators_v1alpha1_SubscriptionCondition(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "SubscriptionCondition represents the latest available observations of a Subscription's state.", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "type": { + SchemaProps: spec.SchemaProps{ + Description: "Type is the type of Subscription condition.", + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "status": { + SchemaProps: spec.SchemaProps{ + Description: "Status is the status of the condition, one of True, False, Unknown.", + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "reason": { + SchemaProps: spec.SchemaProps{ + Description: "Reason is a one-word CamelCase reason for the condition's last transition.", + Type: []string{"string"}, + Format: "", + }, + }, + "message": { + SchemaProps: spec.SchemaProps{ + Description: "Message is a human-readable message indicating details about last transition.", + Type: []string{"string"}, + Format: "", + }, + }, + "lastHeartbeatTime": { + SchemaProps: spec.SchemaProps{ + Description: "LastHeartbeatTime is the last time we got an update on a given condition", + Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Time"), + }, + }, + "lastTransitionTime": { + SchemaProps: spec.SchemaProps{ + Description: "LastTransitionTime is the last time the condition transit from one status to another", + Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Time"), + }, + }, + }, + Required: []string{"type", "status"}, + }, + }, + Dependencies: []string{ + "k8s.io/apimachinery/pkg/apis/meta/v1.Time"}, + } +} + +func schema_api_pkg_operators_v1alpha1_SubscriptionConfig(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "SubscriptionConfig contains configuration specified for a subscription.", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "selector": { + SchemaProps: spec.SchemaProps{ + Description: "Selector is the label selector for pods to be configured. Existing ReplicaSets whose pods are selected by this will be the ones affected by this deployment. It must match the pod template's labels.", + Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.LabelSelector"), + }, + }, + "nodeSelector": { + SchemaProps: spec.SchemaProps{ + Description: "NodeSelector is a selector which must be true for the pod to fit on a node. Selector which must match a node's labels for the pod to be scheduled on that node. More info: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/", + Type: []string{"object"}, + AdditionalProperties: &spec.SchemaOrBool{ + Allows: true, + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + }, + }, + }, + "tolerations": { + SchemaProps: spec.SchemaProps{ + Description: "Tolerations are the pod's tolerations.", + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref("k8s.io/api/core/v1.Toleration"), + }, + }, + }, + }, + }, + "resources": { + SchemaProps: spec.SchemaProps{ + Description: "Resources represents compute resources required by this container. Immutable. More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/", + Ref: ref("k8s.io/api/core/v1.ResourceRequirements"), + }, + }, + "envFrom": { + SchemaProps: spec.SchemaProps{ + Description: "EnvFrom is a list of sources to populate environment variables in the container. The keys defined within a source must be a C_IDENTIFIER. All invalid keys will be reported as an event when the container is starting. When a key exists in multiple sources, the value associated with the last source will take precedence. Values defined by an Env with a duplicate key will take precedence. Immutable.", + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref("k8s.io/api/core/v1.EnvFromSource"), + }, + }, + }, + }, + }, + "env": { + VendorExtensible: spec.VendorExtensible{ + Extensions: spec.Extensions{ + "x-kubernetes-patch-merge-key": "name", + "x-kubernetes-patch-strategy": "merge", + }, + }, + SchemaProps: spec.SchemaProps{ + Description: "Env is a list of environment variables to set in the container. Cannot be updated.", + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref("k8s.io/api/core/v1.EnvVar"), + }, + }, + }, + }, + }, + "volumes": { + SchemaProps: spec.SchemaProps{ + Description: "List of Volumes to set in the podSpec.", + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref("k8s.io/api/core/v1.Volume"), + }, + }, + }, + }, + }, + "volumeMounts": { + SchemaProps: spec.SchemaProps{ + Description: "List of VolumeMounts to set in the container.", + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref("k8s.io/api/core/v1.VolumeMount"), + }, + }, + }, + }, + }, + "affinity": { + SchemaProps: spec.SchemaProps{ + Description: "If specified, overrides the pod's scheduling constraints. nil sub-attributes will *not* override the original values in the pod.spec for those sub-attributes. Use empty object ({}) to erase original sub-attribute values.", + Ref: ref("k8s.io/api/core/v1.Affinity"), + }, + }, + "annotations": { + SchemaProps: spec.SchemaProps{ + Description: "Annotations is an unstructured key value map stored with each Deployment, Pod, APIService in the Operator. Typically, annotations may be set by external tools to store and retrieve arbitrary metadata. Use this field to pre-define annotations that OLM should add to each of the Subscription's deployments, pods, and apiservices.", + Type: []string{"object"}, + AdditionalProperties: &spec.SchemaOrBool{ + Allows: true, + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + }, + }, + }, + }, + }, + }, + Dependencies: []string{ + "k8s.io/api/core/v1.Affinity", "k8s.io/api/core/v1.EnvFromSource", "k8s.io/api/core/v1.EnvVar", "k8s.io/api/core/v1.ResourceRequirements", "k8s.io/api/core/v1.Toleration", "k8s.io/api/core/v1.Volume", "k8s.io/api/core/v1.VolumeMount", "k8s.io/apimachinery/pkg/apis/meta/v1.LabelSelector"}, + } +} + +func schema_api_pkg_operators_v1alpha1_SubscriptionList(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "SubscriptionList is a list of Subscription resources.", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, + "metadata": { + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"), + }, + }, + "items": { + SchemaProps: spec.SchemaProps{ + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.Subscription{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + }, + Required: []string{"metadata", "items"}, + }, + }, + Dependencies: []string{ + v1alpha1.Subscription{}.OpenAPIModelName(), "k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"}, + } +} + +func schema_api_pkg_operators_v1alpha1_SubscriptionSpec(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "SubscriptionSpec defines an Application that can be installed", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "source": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "sourceNamespace": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "name": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "channel": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "startingCSV": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "installPlanApproval": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "config": { + SchemaProps: spec.SchemaProps{ + Ref: ref(v1alpha1.SubscriptionConfig{}.OpenAPIModelName()), + }, + }, + }, + Required: []string{"source", "sourceNamespace", "name"}, + }, + }, + Dependencies: []string{ + v1alpha1.SubscriptionConfig{}.OpenAPIModelName()}, + } +} + +func schema_api_pkg_operators_v1alpha1_SubscriptionStatus(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "currentCSV": { + SchemaProps: spec.SchemaProps{ + Description: "CurrentCSV is the CSV the Subscription is progressing to.", + Type: []string{"string"}, + Format: "", + }, + }, + "installedCSV": { + SchemaProps: spec.SchemaProps{ + Description: "InstalledCSV is the CSV currently installed by the Subscription.", + Type: []string{"string"}, + Format: "", + }, + }, + "installplan": { + SchemaProps: spec.SchemaProps{ + Description: "Install is a reference to the latest InstallPlan generated for the Subscription. DEPRECATED: InstallPlanRef", + Ref: ref(v1alpha1.InstallPlanReference{}.OpenAPIModelName()), + }, + }, + "state": { + SchemaProps: spec.SchemaProps{ + Description: "State represents the current state of the Subscription", + Type: []string{"string"}, + Format: "", + }, + }, + "reason": { + SchemaProps: spec.SchemaProps{ + Description: "Reason is the reason the Subscription was transitioned to its current state.", + Type: []string{"string"}, + Format: "", + }, + }, + "installPlanGeneration": { + SchemaProps: spec.SchemaProps{ + Description: "InstallPlanGeneration is the current generation of the installplan", + Type: []string{"integer"}, + Format: "int32", + }, + }, + "installPlanRef": { + SchemaProps: spec.SchemaProps{ + Description: "InstallPlanRef is a reference to the latest InstallPlan that contains the Subscription's current CSV.", + Ref: ref("k8s.io/api/core/v1.ObjectReference"), + }, + }, + "catalogHealth": { + SchemaProps: spec.SchemaProps{ + Description: "CatalogHealth contains the Subscription's view of its relevant CatalogSources' status. It is used to determine SubscriptionStatusConditions related to CatalogSources.", + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.SubscriptionCatalogHealth{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + "conditions": { + SchemaProps: spec.SchemaProps{ + Description: "Conditions is a list of the latest available observations about a Subscription's current state.", + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref(v1alpha1.SubscriptionCondition{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + "lastUpdated": { + SchemaProps: spec.SchemaProps{ + Description: "LastUpdated represents the last time that the Subscription status was updated.", + Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Time"), + }, + }, + }, + Required: []string{"lastUpdated"}, + }, + }, + Dependencies: []string{ + v1alpha1.InstallPlanReference{}.OpenAPIModelName(), v1alpha1.SubscriptionCatalogHealth{}.OpenAPIModelName(), v1alpha1.SubscriptionCondition{}.OpenAPIModelName(), "k8s.io/api/core/v1.ObjectReference", "k8s.io/apimachinery/pkg/apis/meta/v1.Time"}, + } +} + +func schema_api_pkg_operators_v1alpha1_UpdateStrategy(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "UpdateStrategy holds all the different types of catalog source update strategies Currently only registry polling strategy is implemented", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "registryPoll": { + SchemaProps: spec.SchemaProps{ + Ref: ref(v1alpha1.RegistryPoll{}.OpenAPIModelName()), + }, + }, + }, + }, + }, + Dependencies: []string{ + v1alpha1.RegistryPoll{}.OpenAPIModelName()}, + } +} + +func schema_api_pkg_operators_v1alpha1_WebhookDescription(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "WebhookDescription provides details to OLM about required webhooks", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "generateName": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "type": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "deploymentName": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "containerPort": { + SchemaProps: spec.SchemaProps{ + Type: []string{"integer"}, + Format: "int32", + }, + }, + "targetPort": { + SchemaProps: spec.SchemaProps{ + Ref: ref("k8s.io/apimachinery/pkg/util/intstr.IntOrString"), + }, + }, + "rules": { + SchemaProps: spec.SchemaProps{ + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref("k8s.io/api/admissionregistration/v1.RuleWithOperations"), + }, + }, + }, + }, + }, + "failurePolicy": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "matchPolicy": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "objectSelector": { + SchemaProps: spec.SchemaProps{ + Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.LabelSelector"), + }, + }, + "sideEffects": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "timeoutSeconds": { + SchemaProps: spec.SchemaProps{ + Type: []string{"integer"}, + Format: "int32", + }, + }, + "admissionReviewVersions": { + SchemaProps: spec.SchemaProps{ + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + }, + }, + }, + "reinvocationPolicy": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "webhookPath": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "conversionCRDs": { + SchemaProps: spec.SchemaProps{ + Type: []string{"array"}, + Items: &spec.SchemaOrArray{ + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + }, + }, + }, + }, + Required: []string{"generateName", "type", "sideEffects", "admissionReviewVersions"}, + }, + }, + Dependencies: []string{ + "k8s.io/api/admissionregistration/v1.RuleWithOperations", "k8s.io/apimachinery/pkg/apis/meta/v1.LabelSelector", "k8s.io/apimachinery/pkg/util/intstr.IntOrString"}, + } +} diff --git a/staging/api/pkg/lib/version/doc.go b/staging/api/pkg/lib/version/doc.go new file mode 100644 index 0000000000..7318ee6d19 --- /dev/null +++ b/staging/api/pkg/lib/version/doc.go @@ -0,0 +1,5 @@ +// +k8s:openapi-gen=true +// +k8s:openapi-model-package=com.github.operator-framework.api.pkg.operators.lib.version + +// Package version contains the OperatorVersion type. +package version diff --git a/staging/api/pkg/lib/version/zz_generated.model_name.go b/staging/api/pkg/lib/version/zz_generated.model_name.go new file mode 100644 index 0000000000..1fd31307ba --- /dev/null +++ b/staging/api/pkg/lib/version/zz_generated.model_name.go @@ -0,0 +1,26 @@ +//go:build !ignore_autogenerated +// +build !ignore_autogenerated + +/* + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// Code generated by openapi-gen-v0.0. DO NOT EDIT. + +package version + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in OperatorVersion) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.lib.version.OperatorVersion" +} diff --git a/staging/api/pkg/operators/v1alpha1/doc.go b/staging/api/pkg/operators/v1alpha1/doc.go index 74bc9b819a..fd9d1d8490 100644 --- a/staging/api/pkg/operators/v1alpha1/doc.go +++ b/staging/api/pkg/operators/v1alpha1/doc.go @@ -1,6 +1,8 @@ // +groupName=operators.coreos.com // +k8s:deepcopy-gen=package // +k8s:conversion-gen=github.com/operator-framework/operator-lifecycle-manager/pkg/api/apis/operators +// +k8s:openapi-gen=true +// +k8s:openapi-model-package=com.github.operator-framework.api.pkg.operators.v1alpha1 // Package v1alpha1 contains resources types for version v1alpha1 of the operators.coreos.com API group. package v1alpha1 diff --git a/staging/api/pkg/operators/v1alpha1/subscription_types.go b/staging/api/pkg/operators/v1alpha1/subscription_types.go index 7aa854f596..292fedf9b9 100644 --- a/staging/api/pkg/operators/v1alpha1/subscription_types.go +++ b/staging/api/pkg/operators/v1alpha1/subscription_types.go @@ -232,8 +232,6 @@ type SubscriptionStatus struct { // CatalogHealth contains the Subscription's view of its relevant CatalogSources' status. // It is used to determine SubscriptionStatusConditions related to CatalogSources. // +optional - // +patchMergeKey= - // +patchStrategy=merge CatalogHealth []SubscriptionCatalogHealth `json:"catalogHealth,omitempty"` // Conditions is a list of the latest available observations about a Subscription's current state. diff --git a/staging/api/pkg/operators/v1alpha1/zz_generated.model_name.go b/staging/api/pkg/operators/v1alpha1/zz_generated.model_name.go new file mode 100644 index 0000000000..555d6d7f09 --- /dev/null +++ b/staging/api/pkg/operators/v1alpha1/zz_generated.model_name.go @@ -0,0 +1,306 @@ +//go:build !ignore_autogenerated +// +build !ignore_autogenerated + +/* + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// Code generated by openapi-gen-v0.0. DO NOT EDIT. + +package v1alpha1 + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in APIResourceReference) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.APIResourceReference" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in APIServiceDefinitions) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.APIServiceDefinitions" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in APIServiceDescription) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.APIServiceDescription" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in ActionDescriptor) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.ActionDescriptor" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in AppLink) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.AppLink" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in BundleLookup) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.BundleLookup" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in BundleLookupCondition) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.BundleLookupCondition" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in CRDDescription) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.CRDDescription" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in CatalogSource) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.CatalogSource" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in CatalogSourceList) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.CatalogSourceList" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in CatalogSourceSpec) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.CatalogSourceSpec" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in CatalogSourceStatus) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.CatalogSourceStatus" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in CleanupSpec) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.CleanupSpec" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in CleanupStatus) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.CleanupStatus" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in ClusterServiceVersion) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.ClusterServiceVersion" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in ClusterServiceVersionCondition) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.ClusterServiceVersionCondition" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in ClusterServiceVersionList) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.ClusterServiceVersionList" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in ClusterServiceVersionSpec) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.ClusterServiceVersionSpec" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in ClusterServiceVersionStatus) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.ClusterServiceVersionStatus" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in ConfigMapResourceReference) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.ConfigMapResourceReference" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in CustomResourceDefinitions) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.CustomResourceDefinitions" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in DependentStatus) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.DependentStatus" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in ExtractContentConfig) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.ExtractContentConfig" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in GRPCConnectionState) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.GRPCConnectionState" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in GrpcPodConfig) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.GrpcPodConfig" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in Icon) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.Icon" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in InstallMode) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.InstallMode" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in InstallPlan) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.InstallPlan" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in InstallPlanCondition) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.InstallPlanCondition" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in InstallPlanList) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.InstallPlanList" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in InstallPlanReference) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.InstallPlanReference" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in InstallPlanSpec) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.InstallPlanSpec" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in InstallPlanStatus) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.InstallPlanStatus" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in Maintainer) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.Maintainer" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in NamedInstallStrategy) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.NamedInstallStrategy" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in RegistryPoll) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.RegistryPoll" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in RegistryServiceStatus) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.RegistryServiceStatus" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in RelatedImage) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.RelatedImage" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in RequirementStatus) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.RequirementStatus" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in ResourceInstance) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.ResourceInstance" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in ResourceList) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.ResourceList" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in SpecDescriptor) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.SpecDescriptor" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in StatusDescriptor) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.StatusDescriptor" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in Step) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.Step" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in StepResource) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.StepResource" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in StrategyDeploymentPermissions) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.StrategyDeploymentPermissions" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in StrategyDeploymentSpec) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.StrategyDeploymentSpec" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in StrategyDetailsDeployment) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.StrategyDetailsDeployment" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in Subscription) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.Subscription" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in SubscriptionCatalogHealth) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.SubscriptionCatalogHealth" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in SubscriptionCondition) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.SubscriptionCondition" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in SubscriptionConfig) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.SubscriptionConfig" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in SubscriptionList) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.SubscriptionList" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in SubscriptionSpec) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.SubscriptionSpec" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in SubscriptionStatus) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.SubscriptionStatus" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in UpdateStrategy) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.UpdateStrategy" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in WebhookDescription) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.WebhookDescription" +} diff --git a/vendor/github.com/operator-framework/api/pkg/lib/version/doc.go b/vendor/github.com/operator-framework/api/pkg/lib/version/doc.go new file mode 100644 index 0000000000..7318ee6d19 --- /dev/null +++ b/vendor/github.com/operator-framework/api/pkg/lib/version/doc.go @@ -0,0 +1,5 @@ +// +k8s:openapi-gen=true +// +k8s:openapi-model-package=com.github.operator-framework.api.pkg.operators.lib.version + +// Package version contains the OperatorVersion type. +package version diff --git a/vendor/github.com/operator-framework/api/pkg/lib/version/zz_generated.model_name.go b/vendor/github.com/operator-framework/api/pkg/lib/version/zz_generated.model_name.go new file mode 100644 index 0000000000..1fd31307ba --- /dev/null +++ b/vendor/github.com/operator-framework/api/pkg/lib/version/zz_generated.model_name.go @@ -0,0 +1,26 @@ +//go:build !ignore_autogenerated +// +build !ignore_autogenerated + +/* + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// Code generated by openapi-gen-v0.0. DO NOT EDIT. + +package version + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in OperatorVersion) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.lib.version.OperatorVersion" +} diff --git a/vendor/github.com/operator-framework/api/pkg/operators/v1alpha1/doc.go b/vendor/github.com/operator-framework/api/pkg/operators/v1alpha1/doc.go index 74bc9b819a..fd9d1d8490 100644 --- a/vendor/github.com/operator-framework/api/pkg/operators/v1alpha1/doc.go +++ b/vendor/github.com/operator-framework/api/pkg/operators/v1alpha1/doc.go @@ -1,6 +1,8 @@ // +groupName=operators.coreos.com // +k8s:deepcopy-gen=package // +k8s:conversion-gen=github.com/operator-framework/operator-lifecycle-manager/pkg/api/apis/operators +// +k8s:openapi-gen=true +// +k8s:openapi-model-package=com.github.operator-framework.api.pkg.operators.v1alpha1 // Package v1alpha1 contains resources types for version v1alpha1 of the operators.coreos.com API group. package v1alpha1 diff --git a/vendor/github.com/operator-framework/api/pkg/operators/v1alpha1/subscription_types.go b/vendor/github.com/operator-framework/api/pkg/operators/v1alpha1/subscription_types.go index 7aa854f596..292fedf9b9 100644 --- a/vendor/github.com/operator-framework/api/pkg/operators/v1alpha1/subscription_types.go +++ b/vendor/github.com/operator-framework/api/pkg/operators/v1alpha1/subscription_types.go @@ -232,8 +232,6 @@ type SubscriptionStatus struct { // CatalogHealth contains the Subscription's view of its relevant CatalogSources' status. // It is used to determine SubscriptionStatusConditions related to CatalogSources. // +optional - // +patchMergeKey= - // +patchStrategy=merge CatalogHealth []SubscriptionCatalogHealth `json:"catalogHealth,omitempty"` // Conditions is a list of the latest available observations about a Subscription's current state. diff --git a/vendor/github.com/operator-framework/api/pkg/operators/v1alpha1/zz_generated.model_name.go b/vendor/github.com/operator-framework/api/pkg/operators/v1alpha1/zz_generated.model_name.go new file mode 100644 index 0000000000..555d6d7f09 --- /dev/null +++ b/vendor/github.com/operator-framework/api/pkg/operators/v1alpha1/zz_generated.model_name.go @@ -0,0 +1,306 @@ +//go:build !ignore_autogenerated +// +build !ignore_autogenerated + +/* + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// Code generated by openapi-gen-v0.0. DO NOT EDIT. + +package v1alpha1 + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in APIResourceReference) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.APIResourceReference" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in APIServiceDefinitions) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.APIServiceDefinitions" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in APIServiceDescription) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.APIServiceDescription" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in ActionDescriptor) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.ActionDescriptor" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in AppLink) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.AppLink" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in BundleLookup) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.BundleLookup" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in BundleLookupCondition) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.BundleLookupCondition" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in CRDDescription) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.CRDDescription" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in CatalogSource) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.CatalogSource" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in CatalogSourceList) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.CatalogSourceList" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in CatalogSourceSpec) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.CatalogSourceSpec" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in CatalogSourceStatus) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.CatalogSourceStatus" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in CleanupSpec) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.CleanupSpec" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in CleanupStatus) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.CleanupStatus" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in ClusterServiceVersion) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.ClusterServiceVersion" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in ClusterServiceVersionCondition) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.ClusterServiceVersionCondition" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in ClusterServiceVersionList) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.ClusterServiceVersionList" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in ClusterServiceVersionSpec) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.ClusterServiceVersionSpec" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in ClusterServiceVersionStatus) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.ClusterServiceVersionStatus" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in ConfigMapResourceReference) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.ConfigMapResourceReference" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in CustomResourceDefinitions) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.CustomResourceDefinitions" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in DependentStatus) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.DependentStatus" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in ExtractContentConfig) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.ExtractContentConfig" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in GRPCConnectionState) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.GRPCConnectionState" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in GrpcPodConfig) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.GrpcPodConfig" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in Icon) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.Icon" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in InstallMode) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.InstallMode" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in InstallPlan) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.InstallPlan" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in InstallPlanCondition) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.InstallPlanCondition" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in InstallPlanList) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.InstallPlanList" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in InstallPlanReference) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.InstallPlanReference" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in InstallPlanSpec) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.InstallPlanSpec" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in InstallPlanStatus) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.InstallPlanStatus" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in Maintainer) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.Maintainer" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in NamedInstallStrategy) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.NamedInstallStrategy" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in RegistryPoll) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.RegistryPoll" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in RegistryServiceStatus) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.RegistryServiceStatus" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in RelatedImage) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.RelatedImage" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in RequirementStatus) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.RequirementStatus" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in ResourceInstance) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.ResourceInstance" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in ResourceList) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.ResourceList" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in SpecDescriptor) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.SpecDescriptor" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in StatusDescriptor) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.StatusDescriptor" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in Step) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.Step" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in StepResource) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.StepResource" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in StrategyDeploymentPermissions) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.StrategyDeploymentPermissions" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in StrategyDeploymentSpec) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.StrategyDeploymentSpec" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in StrategyDetailsDeployment) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.StrategyDetailsDeployment" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in Subscription) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.Subscription" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in SubscriptionCatalogHealth) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.SubscriptionCatalogHealth" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in SubscriptionCondition) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.SubscriptionCondition" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in SubscriptionConfig) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.SubscriptionConfig" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in SubscriptionList) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.SubscriptionList" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in SubscriptionSpec) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.SubscriptionSpec" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in SubscriptionStatus) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.SubscriptionStatus" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in UpdateStrategy) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.UpdateStrategy" +} + +// OpenAPIModelName returns the OpenAPI model name for this type. +func (in WebhookDescription) OpenAPIModelName() string { + return "com.github.operator-framework.api.pkg.operators.v1alpha1.WebhookDescription" +} From 17b9c25fc32804e544a701ed4535931da96ee1ac Mon Sep 17 00:00:00 2001 From: Camila Macedo <7708031+camilamacedo86@users.noreply.github.com> Date: Wed, 25 Feb 2026 16:22:49 +0000 Subject: [PATCH 24/24] Upgrade from go 1.25.3 to 1.25.7 (#474) Upstream-repository: api Upstream-commit: afd36f685f2e365b983d172bcb68c299e085cc1c --- staging/api/go.mod | 2 +- vendor/modules.txt | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/staging/api/go.mod b/staging/api/go.mod index f6f64ea6f0..4411497f0e 100644 --- a/staging/api/go.mod +++ b/staging/api/go.mod @@ -1,6 +1,6 @@ module github.com/operator-framework/api -go 1.25.3 +go 1.25.7 require ( github.com/blang/semver/v4 v4.0.0 diff --git a/vendor/modules.txt b/vendor/modules.txt index 965931cd3f..3e03a8bfa8 100644 --- a/vendor/modules.txt +++ b/vendor/modules.txt @@ -639,7 +639,7 @@ github.com/openshift/client-go/config/listers/config/v1alpha2 ## explicit; go 1.24.0 github.com/openshift/library-go/pkg/crypto # github.com/operator-framework/api v0.41.0 => ./staging/api -## explicit; go 1.25.3 +## explicit; go 1.25.7 github.com/operator-framework/api/crds github.com/operator-framework/api/pkg/constraints github.com/operator-framework/api/pkg/encoding