@@ -38,27 +38,26 @@ def __init_subclass__(cls):
38
38
# Register the subclasses to be looked up by their type
39
39
NeutronAgent .types [cls .agent_type ] = cls
40
40
41
- def __init__ (self , chassis_private , driver , updated_at = None ):
41
+ def __init__ (self , chassis_private , driver ):
42
42
self .driver = driver
43
43
self .set_down = False
44
- self .update (chassis_private , updated_at )
44
+ self .update (chassis_private )
45
45
46
- def update (self , chassis_private , updated_at = None , clear_down = False ):
46
+ def update (self , chassis_private , clear_down = False ):
47
47
self .chassis_private = chassis_private
48
- if not updated_at :
49
- # When use the Chassis_Private table for agents health check,
50
- # chassis_private has attribute nb_cfg_timestamp.
51
- # nb_cfg_timestamp: the timestamp when ovn-controller finishes
52
- # processing the change corresponding to nb_cfg(
53
- # https://www.ovn.org/support/dist-docs/ovn-sb.5.html).
54
- # it can better reflect the status of chassis.
55
- # nb_cfg_timestamp is milliseconds, need to convert to datetime.
56
- if hasattr (chassis_private , 'nb_cfg_timestamp' ):
57
- updated_at = datetime .datetime .fromtimestamp (
58
- chassis_private .nb_cfg_timestamp / 1000 ,
59
- datetime .timezone .utc )
60
- else :
61
- updated_at = timeutils .utcnow (with_timezone = True )
48
+ # When use the Chassis_Private table for agents health check,
49
+ # chassis_private has attribute nb_cfg_timestamp.
50
+ # nb_cfg_timestamp: the timestamp when ovn-controller finishes
51
+ # processing the change corresponding to nb_cfg(
52
+ # https://www.ovn.org/support/dist-docs/ovn-sb.5.html).
53
+ # it can better reflect the status of chassis.
54
+ # nb_cfg_timestamp is milliseconds, need to convert to datetime.
55
+ if hasattr (chassis_private , 'nb_cfg_timestamp' ):
56
+ updated_at = datetime .datetime .fromtimestamp (
57
+ chassis_private .nb_cfg_timestamp / 1000 ,
58
+ datetime .timezone .utc )
59
+ else :
60
+ updated_at = timeutils .utcnow (with_timezone = True )
62
61
self .updated_at = updated_at
63
62
if clear_down :
64
63
self .set_down = False
@@ -112,8 +111,8 @@ def alive(self):
112
111
return False
113
112
114
113
@classmethod
115
- def from_type (cls , _type , chassis_private , driver , updated_at = None ):
116
- return cls .types [_type ](chassis_private , driver , updated_at )
114
+ def from_type (cls , _type , chassis_private , driver ):
115
+ return cls .types [_type ](chassis_private , driver )
117
116
118
117
@property
119
118
@abc .abstractmethod
@@ -141,7 +140,7 @@ class ControllerAgent(NeutronAgent):
141
140
binary = 'ovn-controller'
142
141
143
142
@staticmethod # it is by default, but this makes pep8 happy
144
- def __new__ (cls , chassis_private , driver , updated_at = None ):
143
+ def __new__ (cls , chassis_private , driver ):
145
144
external_ids = cls .chassis_from_private (chassis_private ).external_ids
146
145
if ('enable-chassis-as-gw' in
147
146
external_ids .get ('ovn-cms-options' , [])):
@@ -165,8 +164,8 @@ def description(self):
165
164
return self .chassis_private .external_ids .get (
166
165
ovn_const .OVN_AGENT_DESC_KEY , '' )
167
166
168
- def update (self , chassis_private , updated_at = None , clear_down = False ):
169
- super ().update (chassis_private , updated_at , clear_down )
167
+ def update (self , chassis_private , clear_down = False ):
168
+ super ().update (chassis_private , clear_down )
170
169
external_ids = self .chassis_from_private (chassis_private ).external_ids
171
170
if 'enable-chassis-as-gw' in external_ids .get ('ovn-cms-options' , []):
172
171
self .__class__ = ControllerGatewayAgent
@@ -175,8 +174,8 @@ def update(self, chassis_private, updated_at=None, clear_down=False):
175
174
class ControllerGatewayAgent (ControllerAgent ):
176
175
agent_type = ovn_const .OVN_CONTROLLER_GW_AGENT
177
176
178
- def update (self , chassis_private , updated_at = None , clear_down = False ):
179
- super ().update (chassis_private , updated_at , clear_down )
177
+ def update (self , chassis_private , clear_down = False ):
178
+ super ().update (chassis_private , clear_down )
180
179
external_ids = self .chassis_from_private (chassis_private ).external_ids
181
180
if ('enable-chassis-as-gw' not in
182
181
external_ids .get ('ovn-cms-options' , [])):
@@ -238,14 +237,13 @@ def __iter__(self):
238
237
def __getitem__ (self , key ):
239
238
return self .agents [key ]
240
239
241
- def update (self , agent_type , row , updated_at = None , clear_down = False ):
240
+ def update (self , agent_type , row , clear_down = False ):
242
241
cls = NeutronAgent .types [agent_type ]
243
242
try :
244
243
agent = self .agents [cls .id_from_chassis_private (row )]
245
- agent .update (row , updated_at = updated_at , clear_down = clear_down )
244
+ agent .update (row , clear_down = clear_down )
246
245
except KeyError :
247
- agent = NeutronAgent .from_type (agent_type , row , self .driver ,
248
- updated_at = updated_at )
246
+ agent = NeutronAgent .from_type (agent_type , row , self .driver )
249
247
self .agents [agent .agent_id ] = agent
250
248
return agent
251
249
0 commit comments