in source/networkFirewallAutomation/lib/service/network-firewall-service.ts [173:191]
async updateRuleGroup(updateRuleGroupRequest: NetworkFirewall.Types.UpdateRuleGroupRequest) {
let updateResponse;
do {
try {
updateResponse = await this.NetworkFirewallInstance.updateRuleGroup(updateRuleGroupRequest).promise();
updateRuleGroupRequest.UpdateToken = ''
} catch (error) {
if (error['message'] == 'Update token is invalid.') {
const describeResponse = await this.NetworkFirewallInstance.describeRuleGroup({ RuleGroupArn: updateRuleGroupRequest.RuleGroupArn }).promise()
updateRuleGroupRequest.UpdateToken = describeResponse.UpdateToken
} else {
Logger.log(LOG_LEVEL.INFO, `Error while trying to update the rule group ${updateRuleGroupRequest}: ${error}`)
return Promise.reject(error)
}
}
} while (updateRuleGroupRequest.UpdateToken)
Logger.log(LOG_LEVEL.INFO, `update response ${JSON.stringify(updateResponse)}`)
return Promise.resolve(updateResponse);
}