@@ -33,20 +33,21 @@ def _get_aws_details():
33
33
aws ['cloud_account_id' ] = None
34
34
aws ['cloud_type' ] = 'aws'
35
35
36
- proxies = { 'http' : None }
36
+ proxies = {'http' : None }
37
37
38
38
try :
39
39
res = requests .get ('http://169.254.169.254/latest/dynamic/instance-identity/document' ,
40
- timeout = 3 , proxies = proxies ).json ()
40
+ timeout = 3 , proxies = proxies ).json ()
41
41
aws ['cloud_account_id' ] = res .get ('accountId' , 'unknown' )
42
42
43
43
# AWS account id is always an integer number
44
44
# So if it's an aws machine it must be a valid integer number
45
45
# Else it will throw an Exception
46
46
int (aws ['cloud_account_id' ])
47
47
48
- aws ['cloud_instance_id' ] = requests .get ('http://169.254.169.254/latest/meta-data/instance-id' ,
49
- timeout = 3 , proxies = proxies ).text
48
+ aws ['cloud_instance_id' ] = requests .get (
49
+ 'http://169.254.169.254/latest/meta-data/instance-id' ,
50
+ timeout = 3 , proxies = proxies ).text
50
51
except (requests .exceptions .RequestException , ValueError ):
51
52
# Not on an AWS box
52
53
aws = None
@@ -57,16 +58,19 @@ def _get_aws_details():
57
58
aws_extra ['cloud_availability_zone' ] = res .get ('availabilityZone' )
58
59
aws_extra ['cloud_ami_id' ] = res .get ('imageId' )
59
60
aws_extra ['cloud_region' ] = res .get ('region' )
60
- r = requests .get ('http://169.254.169.254/latest/meta-data/public-hostname' , timeout = 3 , proxies = proxies )
61
+ r = requests .get ('http://169.254.169.254/latest/meta-data/public-hostname' , timeout = 3 ,
62
+ proxies = proxies )
61
63
if r .status_code == requests .codes .ok :
62
64
aws_extra ['cloud_public_hostname' ] = r .text
63
- r = requests .get ('http://169.254.169.254/latest/meta-data/public-ipv4' , timeout = 3 , proxies = proxies )
65
+ r = requests .get ('http://169.254.169.254/latest/meta-data/public-ipv4' , timeout = 3 ,
66
+ proxies = proxies )
64
67
if r .status_code == requests .codes .ok :
65
68
aws_extra ['cloud_public_ipv4' ] = r .text
66
- r = requests .get ('http://169.254.169.254/latest/meta-data/local-hostname' , timeout = 3 , proxies = proxies )
69
+ r = requests .get ('http://169.254.169.254/latest/meta-data/local-hostname' , timeout = 3 ,
70
+ proxies = proxies )
67
71
if r .status_code == requests .codes .ok :
68
72
aws_extra ['cloud_private_hostname' ] = r .text
69
- for key in list ( aws_extra .keys () ):
73
+ for key in aws_extra .keys ():
70
74
if not aws_extra [key ]:
71
75
aws_extra .pop (key )
72
76
@@ -87,7 +91,7 @@ def _get_azure_details():
87
91
azure ['cloud_account_id' ] = None
88
92
azure ['cloud_type' ] = 'azure'
89
93
azureHeader = {'Metadata' : 'true' }
90
- proxies = { 'http' : None }
94
+ proxies = {'http' : None }
91
95
92
96
try :
93
97
# Reminder: rev the api version for access to more details
@@ -111,19 +115,22 @@ def _get_azure_details():
111
115
azure_extra ['cloud_tags' ] = id ['tags' ]
112
116
azure_extra ['cloud_image_version' ] = id ['version' ]
113
117
azure_extra ['cloud_size' ] = id ['vmSize' ]
114
- interface_list = requests .get ('http://169.254.169.254/metadata/instance/network/interface?api-version=2017-08-01' ,
115
- headers = azureHeader , timeout = 3 , proxies = proxies ).json ()
118
+ interface_list = requests .get (
119
+ 'http://169.254.169.254/metadata/instance/network/interface?api-version=2017-08-01' ,
120
+ headers = azureHeader , timeout = 3 , proxies = proxies ).json ()
116
121
for counter , value in enumerate (interface_list ):
117
122
grain_name_private_ipv4 = "cloud_interface_{0}_private_ipv4" .format (counter )
118
- azure_extra [grain_name_private_ipv4 ] = value ['ipv4' ]['ipAddress' ][0 ]['privateIpAddress' ]
123
+ azure_extra [grain_name_private_ipv4 ] = value ['ipv4' ]['ipAddress' ][0 ][
124
+ 'privateIpAddress' ]
119
125
120
126
grain_name_public_ipv4 = "cloud_interface_{0}_public_ipv4" .format (counter )
121
- azure_extra [grain_name_public_ipv4 ] = value ['ipv4' ]['ipAddress' ][0 ]['publicIpAddress' ]
127
+ azure_extra [grain_name_public_ipv4 ] = value ['ipv4' ]['ipAddress' ][0 ][
128
+ 'publicIpAddress' ]
122
129
123
130
grain_name_mac = "cloud_interface_{0}_mac_address" .format (counter )
124
131
azure_extra [grain_name_mac ] = value ['macAddress' ]
125
132
126
- for key in list ( azure_extra .keys () ):
133
+ for key in azure_extra .keys ():
127
134
if not azure_extra [key ]:
128
135
azure_extra .pop (key )
129
136
@@ -134,6 +141,7 @@ def _get_azure_details():
134
141
ret ['cloud_details_extra' ] = azure_extra
135
142
return ret
136
143
144
+
137
145
def _get_gcp_details ():
138
146
# Gather google compute platform information if present
139
147
ret = {}
@@ -143,34 +151,45 @@ def _get_gcp_details():
143
151
gcp ['cloud_account_id' ] = None
144
152
gcp ['cloud_type' ] = 'gcp'
145
153
gcp_header = {'Metadata-Flavor' : 'Google' }
146
- proxies = { 'http' : None }
154
+ proxies = {'http' : None }
147
155
148
156
try :
149
- gcp ['cloud_instance_id' ] = requests .get ('http://metadata.google.internal/computeMetadata/v1/instance/id' ,
150
- headers = gcp_header , timeout = 3 , proxies = proxies ).text
151
- gcp ['cloud_account_id' ] = requests .get ('http://metadata.google.internal/computeMetadata/v1/project/numeric-project-id' ,
152
- headers = gcp_header , timeout = 3 , proxies = proxies ).text
157
+ gcp ['cloud_instance_id' ] = requests .get (
158
+ 'http://metadata.google.internal/computeMetadata/v1/instance/id' ,
159
+ headers = gcp_header , timeout = 3 , proxies = proxies ).text
160
+ gcp ['cloud_account_id' ] = requests .get (
161
+ 'http://metadata.google.internal/computeMetadata/v1/project/numeric-project-id' ,
162
+ headers = gcp_header , timeout = 3 , proxies = proxies ).text
153
163
except (requests .exceptions .RequestException , ValueError ):
154
164
# Not on gcp box
155
165
gcp = None
156
166
if gcp :
157
167
try :
158
- gcp_extra ['cloud_project_id' ] = requests .get ('http://metadata.google.internal/computeMetadata/v1/project/project-id' ,
159
- headers = gcp_header , timeout = 3 , proxies = proxies ).text
160
- gcp_extra ['cloud_name' ] = requests .get ('http://metadata.google.internal/computeMetadata/v1/instance/name' ,
161
- headers = gcp_header , timeout = 3 , proxies = proxies ).text
162
- gcp_extra ['cloud_hostname' ] = requests .get ('http://metadata.google.internal/computeMetadata/v1/instance/hostname' ,
163
- headers = gcp_header , timeout = 3 , proxies = proxies ).text
164
- gcp_extra ['cloud_zone' ] = requests .get ('http://metadata.google.internal/computeMetadata/v1/instance/zone' ,
165
- headers = gcp_header , timeout = 3 , proxies = proxies ).text
166
- gcp_extra ['cloud_image' ] = requests .get ('http://metadata.google.internal/computeMetadata/v1/instance/image' ,
167
- headers = gcp_header , timeout = 3 , proxies = proxies ).text
168
- gcp_extra ['cloud_machine_type' ] = requests .get ('http://metadata.google.internal/computeMetadata/v1/instance/machine-type' ,
169
- headers = gcp_header , timeout = 3 , proxies = proxies ).text
170
- gcp_extra ['cloud_tags' ] = requests .get ('http://metadata.google.internal/computeMetadata/v1/instance/tags?recursive=true' ,
171
- headers = gcp_header , timeout = 3 , proxies = proxies ).json ()
172
- interface_list = requests .get ('http://metadata.google.internal/computeMetadata/v1/instance/network-interfaces/?recursive=true' ,
173
- headers = gcp_header , timeout = 3 , proxies = proxies ).json ()
168
+ gcp_extra ['cloud_project_id' ] = requests .get (
169
+ 'http://metadata.google.internal/computeMetadata/v1/project/project-id' ,
170
+ headers = gcp_header , timeout = 3 , proxies = proxies ).text
171
+ gcp_extra ['cloud_name' ] = requests .get (
172
+ 'http://metadata.google.internal/computeMetadata/v1/instance/name' ,
173
+ headers = gcp_header , timeout = 3 , proxies = proxies ).text
174
+ gcp_extra ['cloud_hostname' ] = requests .get (
175
+ 'http://metadata.google.internal/computeMetadata/v1/instance/hostname' ,
176
+ headers = gcp_header , timeout = 3 , proxies = proxies ).text
177
+ gcp_extra ['cloud_zone' ] = requests .get (
178
+ 'http://metadata.google.internal/computeMetadata/v1/instance/zone' ,
179
+ headers = gcp_header , timeout = 3 , proxies = proxies ).text
180
+ gcp_extra ['cloud_image' ] = requests .get (
181
+ 'http://metadata.google.internal/computeMetadata/v1/instance/image' ,
182
+ headers = gcp_header , timeout = 3 , proxies = proxies ).text
183
+ gcp_extra ['cloud_machine_type' ] = requests .get (
184
+ 'http://metadata.google.internal/computeMetadata/v1/instance/machine-type' ,
185
+ headers = gcp_header , timeout = 3 , proxies = proxies ).text
186
+ gcp_extra ['cloud_tags' ] = requests .get (
187
+ 'http://metadata.google.internal/computeMetadata/v1/instance/tags?recursive=true' ,
188
+ headers = gcp_header , timeout = 3 , proxies = proxies ).json ()
189
+ interface_list = requests .get (
190
+ 'http://metadata.google.internal/computeMetadata/v1/instance/network-interfaces'
191
+ '/?recursive=true' ,
192
+ headers = gcp_header , timeout = 3 , proxies = proxies ).json ()
174
193
for counter , value in enumerate (interface_list ):
175
194
grain_name_network = "cloud_interface_{0}_network" .format (counter )
176
195
gcp_extra [grain_name_network ] = value ['network' ]
@@ -190,11 +209,14 @@ def _get_gcp_details():
190
209
grain_name_targetips = "cloud_interface_{0}_target_ips" .format (counter )
191
210
gcp_extra [grain_name_targetips ] = ',' .join (value ['targetInstanceIps' ])
192
211
193
- grain_name_accessconfig_external_ips = "cloud_interface_{0}_accessconfigs_external_ips" .format (counter )
194
- external_ips_list = [ item ['externalIp' ] for item in value ['accessConfigs' ] if 'externalIp' in item ]
212
+ grain_name_accessconfig_external_ips = "cloud_interface_{" \
213
+ "0}_accessconfigs_external_ips" .format (
214
+ counter )
215
+ external_ips_list = [item ['externalIp' ] for item in value ['accessConfigs' ] if
216
+ 'externalIp' in item ]
195
217
gcp_extra [grain_name_accessconfig_external_ips ] = ',' .join (external_ips_list )
196
218
197
- for key in list ( gcp_extra .keys () ):
219
+ for key in gcp_extra .keys ():
198
220
if not gcp_extra [key ]:
199
221
gcp_extra .pop (key )
200
222
0 commit comments