Skip to content

Commit f8d0a5a

Browse files
committed
feat: Add DeploymentConfig support to registry+v1 bundle renderer
This PR implements **Phase 2** of the [Deployment Configuration RFC](https://docs.google.com/document/d/18O4qBvu5I4WIJgo5KU1opyUKcrfgk64xsI3tyXxmVEU/edit?tab=t.0): extending the OLMv1 bundle renderer to apply `DeploymentConfig` customizations to operator deployments. Building on the foundation from #2454, this PR enables the renderer to accept and apply deployment configuration when rendering registry+v1 bundles. The implementation follows OLMv0's behavior patterns to ensure compatibility and correctness. The next PR will wire up the config in the `ClusterExtension` controller by parsing `spec.install.config` to convert to `DeploymentConfig` and thread `DeploymentConfig` through the controller's render call chain
1 parent fbe909f commit f8d0a5a

6 files changed

Lines changed: 1938 additions & 0 deletions

File tree

internal/operator-controller/config/config.go

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,8 @@ import (
3030
"fmt"
3131
"strings"
3232

33+
"github.com/operator-framework/api/pkg/operators/v1alpha1"
34+
3335
"github.com/santhosh-tekuri/jsonschema/v6"
3436
"sigs.k8s.io/yaml"
3537
)
@@ -47,6 +49,10 @@ const (
4749
FormatSingleNamespaceInstallMode = "singleNamespaceInstallMode"
4850
)
4951

52+
// DeploymentConfig is a type alias for v1alpha1.SubscriptionConfig
53+
// to maintain clear naming in the OLMv1 context while reusing the v0 type.
54+
type DeploymentConfig = v1alpha1.SubscriptionConfig
55+
5056
// SchemaProvider lets each package format type describe what configuration it accepts.
5157
//
5258
// Different package format types provide schemas in different ways:

0 commit comments

Comments
 (0)