Coverage for /pythoncovmergedfiles/medio/medio/usr/local/lib/python3.8/site-packages/c7n/exceptions.py: 58%
19 statements
« prev ^ index » next coverage.py v7.3.2, created at 2023-12-08 06:51 +0000
« prev ^ index » next coverage.py v7.3.2, created at 2023-12-08 06:51 +0000
1# Copyright The Cloud Custodian Authors.
2# SPDX-License-Identifier: Apache-2.0
4try:
5 from botocore.exceptions import ClientError
6except ImportError:
7 class ClientError(Exception):
8 """dummy boto api error"""
11class CustodianError(Exception):
12 """Custodian Exception Base Class
13 """
16class InvalidOutputConfig(CustodianError):
17 """Invalid configuration for an output"""
20class PolicySyntaxError(CustodianError):
21 """Policy Syntax Error
22 """
25class PolicyYamlError(PolicySyntaxError):
26 """Policy Yaml Structural Error
27 """
30class PolicyValidationError(PolicySyntaxError):
31 """Policy Validation Error
32 """
35class DeprecationError(PolicySyntaxError):
36 """Policy using deprecated syntax
37 """
40class PolicyExecutionError(CustodianError):
41 """Error running a Policy.
42 """
45class ResourceLimitExceeded(PolicyExecutionError):
46 """The policy would have affected more resources than its limit.
47 """
48 def __init__(self, msg, limit_type, limit, selection_count, population_count):
49 msg = msg.format(
50 limit=limit,
51 selection_count=selection_count,
52 population_count=population_count)
53 super(ResourceLimitExceeded, self).__init__(msg)
54 self.limit = limit
55 self.limit_type = limit
56 self.selection_count = selection_count
57 self.population_count = population_count