36 lines
1.3 KiB
Python
36 lines
1.3 KiB
Python
#!/usr/bin/env python
|
|
|
|
from setuptools import setup
|
|
import os.path
|
|
import unittest
|
|
|
|
def get_platform_file_list():
|
|
data_files = []
|
|
repo_path = os.path.abspath(os.path.dirname(__file__))
|
|
data_path = os.path.join(repo_path, 'platform')
|
|
platforms = os.listdir(data_path)
|
|
for platform in platforms:
|
|
files = ['platform/' + platform + '/port_config.ini']
|
|
if os.path.isfile( os.path.join(data_path, platform, 'sensors.conf') ):
|
|
files.append('platform/' + platform + '/sensors.conf') #Not all platforms need to have a sensors.conf file
|
|
data_files.append( (os.path.join('/usr/share/sonic', platform), files) )
|
|
return data_files
|
|
|
|
def get_test_suite():
|
|
test_loader = unittest.TestLoader()
|
|
test_suite = test_loader.discover('tests', pattern='*.py')
|
|
return test_suite
|
|
|
|
setup(name='sonic-config-engine',
|
|
version='1.0',
|
|
description='Utilities for generating SONiC configuration files',
|
|
author='Taoyu Li',
|
|
author_email='taoyl@microsoft.com',
|
|
url='https://github.com/Azure/sonic-buildimage',
|
|
py_modules=['minigraph'],
|
|
scripts=['sonic-cfggen'],
|
|
data_files=get_platform_file_list(),
|
|
install_requires=['lxml', 'jinja2', 'netaddr', 'ipaddr', 'pyyaml'],
|
|
test_suite='setup.get_test_suite',
|
|
)
|