protected createSecretProviderClass()

in lib/addons/secrets-store/csi-driver-provider-aws-secrets.ts [209:238]


    protected createSecretProviderClass(csiDriver: Construct): Construct {
        const cluster = this.clusterInfo.cluster;
        const secretProviderClass = this.secretProviderClassName;
        const secretProviderClassManifest = cluster.addManifest(secretProviderClass, {
            apiVersion: 'secrets-store.csi.x-k8s.io/v1alpha1',
            kind: 'SecretProviderClass',
            metadata: {
                name: secretProviderClass,
                namespace: this.serviceAccount.serviceAccountNamespace
            },
            spec: {
                provider: 'aws',
                parameters: {
                    objects: JSON.stringify(this.parameterObjects),
                },
                secretObjects: this.kubernetesSecrets
            }
        });

        secretProviderClassManifest.node.addDependency(
            this.serviceAccount,
            csiDriver
        );

        new CfnOutput(cluster.stack, `${this.serviceAccount.serviceAccountName}-secret-provider-class `, {
            value: secretProviderClass
        });

        return secretProviderClassManifest;
    }