cloud-governance 1.1.358__py3-none-any.whl → 1.1.360__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- cloud_governance/common/elasticsearch/elasticsearch_operations.py +15 -2
- cloud_governance/main/environment_variables.py +10 -7
- cloud_governance/main/main.py +1 -1
- {cloud_governance-1.1.358.dist-info → cloud_governance-1.1.360.dist-info}/METADATA +1 -1
- {cloud_governance-1.1.358.dist-info → cloud_governance-1.1.360.dist-info}/RECORD +8 -8
- {cloud_governance-1.1.358.dist-info → cloud_governance-1.1.360.dist-info}/WHEEL +1 -1
- {cloud_governance-1.1.358.dist-info → cloud_governance-1.1.360.dist-info}/licenses/LICENSE +0 -0
- {cloud_governance-1.1.358.dist-info → cloud_governance-1.1.360.dist-info}/top_level.txt +0 -0
|
@@ -27,19 +27,32 @@ class ElasticSearchOperations:
|
|
|
27
27
|
MIN_SEARCH_RESULTS = 100
|
|
28
28
|
DEFAULT_ES_BULK_LIMIT = 5000
|
|
29
29
|
|
|
30
|
-
def __init__(self,
|
|
30
|
+
def __init__(self,
|
|
31
|
+
es_host: str = None,
|
|
32
|
+
es_port: str = None,
|
|
33
|
+
region: str = '',
|
|
34
|
+
es_user: str = None,
|
|
35
|
+
es_password: str = None,
|
|
36
|
+
bucket: str = '',
|
|
31
37
|
logs_bucket_key: str = '',
|
|
32
38
|
timeout: int = 2000):
|
|
33
39
|
self.__environment_variables_dict = environment_variables.environment_variables_dict
|
|
34
40
|
self.__es_host = es_host if es_host else self.__environment_variables_dict.get('es_host')
|
|
35
41
|
self.__es_port = es_port if es_port else self.__environment_variables_dict.get('es_port')
|
|
42
|
+
self.__es_user = es_user if es_user else self.__environment_variables_dict.get('es_user')
|
|
43
|
+
self.__es_password = es_password if es_password else self.__environment_variables_dict.get('es_password')
|
|
36
44
|
self.__region = region
|
|
37
45
|
self.__timeout = int(
|
|
38
46
|
self.__environment_variables_dict.get('ES_TIMEOUT')) if self.__environment_variables_dict.get(
|
|
39
47
|
'ES_TIMEOUT') else timeout
|
|
40
48
|
self.__account = self.__environment_variables_dict.get('account')
|
|
41
49
|
try:
|
|
42
|
-
|
|
50
|
+
add_host = {'host': self.__es_host, 'port': self.__es_port,
|
|
51
|
+
'http_auth': f'{self.__es_user}:{self.__es_password}'}
|
|
52
|
+
if int(self.__es_port) == 443:
|
|
53
|
+
add_host['use_ssl'] = True
|
|
54
|
+
self.__es = Elasticsearch([add_host],
|
|
55
|
+
timeout=self.__timeout,
|
|
43
56
|
max_retries=2)
|
|
44
57
|
except Exception as err:
|
|
45
58
|
self.__es = None
|
|
@@ -92,13 +92,13 @@ class EnvironmentVariables:
|
|
|
92
92
|
self._environment_variables_dict['account'] = self.get_aws_account_alias_name().upper().replace(
|
|
93
93
|
'OPENSHIFT-', '')
|
|
94
94
|
self._environment_variables_dict['policy'] = EnvironmentVariables.get_env('policy', '')
|
|
95
|
-
|
|
96
|
-
self._environment_variables_dict['
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
95
|
+
# cost_usage_reports - athena queries on pair account, spot and graviton usage
|
|
96
|
+
self._environment_variables_dict['non_cluster_policies'] = ['instance_run', 'unattached_volume', 'cluster_run',
|
|
97
|
+
'ip_unattached', 'unused_nat_gateway', 'instance_idle',
|
|
98
|
+
'ec2_stop', 'ebs_in_use','database_idle', 's3_inactive',
|
|
99
|
+
'empty_roles', 'tag_resources', 'cost_usage_reports',
|
|
100
|
+
'zombie_snapshots', 'skipped_resources',
|
|
101
|
+
'monthly_report', 'optimize_resources_report']
|
|
102
102
|
es_index = 'cloud-governance-policy-es-index'
|
|
103
103
|
self._environment_variables_dict['cost_policies'] = ['cost_explorer', 'cost_over_usage', 'cost_billing_reports',
|
|
104
104
|
'cost_explorer_payer_billings', 'spot_savings_analysis']
|
|
@@ -130,6 +130,7 @@ class EnvironmentVariables:
|
|
|
130
130
|
self._environment_variables_dict['start_date'] = EnvironmentVariables.get_env('start_date', '')
|
|
131
131
|
self._environment_variables_dict['end_date'] = EnvironmentVariables.get_env('end_date', '')
|
|
132
132
|
self._environment_variables_dict['granularity'] = EnvironmentVariables.get_env('granularity', 'DAILY')
|
|
133
|
+
# ['User', 'Budget', 'Project', 'Manager']
|
|
133
134
|
self._environment_variables_dict['cost_explorer_tags'] = EnvironmentVariables.get_env('cost_explorer_tags',
|
|
134
135
|
'{}')
|
|
135
136
|
|
|
@@ -184,6 +185,8 @@ class EnvironmentVariables:
|
|
|
184
185
|
self._environment_variables_dict['upload_data_es'] = EnvironmentVariables.get_env('upload_data_es', '')
|
|
185
186
|
self._environment_variables_dict['es_host'] = EnvironmentVariables.get_env('es_host', '')
|
|
186
187
|
self._environment_variables_dict['es_port'] = EnvironmentVariables.get_env('es_port', '')
|
|
188
|
+
self._environment_variables_dict['es_user'] = EnvironmentVariables.get_env('es_user', '')
|
|
189
|
+
self._environment_variables_dict['es_password'] = EnvironmentVariables.get_env('es_password', '')
|
|
187
190
|
self._environment_variables_dict['es_index'] = EnvironmentVariables.get_env('es_index', es_index)
|
|
188
191
|
self._environment_variables_dict['es_doc_type'] = EnvironmentVariables.get_env('es_doc_type', '')
|
|
189
192
|
self._environment_variables_dict['ES_TIMEOUT'] = EnvironmentVariables.get_env('ES_TIMEOUT', 2000)
|
cloud_governance/main/main.py
CHANGED
|
@@ -229,7 +229,7 @@ def main():
|
|
|
229
229
|
run_cloud_resource_orchestration()
|
|
230
230
|
else:
|
|
231
231
|
non_cluster_polices_runner = None
|
|
232
|
-
is_non_cluster_polices_runner = policy in environment_variables_dict.get('
|
|
232
|
+
is_non_cluster_polices_runner = policy in environment_variables_dict.get('non_cluster_policies')
|
|
233
233
|
if is_non_cluster_polices_runner:
|
|
234
234
|
non_cluster_polices_runner = ZombieNonClusterPolicies()
|
|
235
235
|
|
|
@@ -108,7 +108,7 @@ cloud_governance/common/clouds/ibm/vpc/vpc_infra_operations.py,sha256=W-NgQRwA15
|
|
|
108
108
|
cloud_governance/common/elasticsearch/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
109
109
|
cloud_governance/common/elasticsearch/elastic_upload.py,sha256=OGdc6ZQ9L8Fjj8mhVARg1flUQ_SKB7J0HVcFVWt67Q0,2576
|
|
110
110
|
cloud_governance/common/elasticsearch/elasticsearch_exceptions.py,sha256=6rwxbRYv93w7qvVaiSDJnwVgxG1A-kwU8IBzAU8iBmg,485
|
|
111
|
-
cloud_governance/common/elasticsearch/elasticsearch_operations.py,sha256=
|
|
111
|
+
cloud_governance/common/elasticsearch/elasticsearch_operations.py,sha256=WsAAjjCh-vX6K25SzQRP-rvPJ59RJ4dAtcXHCtmRUOQ,16529
|
|
112
112
|
cloud_governance/common/elasticsearch/modals/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
113
113
|
cloud_governance/common/elasticsearch/modals/cost_usage_reports_data.py,sha256=xDxGIxJwhOtSh2VOnYx7XShRF90WPPlaQrfVm3fLQr8,1396
|
|
114
114
|
cloud_governance/common/elasticsearch/modals/policy_es_data.py,sha256=6ydpSP_3e1OgyxM9IucohU8wSl0D2quisbmVlkM6WOA,1436
|
|
@@ -143,10 +143,10 @@ cloud_governance/common/utils/configs.py,sha256=8ry4UQT9s_GUivhrCdwS0vOWYN6OJIHD
|
|
|
143
143
|
cloud_governance/common/utils/json_datetime_encoder.py,sha256=_-jzRTe0UqAKTn2E9qaU8SYIxHUoRA5ElWuVA0Y54Xw,338
|
|
144
144
|
cloud_governance/common/utils/utils.py,sha256=ZUsi4ax2XhDIV-EQ5kJt5Ppd72kmm2psqcg1cNDZrvc,4349
|
|
145
145
|
cloud_governance/main/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
146
|
-
cloud_governance/main/environment_variables.py,sha256=
|
|
146
|
+
cloud_governance/main/environment_variables.py,sha256=Tbz51ZCAQAXde-2ur45btnxtwvf5KGQp-aD9x1MaM0U,28431
|
|
147
147
|
cloud_governance/main/environment_variables_exceptions.py,sha256=UR0Ith0P0oshsDZdJRlRq8ZUTt0h8jFvUtrnP4m4AIY,437
|
|
148
148
|
cloud_governance/main/es_uploader.py,sha256=6Ify5CS2NtUF1xXZ-rMwpYxVzDKfEZhv2vogWFltt98,10656
|
|
149
|
-
cloud_governance/main/main.py,sha256=
|
|
149
|
+
cloud_governance/main/main.py,sha256=4TBiCBO_1z8KpGXb8brPKBmv3jHBl8fl_-Sb80ctYno,18880
|
|
150
150
|
cloud_governance/main/main_common_operations.py,sha256=YbBJF6Smk3YKhEibnn-fIWu1oKP0pSGIM1WnSXFcBuo,366
|
|
151
151
|
cloud_governance/main/run_cloud_resource_orchestration.py,sha256=Jo7-KDqxrIo8uioyTFCohUHse4uqdEt2ZFnHlX2u57g,776
|
|
152
152
|
cloud_governance/main/main_oerations/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
@@ -263,8 +263,8 @@ cloud_governance/policy/policy_runners/elasticsearch/__init__.py,sha256=47DEQpj8
|
|
|
263
263
|
cloud_governance/policy/policy_runners/elasticsearch/upload_elastic_search.py,sha256=pOwUJWXjJbyTy8iv3Ap8xJGnqQe-5lZgoR8-vGfAVos,1881
|
|
264
264
|
cloud_governance/policy/policy_runners/ibm/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
265
265
|
cloud_governance/policy/policy_runners/ibm/policy_runner.py,sha256=V0E_f7F3hXit0aSq4BlfX1Jd4vjR2NEvOWsJ5upvZ4o,1302
|
|
266
|
-
cloud_governance-1.1.
|
|
267
|
-
cloud_governance-1.1.
|
|
268
|
-
cloud_governance-1.1.
|
|
269
|
-
cloud_governance-1.1.
|
|
270
|
-
cloud_governance-1.1.
|
|
266
|
+
cloud_governance-1.1.360.dist-info/licenses/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
|
|
267
|
+
cloud_governance-1.1.360.dist-info/METADATA,sha256=SPADSpVrcC6d-IKbmZIeDz1g8_p1vrMcj3oVHyqZWmg,11364
|
|
268
|
+
cloud_governance-1.1.360.dist-info/WHEEL,sha256=pxyMxgL8-pra_rKaQ4drOZAegBVuX-G_4nRHjjgWbmo,91
|
|
269
|
+
cloud_governance-1.1.360.dist-info/top_level.txt,sha256=jfB1fgj7jvx3YZkZA4G6hFeS1RHO7J7XtnbjuMNMRww,17
|
|
270
|
+
cloud_governance-1.1.360.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|