@@ -120,18 +120,21 @@ def func(value):
120120 return func
121121
122122
123- def _prep_server_detail (compute_client , image_client , server ):
123+ def _prep_server_detail (compute_client , image_client , server , refresh = True ):
124124 """Prepare the detailed server dict for printing
125125
126126 :param compute_client: a compute client instance
127127 :param image_client: an image client instance
128128 :param server: a Server resource
129+ :param refresh: Flag indicating if ``server`` is already the latest version
130+ or if it needs to be refreshed, for example when showing
131+ the latest details of a server after creating it.
129132 :rtype: a dict of server details
130133 """
131134 info = server .to_dict ()
132-
133- server = utils .find_resource (compute_client .servers , info ['id' ])
134- info .update (server .to_dict ())
135+ if refresh :
136+ server = utils .find_resource (compute_client .servers , info ['id' ])
137+ info .update (server .to_dict ())
135138
136139 # Convert the image blob to a name
137140 image_info = info .get ('image' , {})
@@ -1540,7 +1543,8 @@ def _show_progress(progress):
15401543 self .app .stdout .write (_ ('Error rebuilding server\n ' ))
15411544 raise SystemExit
15421545
1543- details = _prep_server_detail (compute_client , image_client , server )
1546+ details = _prep_server_detail (compute_client , image_client , server ,
1547+ refresh = False )
15441548 return zip (* sorted (six .iteritems (details )))
15451549
15461550
@@ -2021,7 +2025,8 @@ def take_action(self, parsed_args):
20212025 return ({}, {})
20222026 else :
20232027 data = _prep_server_detail (compute_client ,
2024- self .app .client_manager .image , server )
2028+ self .app .client_manager .image , server ,
2029+ refresh = False )
20252030
20262031 return zip (* sorted (six .iteritems (data )))
20272032
0 commit comments