diff --git a/assets/controller.yaml b/assets/controller.yaml index 63760dcf..99c3ea66 100644 --- a/assets/controller.yaml +++ b/assets/controller.yaml @@ -53,7 +53,7 @@ spec: - --output-file-path=/etc/merged-cloud-config/cloud.conf # Force disable node's managed identity, azure-disk-credentials Secret should be used. - --disable-identity-extension-auth - - --enable-azure-workload-identity=${ENABLE_AZURE_WORKLOAD_IDENTITY} + - --enable-azure-workload-identity=true env: - name: AZURE_CLIENT_ID valueFrom: diff --git a/assets/node.yaml b/assets/node.yaml index 8e06db1b..d9162061 100644 --- a/assets/node.yaml +++ b/assets/node.yaml @@ -41,7 +41,7 @@ spec: - --output-file-path=/etc/merged-cloud-config/cloud.conf # Force disable node's managed identity, azure-disk-credentials Secret should be used. - --disable-identity-extension-auth - - --enable-azure-workload-identity=${ENABLE_AZURE_WORKLOAD_IDENTITY} + - --enable-azure-workload-identity=true env: - name: AZURE_CLIENT_ID valueFrom: diff --git a/pkg/operator/starter.go b/pkg/operator/starter.go index cf241b01..2fc8b357 100644 --- a/pkg/operator/starter.go +++ b/pkg/operator/starter.go @@ -2,13 +2,10 @@ package operator import ( "context" - "fmt" "os" "strings" "time" - configv1 "github.com/openshift/api/config/v1" - "k8s.io/client-go/dynamic" kubeclient "k8s.io/client-go/kubernetes" "k8s.io/client-go/rest" @@ -27,22 +24,19 @@ import ( "github.com/openshift/library-go/pkg/operator/csi/csidrivernodeservicecontroller" goc "github.com/openshift/library-go/pkg/operator/genericoperatorclient" "github.com/openshift/library-go/pkg/operator/v1helpers" - - "github.com/openshift/library-go/pkg/operator/configobserver/featuregates" ) const ( - defaultNamespace = "openshift-cluster-csi-drivers" - operatorName = "azure-file-csi-driver-operator" - operandName = "azure-file-csi-driver" - openShiftConfigNamespace = "openshift-config" - cloudCredSecretName = "azure-file-credentials" - metricsCertSecretName = "azure-file-csi-driver-controller-metrics-serving-cert" - tokenFileKey = "azure_federated_token_file" - ccmOperatorImageEnvName = "CLUSTER_CLOUD_CONTROLLER_MANAGER_OPERATOR_IMAGE" - trustedCAConfigMap = "azure-file-csi-driver-trusted-ca-bundle" - resync = 20 * time.Minute - operatorImageVersionEnvVarName = "OPERATOR_IMAGE_VERSION" + defaultNamespace = "openshift-cluster-csi-drivers" + operatorName = "azure-file-csi-driver-operator" + operandName = "azure-file-csi-driver" + openShiftConfigNamespace = "openshift-config" + cloudCredSecretName = "azure-file-credentials" + metricsCertSecretName = "azure-file-csi-driver-controller-metrics-serving-cert" + tokenFileKey = "azure_federated_token_file" + ccmOperatorImageEnvName = "CLUSTER_CLOUD_CONTROLLER_MANAGER_OPERATOR_IMAGE" + trustedCAConfigMap = "azure-file-csi-driver-trusted-ca-bundle" + resync = 20 * time.Minute ) func RunOperator(ctx context.Context, controllerConfig *controllercmd.ControllerContext) error { @@ -73,31 +67,8 @@ func RunOperator(ctx context.Context, controllerConfig *controllercmd.Controller return err } - desiredVersion := os.Getenv(operatorImageVersionEnvVarName) - missingVersion := "0.0.1-snapshot" - - featureGateAccessor := featuregates.NewFeatureGateAccess( - desiredVersion, - missingVersion, - configInformers.Config().V1().ClusterVersions(), - configInformers.Config().V1().FeatureGates(), - controllerConfig.EventRecorder, - ) - go featureGateAccessor.Run(ctx) - go configInformers.Start(ctx.Done()) - - select { - case <-featureGateAccessor.InitialFeatureGatesObserved(): - featureGates, _ := featureGateAccessor.CurrentFeatureGates() - klog.Info("FeatureGates initialized", "knownFeatures", featureGates.KnownFeatures()) - case <-time.After(1 * time.Minute): - klog.Error(nil, "timed out waiting for FeatureGate detection") - return fmt.Errorf("timed out waiting for FeatureGate detection") - } - replacedAssets := &assetWithReplacement{} replacedAssets.Replace("${CLUSTER_CLOUD_CONTROLLER_MANAGER_OPERATOR_IMAGE}", os.Getenv(ccmOperatorImageEnvName)) - replaceWorkloadIdentityConfig(replacedAssets, featureGateAccessor) csiControllerSet := csicontrollerset.NewCSIControllerSet( operatorClient, @@ -224,20 +195,3 @@ func (r *assetWithReplacement) GetAssetFunc() func(name string) ([]byte, error) return []byte(asset), nil } } - -func replaceWorkloadIdentityConfig(assets *assetWithReplacement, fg featuregates.FeatureGateAccess) error { - workloadIdentity := "false" - - featureGates, err := fg.CurrentFeatureGates() - if err != nil { - return err - } - - if featureGates.Enabled(configv1.FeatureGateAzureWorkloadIdentity) { - workloadIdentity = "true" - } - - assets.Replace("${ENABLE_AZURE_WORKLOAD_IDENTITY}", workloadIdentity) - - return nil -}