@@ -493,16 +493,16 @@ def update_parser_common(self, parser):
493493 return parser
494494
495495 def take_action_network (self , client , parsed_args ):
496- compute_client = self .app .client_manager .compute
496+ compute_client = self .app .client_manager .sdk_connection . compute
497497
498498 attrs = {}
499499 obj = client .find_ip (
500500 parsed_args .ip_address ,
501501 ignore_missing = False ,
502502 )
503- server = utils . find_resource (
504- compute_client .servers ,
505- parsed_args .server ,
503+
504+ server = compute_client .find_server (
505+ parsed_args .server , ignore_missing = False
506506 )
507507 ports = list (client .ports (device_id = server .id ))
508508 if not ports :
@@ -1062,6 +1062,7 @@ def __call__(self, parser, namespace, values, option_string=None):
10621062 super ().__call__ (parser , namespace , values , option_string )
10631063
10641064
1065+ # TODO(stephenfin): Migrate to SDK
10651066class CreateServer (command .ShowOne ):
10661067 _description = _ ("Create a new server" )
10671068
@@ -2137,25 +2138,22 @@ def _show_progress(progress):
21372138 self .app .stdout .write ('\r Progress: %s' % progress )
21382139 self .app .stdout .flush ()
21392140
2140- compute_client = self .app .client_manager .compute
2141+ compute_client = self .app .client_manager .sdk_connection . compute
21412142 for server in parsed_args .server :
2142- server_obj = utils .find_resource (
2143- compute_client .servers ,
2143+ server_obj = compute_client .find_server (
21442144 server ,
2145- all_tenants = parsed_args .all_projects ,
2145+ ignore_missing = False ,
2146+ all_projects = parsed_args .all_projects ,
21462147 )
21472148
2148- if parsed_args .force :
2149- compute_client .servers .force_delete (server_obj .id )
2150- else :
2151- compute_client .servers .delete (server_obj .id )
2149+ compute_client .delete_server (server_obj , force = parsed_args .force )
21522150
21532151 if parsed_args .wait :
2154- if not utils . wait_for_delete (
2155- compute_client .servers ,
2156- server_obj . id ,
2157- callback = _show_progress ,
2158- ) :
2152+ try :
2153+ compute_client .wait_for_delete (
2154+ server_obj , callback = _show_progress
2155+ )
2156+ except sdk_exceptions . ResourceTimeout :
21592157 msg = _ ('Error deleting server: %s' ) % server_obj .id
21602158 raise exceptions .CommandError (msg )
21612159
@@ -2476,7 +2474,7 @@ def get_parser(self, prog_name):
24762474 action = 'store_true' ,
24772475 default = False ,
24782476 help = _ (
2479- 'When looking up flavor and image names, look them up'
2477+ 'When looking up flavor and image names, look them up '
24802478 'one by one as needed instead of all together (default). '
24812479 'Mutually exclusive with "--no-name-lookup|-n" option.'
24822480 ),
@@ -3695,6 +3693,7 @@ def _show_progress(progress):
36953693 return zip (* sorted (data .items ()))
36963694
36973695
3696+ # TODO(stephenfin): Migrate to SDK
36983697class EvacuateServer (command .ShowOne ):
36993698 _description = _ (
37003699 """Evacuate a server to a different host.
@@ -3835,13 +3834,14 @@ def get_parser(self, prog_name):
38353834 return parser
38363835
38373836 def take_action (self , parsed_args ):
3838- compute_client = self .app .client_manager .compute
3837+ compute_client = self .app .client_manager .sdk_connection . compute
38393838
3840- server = utils .find_resource (
3841- compute_client .servers , parsed_args .server
3839+ server = compute_client .find_server (
3840+ parsed_args .server , ignore_missing = False
3841+ )
3842+ compute_client .remove_fixed_ip_from_server (
3843+ server , parsed_args .ip_address
38423844 )
3843-
3844- server .remove_fixed_ip (parsed_args .ip_address )
38453845
38463846
38473847class RemoveFloatingIP (network_common .NetworkAndComputeCommand ):
@@ -4056,34 +4056,36 @@ def get_parser(self, prog_name):
40564056 '--image' ,
40574057 metavar = '<image>' ,
40584058 help = _ (
4059- 'Image (name or ID) to use for the rescue mode. '
4060- ' Defaults to the currently used one. '
4059+ 'Image (name or ID) to use for the rescue mode '
4060+ '(defaults to the currently used one) '
40614061 ),
40624062 )
40634063 parser .add_argument (
40644064 '--password' ,
40654065 metavar = '<password>' ,
40664066 help = _ (
4067- 'Set the password on the rescued instance. '
4068- 'This option requires cloud support. '
4067+ 'Set the password on the rescued instance '
4068+ '( requires cloud support) '
40694069 ),
40704070 )
40714071 return parser
40724072
40734073 def take_action (self , parsed_args ):
4074- compute_client = self .app .client_manager .compute
4074+ compute_client = self .app .client_manager .sdk_connection . compute
40754075 image_client = self .app .client_manager .image
40764076
4077- image = None
4077+ image_ref = None
40784078 if parsed_args .image :
4079- image = image_client .find_image (
4079+ image_ref = image_client .find_image (
40804080 parsed_args .image , ignore_missing = False
4081- )
4081+ ). id
40824082
4083- utils .find_resource (
4084- compute_client .servers ,
4085- parsed_args .server ,
4086- ).rescue (image = image , password = parsed_args .password )
4083+ server = compute_client .find_server (
4084+ parsed_args .server , ignore_missing = False
4085+ )
4086+ compute_client .rescue_server (
4087+ server , admin_pass = parsed_args .password , image_ref = image_ref
4088+ )
40874089
40884090
40894091class ResizeServer (command .Command ):
@@ -4099,12 +4101,12 @@ class ResizeServer(command.Command):
40994101
41004102 def get_parser (self , prog_name ):
41014103 parser = super ().get_parser (prog_name )
4102- phase_group = parser .add_mutually_exclusive_group ()
41034104 parser .add_argument (
41044105 'server' ,
41054106 metavar = '<server>' ,
41064107 help = _ ('Server (name or ID)' ),
41074108 )
4109+ phase_group = parser .add_mutually_exclusive_group ()
41084110 phase_group .add_argument (
41094111 '--flavor' ,
41104112 metavar = '<flavor>' ,
@@ -4141,51 +4143,49 @@ def _show_progress(progress):
41414143 self .app .stdout .write ('\r Progress: %s' % progress )
41424144 self .app .stdout .flush ()
41434145
4144- compute_client = self .app .client_manager .compute
4145- server = utils .find_resource (
4146- compute_client .servers ,
4147- parsed_args .server ,
4146+ compute_client = self .app .client_manager .sdk_connection .compute
4147+ server = compute_client .find_server (
4148+ parsed_args .server , ignore_missing = False
41484149 )
41494150 if parsed_args .flavor :
4150- flavor = utils .find_resource (
4151- compute_client .flavors ,
4152- parsed_args .flavor ,
4153- )
41544151 if not server .image :
41554152 self .log .warning (
41564153 _ (
41574154 "The root disk size in flavor will not be applied "
41584155 "while booting from a persistent volume."
41594156 )
41604157 )
4161- compute_client .servers .resize (server , flavor )
4158+ flavor = compute_client .find_flavor (
4159+ parsed_args .flavor , ignore_missing = False
4160+ )
4161+ compute_client .resize_server (server , flavor )
41624162 if parsed_args .wait :
4163- if utils .wait_for_status (
4164- compute_client .servers . get ,
4163+ if not utils .wait_for_status (
4164+ compute_client .get_server ,
41654165 server .id ,
4166- success_status = [ 'active' , 'verify_resize' ] ,
4166+ success_status = ( 'active' , 'verify_resize' ) ,
41674167 callback = _show_progress ,
41684168 ):
4169- self .app .stdout .write (_ ('Complete\n ' ))
4170- else :
41714169 msg = _ ('Error resizing server: %s' ) % server .id
41724170 raise exceptions .CommandError (msg )
4171+
4172+ self .app .stdout .write (_ ('Complete\n ' ))
41734173 elif parsed_args .confirm :
41744174 self .log .warning (
41754175 _ (
41764176 "The --confirm option has been deprecated. Please use the "
41774177 "'openstack server resize confirm' command instead."
41784178 )
41794179 )
4180- compute_client .servers . confirm_resize (server )
4180+ compute_client .confirm_server_resize (server )
41814181 elif parsed_args .revert :
41824182 self .log .warning (
41834183 _ (
41844184 "The --revert option has been deprecated. Please use the "
41854185 "'openstack server resize revert' command instead."
41864186 )
41874187 )
4188- compute_client .servers . revert_resize (server )
4188+ compute_client .revert_server_resize (server )
41894189
41904190
41914191class ResizeConfirm (command .Command ):
@@ -4205,12 +4205,11 @@ def get_parser(self, prog_name):
42054205 return parser
42064206
42074207 def take_action (self , parsed_args ):
4208- compute_client = self .app .client_manager .compute
4209- server = utils .find_resource (
4210- compute_client .servers ,
4211- parsed_args .server ,
4208+ compute_client = self .app .client_manager .sdk_connection .compute
4209+ server = compute_client .find_server (
4210+ parsed_args .server , ignore_missing = False
42124211 )
4213- server . confirm_resize ( )
4212+ compute_client . confirm_server_resize ( server )
42144213
42154214
42164215# TODO(stephenfin): Remove in OSC 7.0
@@ -4254,12 +4253,11 @@ def get_parser(self, prog_name):
42544253 return parser
42554254
42564255 def take_action (self , parsed_args ):
4257- compute_client = self .app .client_manager .compute
4258- server = utils .find_resource (
4259- compute_client .servers ,
4260- parsed_args .server ,
4256+ compute_client = self .app .client_manager .sdk_connection .compute
4257+ server = compute_client .find_server (
4258+ parsed_args .server , ignore_missing = False
42614259 )
4262- server . revert_resize ( )
4260+ compute_client . revert_server_resize ( server )
42634261
42644262
42654263# TODO(stephenfin): Remove in OSC 7.0
@@ -4766,11 +4764,10 @@ def get_parser(self, prog_name):
47664764 return parser
47674765
47684766 def take_action (self , parsed_args ):
4769- compute_client = self .app .client_manager .compute
4767+ compute_client = self .app .client_manager .sdk_connection . compute
47704768
4771- server = utils .find_resource (
4772- compute_client .servers ,
4773- parsed_args .server ,
4769+ server = compute_client .find_server (
4770+ parsed_args .server , ignore_missing = False
47744771 )
47754772
47764773 # first, handle the deprecated options
@@ -4846,7 +4843,7 @@ def get_parser(self, prog_name):
48464843 action = 'store_true' ,
48474844 default = boolenv ('ALL_PROJECTS' ),
48484845 help = _ (
4849- 'Start server(s) in another project by name (admin only)'
4846+ 'Start server(s) in another project by name (admin only) '
48504847 '(can be specified using the ALL_PROJECTS envvar)'
48514848 ),
48524849 )
@@ -4981,11 +4978,11 @@ def get_parser(self, prog_name):
49814978 return parser
49824979
49834980 def take_action (self , parsed_args ):
4984- compute_client = self .app .client_manager .compute
4985- utils . find_resource (
4986- compute_client . servers ,
4987- parsed_args . server ,
4988- ). unrescue ( )
4981+ compute_client = self .app .client_manager .sdk_connection . compute
4982+ server = compute_client . find_server (
4983+ parsed_args . server , ignore_missing = False
4984+ )
4985+ compute_client . unrescue_server ( server )
49894986
49904987
49914988class UnsetServer (command .Command ):
0 commit comments