diff --git a/.github/workflows/publish-package.yml b/.github/workflows/publish-package.yml
new file mode 100644
index 00000000..d24f48ea
--- /dev/null
+++ b/.github/workflows/publish-package.yml
@@ -0,0 +1,27 @@
+name: Publish python package
+
+on:
+ release:
+ types: [created]
+
+jobs:
+ deploy:
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v2
+ - name: Set up Python
+ uses: actions/setup-python@v2
+ with:
+ python-version: '3.8'
+ - name: Install dependencies
+ run: |
+ python -m pip install --upgrade pip
+ pip install setuptools wheel twine
+ - name: Build and publish
+ env:
+ TWINE_USERNAME: ${{ secrets.PYPI_USERNAME }}
+ TWINE_PASSWORD: ${{ secrets.PYPI_PASSWORD }}
+ TWINE_REPOSITORY: pypi
+ run: |
+ python setup.py sdist bdist_wheel
+ twine upload dist/*
diff --git a/.github/workflows/test-package.yml b/.github/workflows/test-package.yml
index 35bafe0c..c02aa5ae 100644
--- a/.github/workflows/test-package.yml
+++ b/.github/workflows/test-package.yml
@@ -2,7 +2,7 @@
# executes the package tests.
#
# For more details: https://docs.github.com/en/actions/guides/building-and-testing-python
-name: Python package using conda
+name: Tests
on:
pull_request:
@@ -38,4 +38,4 @@ jobs:
flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics
- name: Test with pytest
run: |
- pytest
\ No newline at end of file
+ pytest
diff --git a/README.md b/README.md
index fa1ea270..c68d1651 100644
--- a/README.md
+++ b/README.md
@@ -141,4 +141,4 @@ code format throughout the project. You can format without committing via
 Ryan Soley
|
 Diane Lee
|
-
\ No newline at end of file
+
diff --git a/rubicon/__init__.py b/rubicon/__init__.py
index 8ed88755..5a2920dd 100644
--- a/rubicon/__init__.py
+++ b/rubicon/__init__.py
@@ -9,7 +9,8 @@
Rubicon,
)
-__version__ = "4.5.0"
+__version__ = "0.1.0"
+
__all__ = [
"Artifact",
"Dataframe",
diff --git a/setup.py b/setup.py
index c672c40d..89d4bea7 100644
--- a/setup.py
+++ b/setup.py
@@ -1,7 +1,5 @@
from setuptools import find_packages, setup
-from version import get_version
-
install_requires = [
"click>=7.1",
"dask[dataframe]>=2.12.0",
@@ -25,9 +23,9 @@
setup(
name="rubicon",
- version=get_version(),
- author="The Rubicon Team",
- author_email="rubicon-developers@capitalone.com",
+ version="0.1.0",
+ author="Joe Wolfe, Ryan Soley, Diane Lee, Mike McCarty, CapitalOne",
+ license='Apache License, Version 2.0',
description="an ML library for model development and governance",
packages=find_packages(),
include_package_data=True,
@@ -41,4 +39,27 @@
"rubicon_experiment = rubicon.intake_rubicon.experiment:ExperimentSource",
],
},
+ classifiers=[
+ # How mature is this project? Common values are
+ # 3 - Alpha
+ # 4 - Beta
+ # 5 - Production/Stable
+ 'Development Status :: 4 - Beta',
+
+ # Indicate who your project is intended for
+ 'Intended Audience :: Developers',
+ 'Intended Audience :: Science/Research',
+
+ 'Topic :: Scientific/Engineering',
+ 'Topic :: Scientific/Engineering :: Information Analysis',
+ 'Topic :: Software Development :: Build Tools',
+ 'Topic :: Software Development :: Documentation',
+
+ # Pick your license as you wish (should match "license" above)
+ 'License :: OSI Approved :: Apache Software License',
+
+ # Specify the Python versions you support here. In particular, ensure
+ # that you indicate whether you support Python 3 or both.
+ 'Programming Language :: Python :: 3',
+ ],
)
diff --git a/version.py b/version.py
deleted file mode 100644
index 540141ab..00000000
--- a/version.py
+++ /dev/null
@@ -1,56 +0,0 @@
-"""
-Starting point taken from https://gist.github.com/pwithnall/7bc5f320b3bdf418265a
-
-Gets the current version number.
-If in a git repository, it is the current git tag.
-To use this script, simply import it in your setup.py file
-and use the results of get_version() as your package version:
- from version import *
- setup(
- ...
- version=get_version(),
- ...
- )
-"""
-
-__all__ = "get_version"
-
-import os
-import subprocess
-from os.path import dirname, isdir, join
-
-tag = os.environ.get("COMMIT_MESSAGE")
-
-
-def get_version():
- # tag gets specified during the Jenkins pipeline
- if tag:
- return tag
-
- # if no tag, pull from the latest github tag
- d = dirname(__file__)
-
- if isdir(join(d, "..", "..", ".git")):
- # Get the version using "git describe".
- cmd = "git describe --tags".split()
- try:
- version = subprocess.check_output(cmd).decode().strip()
- except subprocess.CalledProcessError:
- print("Unable to find .git directory")
- # default so that jenkins doesn't break
- version = "non-master-branch"
-
- # PEP 386 compatibility
- if "-" in version:
- version = ".post".join(version.split("-")[:2])
-
- else:
- print("Unable to find .git directory")
- # default so that jenkins doesn't break
- version = "non-master-branch"
-
- return version
-
-
-if __name__ == "__main__":
- print(get_version())