Common configuration options for SopsSecret, SopsStringParameter and MultiStringParameter
const construct = new Sops...(this, 'My' { /** * use your own SopsSyncProvider * @see SopsSyncProvider */ sopsProvider: myCustomProvider // default - a new provider will be created /** * the constructs try to derive the required iam permissions from the sops file * and the target. If you don't want this, you can disable this behaviour. * You have to take care of all required permissions on your own. */ autoGenerateIamPermissions: false, // default: true /** * the default behaviour of passing the sops file content to the provider is * by embedding the base64 encoded content in the CloudFormation template. * Using CDK Assets is also supported. It might be required to switch to * Assets, if your sops files are very large. */ uploadType: UploadType.ASSET, // default: UploadType.INLINE /** * if you don't want this constructs to take care of passing the encrypted * sops file to the sops provider, you can upload them yourself to a * S3 bucket. * You can pass bucket and key, and the constructs won't pass the content * as ASSET or in the CloudFormation Template. * As the construct isn't aware of the sopsfile, we can't derive the required * permissions to decrypt the sops file. The same applies to the sopsFileFormat. * You have to pass them all manually. */ sopsS3Bucket: 'my-custom-bucket', sopsS3Key: 'encoded-sops.json', sopsKmsKey: [ kmsKeyUsedForEncryption, ] sopsFileFormat: 'json', // Allowed values are json, yaml, dotenv and binary})