# Copyright ETSI Contributors and Others.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#    http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
# implied.
# See the License for the specific language governing permissions and
# limitations under the License.
##

azure==4.0.0
boto
CherryPy==18.1.2
cryptography>=2.5
cvprac
fog05==0.2.0
fog05-sdk==0.2.0
# TODO py3 genisoimage
logutils
importlib-metadata
netaddr
networking-l2gw
oca
paramiko
prettytable
progressbar
pyangbind
pyone
python-cinderclient
python-glanceclient
python-keystoneclient
python-neutronclient
python-novaclient
python-openstackclient
pyvcloud==19.1.1
pyvmomi
pyyaml
requests
sphinx
yaks==0.3.0.post1
uuid
zenoh==0.3.0
