Revision 0b827aa4
b/snf-cyclades-app/synnefo/db/models.py | ||
---|---|---|
487 | 487 |
def __unicode__(self): |
488 | 488 |
return self.name |
489 | 489 |
|
490 |
def update_oper_state(self):
|
|
491 |
"""Update operstate of the Network.
|
|
490 |
def update_state(self): |
|
491 |
"""Update state of the Network. |
|
492 | 492 |
|
493 |
Update the operstate of the Network depending on the related
|
|
493 |
Update the state of the Network depending on the related |
|
494 | 494 |
backend_networks. When backend networks do not have the same operstate, |
495 |
the Network's operstate is PENDING. Otherwise it is the same with
|
|
495 |
the Network's state is PENDING. Otherwise it is the same with |
|
496 | 496 |
the BackendNetworks operstate. |
497 | 497 |
|
498 | 498 |
""" |
499 | 499 |
backend_states = [s.operstate for s in self.backend_networks.all()] |
500 | 500 |
if not backend_states: |
501 |
self.operstate = 'PENDING'
|
|
501 |
self.state = 'PENDING' |
|
502 | 502 |
self.save() |
503 | 503 |
return |
504 | 504 |
|
505 | 505 |
all_equal = len(set(backend_states)) <= 1 |
506 |
self.operstate = all_equal and backend_states[0] or 'PENDING'
|
|
506 |
self.state = all_equal and backend_states[0] or 'PENDING' |
|
507 | 507 |
|
508 |
if self.operstate == 'DELETED':
|
|
508 |
if self.state == 'DELETED': |
|
509 | 509 |
self.deleted = True |
510 | 510 |
|
511 | 511 |
if self.mac_prefix: |
... | ... | |
577 | 577 |
|
578 | 578 |
def save(self, *args, **kwargs): |
579 | 579 |
super(BackendNetwork, self).save(*args, **kwargs) |
580 |
self.network.update_oper_state()
|
|
580 |
self.network.update_state() |
|
581 | 581 |
|
582 | 582 |
def delete(self, *args, **kwargs): |
583 | 583 |
super(BackendNetwork, self).delete(*args, **kwargs) |
584 |
self.network.update_oper_state()
|
|
584 |
self.network.update_state() |
|
585 | 585 |
|
586 | 586 |
|
587 | 587 |
class NetworkInterface(models.Model): |
b/snf-cyclades-app/synnefo/logic/management/commands/network_inspect.py | ||
---|---|---|
56 | 56 |
raise CommandError("Network not found in DB.") |
57 | 57 |
|
58 | 58 |
sep = '-' * 80 + '\n' |
59 |
labels = ('name', 'backend-name', 'owner', 'subnet', 'gateway', 'max_prefix', 'link', |
|
60 |
'public', 'dhcp', 'type', 'deleted', 'action') |
|
61 |
fields = (net.name, net.backend_id, str(net.userid), str(net.subnet), str(net.gateway), |
|
62 |
str(net.mac_prefix), str(net.link), str(net.public), str(net.dhcp), |
|
59 |
labels = ('name', 'backend-name', 'state', 'owner', 'subnet', 'gateway', |
|
60 |
'max_prefix', 'link', 'public', 'dhcp', 'type', 'deleted', |
|
61 |
'action') |
|
62 |
fields = (net.name, net.backend_id, net.state, str(net.userid), |
|
63 |
str(net.subnet), str(net.gateway), str(net.mac_prefix), |
|
64 |
str(net.link), str(net.public), str(net.dhcp), |
|
63 | 65 |
str(net.type), str(net.deleted), str(net.action)) |
64 | 66 |
|
65 | 67 |
self.stdout.write(sep) |
b/snf-cyclades-app/synnefo/logic/utils.py | ||
---|---|---|
69 | 69 |
|
70 | 70 |
|
71 | 71 |
def id_to_network_name(id): |
72 |
return "%snet-%s" (settings.BACKEND_PREFIX_ID, str(id)) |
|
72 |
return "%snet-%s" % (settings.BACKEND_PREFIX_ID, str(id))
|
|
73 | 73 |
|
74 | 74 |
|
75 | 75 |
def get_rsapi_state(vm): |
Also available in: Unified diff