async function listInstancePatches()

in solution/solution-compliance-audit-for-data-plane/source/function/ecs-patch-baseline/index.js [272:304]


async function listInstancePatches(resourceId, client) {
  let patches = [];
  let nextToken = '';

  while (true) {
    const res = await client.request(
      'ListInstancePatches',
      {
        InstanceId: resourceId,
        PatchStatuses: JSON.stringify([
          'Missing',
          'InstalledPendingReboot',
          'Failed',
          'InstalledRejected',
        ]),
        MaxResults: 100,
        NextToken: nextToken,
      },
      requestOption
    );
    const _patches = _.get(res, 'Patches', []);
    if (_.isEmpty(_patches)) {
      break;
    }
    patches = patches.concat(_patches);
    nextToken = _.get(res, 'NextToken', '');
    if (nextToken == null || nextToken == '') {
      break;
    }
  }
  
  return patches;
}