From 0bcde7aeacdbb82157290be21cf5422bc7f27f95 Mon Sep 17 00:00:00 2001 From: Venkatesh Duppada Date: Sat, 16 Sep 2017 12:23:56 +0530 Subject: [PATCH] Add CircleCi Update travis yml Install tweetokenize separately Add coverage report in circleci Install git for coveralls --- .circleci/config.yml | 71 ++++++++++++++++++++++++++++++++++++++++++++ .travis.yml | 9 +++--- MANIFEST.in | 4 ++- requirements.txt | 6 ++-- setup.py | 9 +++--- 5 files changed, 86 insertions(+), 13 deletions(-) create mode 100644 .circleci/config.yml diff --git a/.circleci/config.yml b/.circleci/config.yml new file mode 100644 index 0000000..afc3809 --- /dev/null +++ b/.circleci/config.yml @@ -0,0 +1,71 @@ +version: 2 + +jobs: + build: + docker: + - image: ubuntu:14.04 + working_directory: ~/circulate + steps: + - checkout + - run: + name: Install Python Pip JDK + command: | + apt-get update && apt-get install -y python python-pip python-dev software-properties-common git + add-apt-repository -y ppa:openjdk-r/ppa + apt-get update && apt-get install -y openjdk-8-jdk + export JDK_HOME=/usr/lib/jvm/java-8-openjdk-amd64 + export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64 + - run: + name: Private Pypi Config Setup + command: | + echo "[distutils]" >> ~/.pypirc + echo "index-servers = pypi-private" >> ~/.pypirc + echo "[pypi-private]" >> ~/.pypirc + echo "repository=$PYPI_HOST" >> ~/.pypirc + echo "username=$PYPI_USERNAME" >> ~/.pypirc + echo "password=$PYPI_PASSWORD" >> ~/.pypirc + - run: + name: Pre-install Virtual Env + command: | + pip install virtualenv + virtualenv venv + - restore_cache: + key: deps2.7-{{ .Branch }}-{{ checksum "requirements.txt" }} + - run: + name: Install Dependencies + command: | + . venv/bin/activate + export JDK_HOME=/usr/lib/jvm/java-8-openjdk-amd64 + export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64 + pip install -U pip wheel setuptools + pip install cython + pip install coveralls + pip install -r requirements.txt --extra-index-url $PYPI_HOST + - save_cache: + key: deps2.7-{{ .Branch }}-{{ checksum "requirements.txt" }} + paths: + - "venv" + - run: + name: Test + command: | + . venv/bin/activate + export JDK_HOME=/usr/lib/jvm/java-8-openjdk-amd64 + export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64 + coverage run --source=. -m unittest discover -v + coverage report + COVERALLS_REPO_TOKEN=$COVERALLS_REPO_TOKEN coveralls --verbose + - run: + name: Push To Private Pypi Server + command: | + . venv/bin/activate + python setup.py bdist_wheel upload -r $PYPI_HOST + python setup.py sdist upload -r $PYPI_HOST + - store_artifacts: + path: test-reports/ + destination: tr1 + +workflows: + version: 2 + build-and-deploy: + jobs: + - build diff --git a/.travis.yml b/.travis.yml index a2d9d85..5ac39fa 100644 --- a/.travis.yml +++ b/.travis.yml @@ -3,12 +3,11 @@ python: - "2.7" install: - pip install -U pip wheel setuptools - - pip install cython - - pip install -r requirements.txt - - pip install . - - pip install coveralls + - pip install coveralls --quiet + - pip install cython --quiet + - pip install -r requirements.txt --extra-index-url $PYPI_HOST --quiet script: coverage run --source=. -m unittest discover -v after_success: - coveralls + coveralls \ No newline at end of file diff --git a/MANIFEST.in b/MANIFEST.in index 5fd68cf..232ad01 100644 --- a/MANIFEST.in +++ b/MANIFEST.in @@ -1 +1,3 @@ -recursive-include emoint/resources/ * \ No newline at end of file +recursive-include emoint/resources/* +include README.md +include requirements.txt diff --git a/requirements.txt b/requirements.txt index b659877..87fd2b9 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,10 +1,10 @@ ---extra-index-url https://seernet-pypi.herokuapp.com/ +--extra-index-url $PYPI_HOST Cython xgboost sklearn pandas scipy numpy -jnius +pyjnius tweetokenize -nltk \ No newline at end of file +nltk diff --git a/setup.py b/setup.py index 376371f..19d88a0 100644 --- a/setup.py +++ b/setup.py @@ -1,12 +1,16 @@ from setuptools import setup, find_packages from codecs import open from os import path +from pip.req import parse_requirements here = path.abspath(path.dirname(__file__)) with open(path.join(here, 'README.md'), encoding='utf-8') as f: long_description = f.read() +install_reqs = parse_requirements('requirements.txt', session='session') +reqs = [str(ir.req) for ir in install_reqs] + setup( name='EmoInt', version='0.1.0', @@ -27,11 +31,8 @@ keywords='sentiment emotion affective computing machine learning', packages=find_packages(), setup_requires=[ - # Setuptools 18.0 properly handles Cython extensions. - 'setuptools>=18.0', - 'cython', ], - install_requires=[], + install_requires=reqs, extras_require={}, package_data={ 'emoint': ['resources/*', 'resources/NRC-Hashtag-Sentiment-Lexicon-v0.1/*', 'resources/SentiStrength/*',