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;
}