How do I access the secret manager in the MutationCreatePaymentDetailsDataResolverFn template ( VTL Language ) from the AWS App Sync Resolver?
I want to get some value from secrets. and I also want those values to be added to the response of the resolver.
I have attached my default resolver structure screenshots and also attached the resolver code screenshot.
My resolver code was,
## [Start] Create Request template. **
#set( $args = $util.defaultIfNull($ctx.stash.transformedArgs, $ctx.args) )
## Set the default values to put request **
#set( $mergedValues = $util.defaultIfNull($ctx.stash.defaultValues, {}) )
## copy the values from input **
$util.qr($mergedValues.putAll($util.defaultIfNull($args.input, {})))
## set the typename **
$util.qr($mergedValues.put("__typename", "PaymentDetails"))
#set( $PutObject = {
"version": "2018-05-29",
"operation": "PutItem",
"attributeValues": $util.dynamodb.toMapValues($mergedValues),
"condition": $condition
} )
#if( $args.condition )
$util.qr($ctx.stash.conditions.add($args.condition))
#end
## Begin - key condition **
#if( $ctx.stash.metadata.modelObjectKey )
#set( $keyConditionExpr = {} )
#set( $keyConditionExprNames = {} )
#foreach( $entry in $ctx.stash.metadata.modelObjectKey.entrySet() )
$util.qr($keyConditionExpr.put("keyCondition$velocityCount", {
"attributeExists": false
}))
$util.qr($keyConditionExprNames.put("#keyCondition$velocityCount", "$entry.key"))
#end
$util.qr($ctx.stash.conditions.add($keyConditionExpr))
#else
$util.qr($ctx.stash.conditions.add({
"id": {
"attributeExists": false
}
}))
#end
## End - key condition **
## Start condition block **
#if( $ctx.stash.conditions && $ctx.stash.conditions.size() != 0 )
#set( $mergedConditions = {
"and": $ctx.stash.conditions
} )
#set( $Conditions = $util.parseJson($util.transform.toDynamoDBConditionExpression($mergedConditions)) )
#if( $Conditions.expressionValues && $Conditions.expressionValues.size() == 0 )
#set( $Conditions = {
"expression": $Conditions.expression,
"expressionNames": $Conditions.expressionNames
} )
#end
## End condition block **
#end
#if( $Conditions )
#if( $keyConditionExprNames )
$util.qr($Conditions.expressionNames.putAll($keyConditionExprNames))
#end
$util.qr($PutObject.put("condition", $Conditions))
#end
#if( $ctx.stash.metadata.modelObjectKey )
$util.qr($PutObject.put("key", $ctx.stash.metadata.modelObjectKey))
#else
#set( $Key = {
"id": $util.dynamodb.toDynamoDB($mergedValues.id)
} )
$util.qr($PutObject.put("key", $Key))
#end
$util.toJson($PutObject)
## [End] Create Request template. **
I have using Amplify application. your provided method is working but when i using amplify push command for using local changes that time resolver automatically change as an default.(manual changes are automatically overwrite as an default)