Move the generate_setup.py script to contribs/scripts.

Signed-off-by: Michael Price <loneviking72@gmail.com>
This commit is contained in:
Michael Price
2018-03-13 02:06:56 -04:00
committed by Roberto Rosario
parent 66b873e6e5
commit cbd8ed52c7
2 changed files with 1 additions and 1 deletions

View File

@@ -0,0 +1,51 @@
#!/usr/bin/env python
from __future__ import unicode_literals
import os
import django
from django.conf import settings
from django.template import Template, Context
BASE_DIR = os.path.dirname(os.path.abspath(__file__))
REQUIREMENTS_FILE = 'requirements.txt'
SETUP_TEMPLATE = 'setup.py.tmpl'
def get_requirements(base_directory, filename):
result = []
with open(os.path.join(base_directory, filename)) as file_object:
for line in file_object:
if line.startswith('-r'):
line = line.split('\n')[0][3:]
directory, filename = os.path.split(line)
result.extend(
get_requirements(
base_directory=os.path.join(base_directory, directory), filename=filename
)
)
elif not line.startswith('\n'):
result.append(line.split('\n')[0])
return result
if __name__ == '__main__':
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'mayan.settings')
django.setup()
requirements = get_requirements(
base_directory=BASE_DIR, filename=REQUIREMENTS_FILE
)
with open(SETUP_TEMPLATE) as file_object:
template = file_object.read()
result = Template(template).render(
context=Context({'requirements': requirements})
)
with open('setup.py', 'w') as file_object:
file_object.write(result)