Repository URL to install this package:
|
Version:
3.4.52 ▾
|
ó
±EYc @ s¸ d Z d d l Z d d l Z d d l m Z d d l Z d d l Z d d l m Z d d l m
Z
d d l m Z
d d l m Z d d l m Z d d l m Z d
Z d Z i e j j e
j 6Z e j j Z e j j e j j e j j g Z d g Z i d
d 6e d 6i i d d 6d d 6d d 6d 6i d d 6e d 6d 6i d d 6e j! d 6d 6i d d 6e j! d 6d 6i d d 6e d 6d 6d 6d g d 6Z" d Z# d Z$ d Z% d S(! sG Example of a PCI alias::
| pci_alias = '{
| "name": "QuicAssist",
| "product_id": "0443",
| "vendor_id": "8086",
| "device_type": "type-PCI",
| }'
Aliases with the same name and the same device_type are OR operation::
| pci_alias = '{
| "name": "QuicAssist",
| "product_id": "0442",
| "vendor_id": "8086",
| "device_type": "type-PCI",
| }'
These 2 aliases define a device request meaning: vendor_id is "8086" and
product id is "0442" or "0443".
iÿÿÿÿN( t jsonutils( t exception( t _( t model( t objects( t fields( t utilst physical_networkt dev_typet pcit objectt typet additionalPropertiest stringi t minLengthi t maxLengtht namet enumt capability_typet patternt
product_idt vendor_idt device_typet
propertiest requiredc C s6 t j } i } yÜ xÕ | D]Í } t j | } t j | t | j d j } | j d d } | rx | | d <n | | k r | g | | <q | | d d | d k rÄ | | j
| q t d | } t j
d | q WWnD t j
k
r n. t k
r1} t j
d t j | n X| S( s4 Parse and validate PCI aliases from the nova config.R R R i s# Device type mismatch for alias '%s't reasonN( t CONFt pci_aliasR t loadst
jsonschemat validatet
_ALIAS_SCHEMAt popt stript Nonet appendR R t PciInvalidAliast Exceptiont sixt text_type( t jaliasest aliasest jsonspecst specR R R t e( ( sE /home/tvault/.virtenv/lib/python2.7/site-packages/nova/pci/request.pyt _get_alias_from_configb s*
c C sº t } g } x¤ g | j d D] } | j d ^ q" D]w \ } } | j } | | k rt t j d | q; t j d t | d t j | | d | } | j
| q; W| S( s>