Add section Connectivity in the board details.
Change-Id: If7ed3fc3a14c3c85704a5218cb577095443ab66d
This commit is contained in:
parent
059c32f193
commit
4f18d23aa3
|
@ -34,7 +34,7 @@ from oslo_log import log as logging
|
|||
LOG = logging.getLogger(__name__)
|
||||
|
||||
_DEFAULT_RETURN_FIELDS = ('name', 'code', 'status', 'uuid', 'session', 'type',
|
||||
'fleet', 'lr_version', 'mac_addr')
|
||||
'fleet', 'lr_version', 'connectivity')
|
||||
_DEFAULT_WEBSERVICE_RETURN_FIELDS = ('name', 'uuid', 'port', 'board_uuid',
|
||||
'extra')
|
||||
|
||||
|
@ -54,7 +54,7 @@ class Board(base.APIBase):
|
|||
fleet = types.uuid
|
||||
mobile = types.boolean
|
||||
lr_version = wsme.wsattr(wtypes.text)
|
||||
mac_addr = wsme.wsattr(wtypes.text)
|
||||
connectivity = types.jsontype
|
||||
links = wsme.wsattr([link.Link], readonly=True)
|
||||
location = wsme.wsattr([loc.Location])
|
||||
extra = types.jsontype
|
||||
|
|
|
@ -16,6 +16,7 @@ revision = 'b98819997377'
|
|||
down_revision = 'f28f3f4494b3'
|
||||
|
||||
from alembic import op
|
||||
import iotronic.db.sqlalchemy.models
|
||||
import sqlalchemy as sa
|
||||
|
||||
|
||||
|
@ -23,6 +24,8 @@ def upgrade():
|
|||
# ### commands auto generated by Alembic - please adjust! ###
|
||||
op.add_column('boards', sa.Column('lr_version',
|
||||
sa.String(length=20), nullable=True))
|
||||
op.add_column('boards', sa.Column('mac_addr',
|
||||
sa.String(length=20), nullable=True))
|
||||
op.add_column('boards',
|
||||
sa.Column('connectivity',
|
||||
iotronic.db.sqlalchemy.models.JSONEncodedDict(),
|
||||
nullable=True))
|
||||
# ### end Alembic commands ###
|
||||
|
|
|
@ -153,7 +153,7 @@ class Board(Base):
|
|||
project = Column(String(36))
|
||||
fleet = Column(String(36), ForeignKey('fleets.uuid'), nullable=True)
|
||||
lr_version = Column(String(20), nullable=True)
|
||||
mac_addr = Column(String(20), nullable=True)
|
||||
connectivity = Column(JSONEncodedDict)
|
||||
mobile = Column(Boolean, default=False)
|
||||
config = Column(JSONEncodedDict)
|
||||
extra = Column(JSONEncodedDict)
|
||||
|
|
|
@ -41,7 +41,7 @@ class Board(base.IotronicObject):
|
|||
'project': obj_utils.str_or_none,
|
||||
'fleet': obj_utils.str_or_none,
|
||||
'lr_version': obj_utils.str_or_none,
|
||||
'mac_addr': obj_utils.str_or_none,
|
||||
'connectivity': obj_utils.dict_or_none,
|
||||
'mobile': bool,
|
||||
'config': obj_utils.dict_or_none,
|
||||
'extra': obj_utils.dict_or_none,
|
||||
|
|
|
@ -157,9 +157,10 @@ def connection(uuid, session, info=None):
|
|||
if 'lr_version' in info:
|
||||
if board.lr_version != info['lr_version']:
|
||||
board.lr_version = info['lr_version']
|
||||
if 'connectivity' in info:
|
||||
board.connectivity = info['connectivity']
|
||||
if 'mac_addr' in info:
|
||||
if board.mac_addr != info['mac_addr']:
|
||||
board.mac_addr = info['mac_addr']
|
||||
board.connectivity = {"mac_addr": info['mac_addr']}
|
||||
|
||||
board.save()
|
||||
LOG.info('Board %s (%s) is now %s', board.uuid,
|
||||
|
|
Loading…
Reference in New Issue