예제 #1
0
파일: api.py 프로젝트: luongduy/ironic
 def create_port(self, values):
     if not values.get('uuid'):
         values['uuid'] = utils.generate_uuid()
     port = models.Port()
     port.update(values)
     try:
         port.save()
     except db_exc.DBDuplicateEntry as exc:
         if 'address' in exc.columns:
             raise exception.MACAlreadyExists(mac=values['address'])
         raise exception.PortAlreadyExists(uuid=values['uuid'])
     return port
예제 #2
0
    def create_port(self, values):
        if not values.get('uuid'):
            values['uuid'] = uuidutils.generate_uuid()

        port = models.Port()
        port.update(values)
        with _session_for_write() as session:
            try:
                session.add(port)
                session.flush()
            except db_exc.DBDuplicateEntry as exc:
                if 'address' in exc.columns:
                    raise exception.MACAlreadyExists(mac=values['address'])
                raise exception.PortAlreadyExists(uuid=values['uuid'])
            return port