in processors/recommendations.py [0:0]
def __init__(self, config, jinja_environment, data, event,
context: Context):
self.recommenders = {
'google.compute.instance.MachineTypeRecommender': {
'location': [self.is_zone],
'parent': [self.is_project]
},
'google.compute.instanceGroupManager.MachineTypeRecommender': {
'location': [self.is_region, self.is_zone],
'parent': [self.is_project]
},
'google.compute.instance.IdleResourceRecommender': {
'location': [self.is_zone],
'parent': [self.is_project]
},
'google.compute.disk.IdleResourceRecommender': {
'location': [self.is_region, self.is_zone],
'parent': [self.is_project]
},
'google.compute.address.IdleResourceRecommender': {
'location': [self.is_global, self.is_region],
'parent': [self.is_project]
},
'google.compute.image.IdleResourceRecommender': {
'location': [self.is_multi_region, self.is_region],
'parent': [self.is_project]
},
'google.compute.commitment.UsageCommitmentRecommender': {
'location': [self.is_region],
'parent': [self.is_project, self.is_billing_account]
},
'google.cloudsql.instance.OutOfDiskRecommender': {
'location': [self.is_region],
'parent': [self.is_project]
},
'google.cloudsql.instance.IdleRecommender': {
'location': [self.is_region],
'parent': [self.is_project]
},
'google.cloudsql.instance.OverprovisionedRecommender': {
'location': [self.is_region],
'parent': [self.is_project]
},
'google.iam.policy.Recommender': {
'location': [self.is_global],
'parent': [
self.is_organization, self.is_folder, self.is_project
]
},
'google.resourcemanager.projectUtilization.Recommender': {
'location': [self.is_global],
'parent': [self.is_project]
},
'google.logging.productSuggestion.ContainerRecommender': {
'location': [],
'parent': [],
}, # Not supported by API currently
'google.monitoring.productSuggestion.ComputeRecommender': {
'location': [],
'parent': [],
}, # Not supported by API currently
'google.accounts.security.SecurityKeyRecommender': {
'location': [],
'parent': [],
}, # Not supported by API currently,
}
self.insights = {
'google.compute.firewall.Insight': {
'location': [self.is_global],
'parent': [self.is_project]
},
'google.iam.policy.Insight': {
'location': [self.is_global],
'parent': [
self.is_organization, self.is_folder, self.is_project
]
},
'google.iam.serviceAccount.Insight': {
'location': [self.is_global],
'parent': [self.is_project]
},
'google.resourcemanager.projectUtilization.Insight': {
'location': [self.is_global],
'parent': [self.is_project]
},
'google.cloudasset.asset.Insight': {
'location': [self.is_global],
'parent': [
self.is_organization, self.is_folder, self.is_project
]
},
'google.compute.disk.IdleResourceInsight': {
'location': [self.is_region, self.is_zone],
'parent': [self.is_project]
},
'google.compute.image.IdleResourceInsight': {
'location': [self.is_global],
'parent': [self.is_project]
},
'google.compute.address.IdleResourceInsight': {
'location': [self.is_global, self.is_region],
'parent': [self.is_project]
},
}
super().__init__(config, jinja_environment, data, event, context)