Revision a2ed3c3e kamaki/cli.py

b/kamaki/cli.py
210 210
    """Get server details"""
211 211

  
212 212
    def main(self, server_id):
213
        server = self.client.get_server_details(int(server_id))
213
        try:
214
            server = self.client.get_server_details(int(server_id))
215
        except ValueError:
216
            print('Server id must be a base10 integer')
217
            return
214 218
        print_dict(server)
215 219

  
216 220

  
......
261 265
    """Update a server's name"""
262 266

  
263 267
    def main(self, server_id, new_name):
264
        self.client.update_server_name(int(server_id), new_name)
268
        try:
269
            self.client.update_server_name(int(server_id), new_name)
270
        except ValueError:
271
            print('Server id must be a base10 integer')
272
            return
265 273

  
266 274

  
267 275
@command(api='compute')
......
269 277
    """Delete a server"""
270 278

  
271 279
    def main(self, server_id):
272
        self.client.delete_server(int(server_id))
280
        try:
281
            self.client.delete_server(int(server_id))
282
        except ValueError:
283
            print('Server id must be a base10 integer')
284
            return
273 285

  
274 286

  
275 287
@command(api='compute')
......
281 293
                default=False, help='perform a hard reboot')
282 294

  
283 295
    def main(self, server_id):
284
        self.client.reboot_server(int(server_id), self.args.hard)
296
        try:
297
            self.client.reboot_server(int(server_id), self.args.hard)
298
        except ValueError:
299
            print('Server id must be a base10 integer')
300
            return
285 301

  
286 302

  
287 303
@command(api='cyclades')
......
289 305
    """Start a server"""
290 306

  
291 307
    def main(self, server_id):
292
        self.client.start_server(int(server_id))
308
        try:
309
            self.client.start_server(int(server_id))
310
        except ValueError:
311
            print('Server id must be a base10 integer')
312
            return
293 313

  
294 314

  
295 315
@command(api='cyclades')
......
297 317
    """Shutdown a server"""
298 318

  
299 319
    def main(self, server_id):
300
        self.client.shutdown_server(int(server_id))
320
        try:
321
            self.client.shutdown_server(int(server_id))
322
        except ValueError:
323
            print('Server id must be a base10 integer')
324
            return
301 325

  
302 326

  
303 327
@command(api='cyclades')
......
305 329
    """Get a VNC console"""
306 330

  
307 331
    def main(self, server_id):
308
        reply = self.client.get_server_console(int(server_id))
332
        try:
333
            reply = self.client.get_server_console(int(server_id))
334
        except ValueError:
335
            print('Server id must be a base10 integer')
336
            return
309 337
        print_dict(reply)
310 338

  
311 339

  
......
314 342
    """Set the server's firewall profile"""
315 343

  
316 344
    def main(self, server_id, profile):
317
        self.client.set_firewall_profile(int(server_id), profile)
345
        try:
346
            self.client.set_firewall_profile(int(server_id), profile)
347
        except ValueError:
348
            print('Server id must be a base10 integer')
349
            return
318 350

  
319 351

  
320 352
@command(api='cyclades')
......
322 354
    """List a server's addresses"""
323 355

  
324 356
    def main(self, server_id, network=None):
325
        reply = self.client.list_server_nic_details(int(server_id), network)
357
        try:
358
            reply = self.client.list_server_nic_details(int(server_id), network)
359
        except ValueError:
360
            print('Server id must be a base10 integer')
361
            return
326 362
        print_list(reply)
327 363

  
328 364
@command(api='compute')
......
330 366
    """Get a server's metadata"""
331 367

  
332 368
    def main(self, server_id, key=None):
333
        reply = self.client.get_server_metadata(int(server_id), key)
369
        try:
370
            reply = self.client.get_server_metadata(int(server_id), key)
371
        except ValueError:
372
            print('Server id must be a base10 integer')
373
            return
334 374
        print_dict(reply)
335 375

  
336 376

  
......
339 379
    """Add server metadata"""
340 380

  
341 381
    def main(self, server_id, key, val):
342
        reply = self.client.create_server_metadata(int(server_id), key, val)
382
        try:
383
            reply = self.client.create_server_metadata(int(server_id), key, val)
384
        except ValueError:
385
            print('Server id must be a base10 integer')
386
            return
343 387
        print_dict(reply)
344 388

  
345 389

  
......
349 393

  
350 394
    def main(self, server_id, key, val):
351 395
        metadata = {key: val}
352
        reply = self.client.update_server_metadata(int(server_id), **metadata)
396
        try:
397
            reply = self.client.update_server_metadata(int(server_id), **metadata)
398
        except ValueError:
399
            print('Server id must be a base10 integer')
400
            return
353 401
        print_dict(reply)
354 402

  
355 403

  
......
358 406
    """Delete server metadata"""
359 407

  
360 408
    def main(self, server_id, key):
361
        self.client.delete_server_metadata(int(server_id), key)
409
        try:
410
            self.client.delete_server_metadata(int(server_id), key)
411
        except ValueError:
412
            print('Server id must be a base10 integer')
413
            return
362 414

  
363 415

  
364 416
@command(api='cyclades')
......
366 418
    """Get server statistics"""
367 419

  
368 420
    def main(self, server_id):
369
        reply = self.client.get_server_stats(int(server_id))
421
        try:
422
            reply = self.client.get_server_stats(int(server_id))
423
        except ValueError:
424
            print('Server id must be a base10 integer')
425
            return
370 426
        print_dict(reply, exclude=('serverRef',))
371 427

  
372 428

  

Also available in: Unified diff