Exemplo n.º 1
0
 def _augment(resource_set):
     resources = []
     client = local_session(self.session_factory).client('kinesis')
     for stream_name in resource_set:
         resources.append(
             client.describe_stream(
                 StreamName=stream_name)['StreamDescription'])
     return resources
Exemplo n.º 2
0
 def _augment(resource_set):
     resources = []
     client = local_session(self.session_factory).client('firehose')
     for stream_name in resource_set:
         resources.append(
             client.describe_delivery_stream(
                 DeliveryStreamName=stream_name)[
                     'DeliveryStreamDescription'])
     return resources
Exemplo n.º 3
0
 def get_resources(self, resource_ids, cache=True):
     """For IAM Roles on events, resource ids are role names."""
     resources = []
     client = local_session(self.session_factory).client('iam')
     for rid in resource_ids:
         try:
             resources.append(client.get_role(RoleName=rid)['Role'])
         except client.exceptions.NoSuchEntityException:
             continue
     return resources
Exemplo n.º 4
0
 def get_resources(self, resource_ids, cache=True):
     client = local_session(self.session_factory).client('backup')
     resources = []
     for rid in resource_ids:
         try:
             resources.append(
                 client.describe_backup_vault(BackupVaultName=rid))
         except client.exceptions.ResourceNotFoundException:
             continue
     return self.augment(resources)
Exemplo n.º 5
0
 def get_resources(self, resource_ids, cache=True):
     """For IAM Roles on events, resource ids are role names."""
     resources = []
     client = local_session(self.session_factory).client('iam')
     for rid in resource_ids:
         try:
             resources.append(client.get_role(RoleName=rid)['Role'])
         except client.exceptions.NoSuchEntityException:
             continue
     return resources
Exemplo n.º 6
0
 def get_resources(self, resource_ids, cache=True):
     client = local_session(self.manager.session_factory).client('iam')
     resources = []
     for rid in resource_ids:
         try:
             resources.append(client.get_user(UserName=rid).get('User'))
         except ClientError as e:
             if e.response['Error']['Code'] == 'NoSuchEntityException':
                 continue
             raise
     return resources
Exemplo n.º 7
0
    def get_resources(self, resource_ids, cache=True):
        client = local_session(self.session_factory).client('backup')
        resources = []

        for rid in resource_ids:
            try:
                resources.append(
                    client.get_backup_plan(BackupPlanId=rid)['BackupPlan'])
            except client.exceptions.ResourceNotFoundException:
                continue
        return resources
Exemplo n.º 8
0
 def get_resources(self, resource_ids, cache=True):
     client = local_session(self.manager.session_factory).client('iam')
     resources = []
     for rid in resource_ids:
         try:
             resources.append(client.get_user(UserName=rid).get('User'))
         except ClientError as e:
             if e.response['Error']['Code'] == 'NoSuchEntityException':
                 continue
             raise
     return resources
Exemplo n.º 9
0
    def get_resources(self, resource_ids, cache=True):
        client = local_session(self.session_factory).client('backup')
        resources = []

        for rid in resource_ids:
            try:
                resources.append(
                    client.get_backup_plan(BackupPlanId=rid)['BackupPlan'])
            except client.exceptions.ResourceNotFoundException:
                continue
        return resources
Exemplo n.º 10
0
 def get_resources(self, ids):
     client = local_session(self.manager.session_factory).client('lambda')
     resources = []
     for rid in ids:
         try:
             func = self.manager.retry(client.get_function,
                                       FunctionName=rid)
         except client.exceptions.ResourceNotFoundException:
             continue
         config = func.pop('Configuration')
         config.update(func)
         resources.append(config)
     return resources
Exemplo n.º 11
0
 def get_resources(self, resource_ids, cache=True):
     """For IAM Groups on events, resource ids are Group Names."""
     client = local_session(self.session_factory).client('iam')
     resources = []
     for rid in resource_ids:
         try:
             result = client.get_group(GroupName=rid)
         except client.exceptions.NoSuchEntityException:
             continue
         group = result.pop('Group')
         group['c7n:Users'] = result['Users']
         resources.append(group)
     return resources
Exemplo n.º 12
0
 def get_resources(self, resource_ids, cache=True):
     """For IAM Groups on events, resource ids are Group Names."""
     client = local_session(self.session_factory).client('iam')
     resources = []
     for rid in resource_ids:
         try:
             result = client.get_group(GroupName=rid)
         except client.exceptions.NoSuchEntityException:
             continue
         group = result.pop('Group')
         group['c7n:Users'] = result['Users']
         resources.append(group)
     return resources
Exemplo n.º 13
0
    def get_resources(self, resource_ids, cache=True):
        client = local_session(self.manager.session_factory).client('backup')
        resources = []

        for rid in resource_ids:
            try:
                r = client.get_backup_plan(BackupPlanId=rid)
                plan = r.pop('BackupPlan', {})
                r.update(plan)
                resources.append(r)
            except client.exceptions.ResourceNotFoundException:
                continue
        return resources
Exemplo n.º 14
0
 def get_resources(self, ids):
     client = local_session(self.manager.session_factory).client('lambda')
     resources = []
     for rid in ids:
         try:
             func = self.manager.retry(client.get_function, FunctionName=rid)
         except client.exceptions.ResourceNotFoundException:
             continue
         config = func.pop('Configuration')
         config.update(func)
         if 'Tags' in config:
             config['Tags'] = [
                 {'Key': k, 'Value': v} for k, v in config['Tags'].items()]
         resources.append(config)
     return resources