From ffc8fe40c3a78854e5da32dee3c7a3863dfb9732 Mon Sep 17 00:00:00 2001 From: nemunaire Date: Fri, 16 Oct 2015 07:10:20 +0200 Subject: [PATCH] Add a build system --- .travis.yml | 9 ++++++ requirements.txt | 0 setup.py | 82 ++++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 91 insertions(+) create mode 100644 .travis.yml create mode 100644 requirements.txt create mode 100755 setup.py diff --git a/.travis.yml b/.travis.yml new file mode 100644 index 0000000..2d5698a --- /dev/null +++ b/.travis.yml @@ -0,0 +1,9 @@ +language: python +python: + - 3.3 + - 3.4 + - 3.5 + - nightly +install: pip install -r requirements.txt +script: pip install . +sudo: false diff --git a/requirements.txt b/requirements.txt new file mode 100644 index 0000000..e69de29 diff --git a/setup.py b/setup.py new file mode 100755 index 0000000..37f4aef --- /dev/null +++ b/setup.py @@ -0,0 +1,82 @@ +#!/usr/bin/env python3 + +import os +import re +from glob import glob +try: + from setuptools import setup +except ImportError: + from distutils.core import setup + +with open(os.path.join(os.path.dirname(__file__), + 'nemubot', + '__init__.py')) as f: + version = re.search("__version__ = '([^']+)'", f.read()).group(1) + +with open('requirements.txt', 'r') as f: + requires = [x.strip() for x in f if x.strip()] + +#with open('test-requirements.txt', 'r') as f: +# test_requires = [x.strip() for x in f if x.strip()] + +dirs = os.listdir("./modules/") +data_files = [] +for i in dirs: + data_files.append(("nemubot/modules", glob('./modules/' + i + '/*'))) + +setup( + name = "nemubot", + version = version, + description = "An extremely modulable IRC bot, built around XML configuration files!", + long_description = open('README.md').read(), + + author = 'nemunaire', + author_email = 'nemunaire@nemunai.re', + + url = 'https://github.com/nemunaire/nemubot', + license = 'AGPLv3', + + classifiers = [ + 'Development Status :: 2 - Pre-Alpha', + + 'Environment :: Console', + + 'Topic :: Communications :: Chat :: Internet Relay Chat', + 'Intended Audience :: Information Technology', + + 'License :: OSI Approved :: GNU Affero General Public License v3', + + 'Operating System :: POSIX', + + 'Programming Language :: Python :: 3', + 'Programming Language :: Python :: 3.3', + 'Programming Language :: Python :: 3.4', + ], + + keywords = 'bot irc', + + provides = ['nemubot'], + + install_requires = requires, + + packages=[ + 'nemubot', + 'nemubot.datastore', + 'nemubot.event', + 'nemubot.hooks', + 'nemubot.message', + 'nemubot.message.printer', + 'nemubot.prompt', + 'nemubot.server', + 'nemubot.server.message', + 'nemubot.tools', + 'nemubot.tools.xmlparser', + ], + + scripts=[ + 'bin/nemubot', +# 'bin/module_tester', + ], + +# data_files=data_files, +)