¡@

Home 

OpenStack Study: porttracker_db.py

OpenStack Index

**** CubicPower OpenStack Study ****

def get_port_hostid(context, port_id):

    with context.session.begin(subtransactions=True):

        query = context.session.query(portbindings_db.PortBindingPort)

        res = query.filter_by(port_id=port_id).first()

    if not res:

        return False

    return res.host

**** CubicPower OpenStack Study ****

def put_port_hostid(context, port_id, host):

    if not attributes.is_attr_set(host):

        LOG.warning(_("No host_id in port request to track port location."))

        return

    if port_id == '':

        LOG.warning(_("Received an empty port ID for host_id '%s'"), host)

        return

    if host == '':

        LOG.debug(_("Received an empty host_id for port '%s'"), port_id)

        return

    LOG.debug(_("Logging port %(port)s on host_id %(host)s"),

              {'port': port_id, 'host': host})

    with context.session.begin(subtransactions=True):

        location = portbindings_db.PortBindingPort(port_id=port_id, host=host)

        context.session.merge(location)