Я создаю аннулирование в CloudFront через вызов API-шлюза в Lambda, но аннулирование обрабатывается только примерно в 1 из 5 попыток.Я уверен, что мне не хватает чего-то, что могло бы должным образом ожидать вызова метода createInvalidation.
'use strict';
var AWS = require('aws-sdk');
var cloudfront = new AWS.CloudFront();
var distID = process.env.DISTRIBUTION_ID;
exports.handler = async(event) => {
var path = (event.queryStringParameters.path);
console.log(event.queryStringParameters.path);
var params = {
DistributionId: distID,
InvalidationBatch: {
CallerReference: (event.requestContext.requestId),
Paths: {
Quantity: 1,
Items: [
path
]
}
}
};
await cloudfront.createInvalidation(params, function(err, data) {
if (err) console.log(err, err.stack); // an error occurred
else console.log(data); // successful response
return data;
});
};
Функция Lambda завершается каждый раз и получает и анализирует вызов API-шлюза просто для заполнения переменных, но createInvalidation происходит только примерно в 1 из 5 попыток, хотя другие 4 попытки не вызвали ошибок.