diff options
-rw-r--r-- | .gitignore | 1 | ||||
-rw-r--r-- | python-cortex-python.spec | 415 | ||||
-rw-r--r-- | sources | 1 |
3 files changed, 417 insertions, 0 deletions
@@ -0,0 +1 @@ +/cortex-python-6.1.0.tar.gz diff --git a/python-cortex-python.spec b/python-cortex-python.spec new file mode 100644 index 0000000..5588489 --- /dev/null +++ b/python-cortex-python.spec @@ -0,0 +1,415 @@ +%global _empty_manifest_terminate_build 0 +Name: python-cortex-python +Version: 6.1.0 +Release: 1 +Summary: Python module for the CognitiveScale Cortex Cognitive Platform +License: Apache 2.0 +URL: https://github.com/CognitiveScale/cortex-python +Source0: https://mirrors.nju.edu.cn/pypi/web/packages/d8/f4/3909d7f1c9ade113eda3c5ede52e0343bbbbc66941d7f36305bac406e603/cortex-python-6.1.0.tar.gz +BuildArch: noarch + +Requires: python3-requests +Requires: python3-requests-toolbelt +Requires: python3-jwt +Requires: python3-pyyaml +Requires: python3-cuid +Requires: python3-tenacity +Requires: python3-dill +Requires: python3-ipython +Requires: python3-maya +Requires: python3-jinja2 +Requires: python3-matplotlib +Requires: python3-seaborn +Requires: python3-pandas + +%description +# Python Module for the Cortex Cognitive Platform + +The Cortex Python module provides an API client library to easily integrate with the Cortex Cognitive Platform. +Refer to the Cortex documentation for details on how to use the library: + +- Developer guide: https://cognitivescale.github.io/cortex-fabric/ +- Cortex Python references: https://cognitivescale.github.io/cortex-python/master/ + +## Installation + +To install: +``` + > pip install cortex-python +``` + +or from source code: +``` + > git clone git@github.com:CognitiveScale/cortex-python.git + > cd cortex-python + > pip install -e . +``` + +To install the optional components: +``` + > pip install cortex-python[viz] + > pip install cortex-python[jupyter] +``` + +## Development + +### Setup + +When developing, it's a best practice to work in a virtual environment. Create and activate a virtual environment: +``` + > virtualenv --python=python3.6 _venv + > source _venv/bin/activate +``` + +Install developer dependencies: + +``` + > git clone git@github.com:CognitiveScale/cortex-python.git + > cd cortex-python + > make dev.install +``` + +There's a convenience `Makefile` that has commands to common tasks, such as build, test, etc. Use it! + +### Testing + +#### Unit Tests + +Follow above setup instructions (making sure to be in the virtual environment and having the necessary dependencies) + +- `make test` to run test suite + +To run an individual file or class method, use pytest. Example tests shown below: + +- file: `pytest test/unit/agent_test.py` +- class method: `pytest test/unit/agent_test.py::TestAgent::test_get_agent` + +#### Publishing an alpha build + +Suppose you want to release new functionality so it can be installed without releasing a new official version. We need to use an alpha version in PyPi. + +- we need to create and publish an alpha release: +- get credentials to the `cortex-python` pypi CognitiveScale account (via lastpass) +- run `make dev.push`. The alpha pre-release number (the N in X.Y.ZaN) with be determined automatically. + +### Contribution + +After contributing to the library, and before you submit changes as a PR, please do the following + +1. Run unit tests via `make test` +2. Manually verification (i.e. try the new changes out in Cortex) to make sure everything is going well. Not required, but highly encouraged. +3. Bump up `setup.py` version and update the `CHANGELOG.md` + +### Documentation + +Activate your virtual environment: +``` +> source _venv/bin/activate +``` + +Set up your environment, if you have not done so: +``` +> make dev.install +``` + +The package documentation is built with Sphinx and generates versioned documentation for all tag matching the `release/X.Y.Z` pattern and for the `master` branch. To build the documentation: + +``` +> make docs.multi +``` +The documentation will be rendered in HTML format under the `docs/_build/${VERSION}` directory. + +### Pre-release to staging + +1. Create and push an alpha release: + ``` + > make dev.push + ``` + This will build an alpha-tagged package. +2. Merge `develop` to `staging` branch: + ``` + > make stage + ``` +3. In GitHub, create a pull request from `staging` to `master`. + + + + +%package -n python3-cortex-python +Summary: Python module for the CognitiveScale Cortex Cognitive Platform +Provides: python-cortex-python +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +%description -n python3-cortex-python +# Python Module for the Cortex Cognitive Platform + +The Cortex Python module provides an API client library to easily integrate with the Cortex Cognitive Platform. +Refer to the Cortex documentation for details on how to use the library: + +- Developer guide: https://cognitivescale.github.io/cortex-fabric/ +- Cortex Python references: https://cognitivescale.github.io/cortex-python/master/ + +## Installation + +To install: +``` + > pip install cortex-python +``` + +or from source code: +``` + > git clone git@github.com:CognitiveScale/cortex-python.git + > cd cortex-python + > pip install -e . +``` + +To install the optional components: +``` + > pip install cortex-python[viz] + > pip install cortex-python[jupyter] +``` + +## Development + +### Setup + +When developing, it's a best practice to work in a virtual environment. Create and activate a virtual environment: +``` + > virtualenv --python=python3.6 _venv + > source _venv/bin/activate +``` + +Install developer dependencies: + +``` + > git clone git@github.com:CognitiveScale/cortex-python.git + > cd cortex-python + > make dev.install +``` + +There's a convenience `Makefile` that has commands to common tasks, such as build, test, etc. Use it! + +### Testing + +#### Unit Tests + +Follow above setup instructions (making sure to be in the virtual environment and having the necessary dependencies) + +- `make test` to run test suite + +To run an individual file or class method, use pytest. Example tests shown below: + +- file: `pytest test/unit/agent_test.py` +- class method: `pytest test/unit/agent_test.py::TestAgent::test_get_agent` + +#### Publishing an alpha build + +Suppose you want to release new functionality so it can be installed without releasing a new official version. We need to use an alpha version in PyPi. + +- we need to create and publish an alpha release: +- get credentials to the `cortex-python` pypi CognitiveScale account (via lastpass) +- run `make dev.push`. The alpha pre-release number (the N in X.Y.ZaN) with be determined automatically. + +### Contribution + +After contributing to the library, and before you submit changes as a PR, please do the following + +1. Run unit tests via `make test` +2. Manually verification (i.e. try the new changes out in Cortex) to make sure everything is going well. Not required, but highly encouraged. +3. Bump up `setup.py` version and update the `CHANGELOG.md` + +### Documentation + +Activate your virtual environment: +``` +> source _venv/bin/activate +``` + +Set up your environment, if you have not done so: +``` +> make dev.install +``` + +The package documentation is built with Sphinx and generates versioned documentation for all tag matching the `release/X.Y.Z` pattern and for the `master` branch. To build the documentation: + +``` +> make docs.multi +``` +The documentation will be rendered in HTML format under the `docs/_build/${VERSION}` directory. + +### Pre-release to staging + +1. Create and push an alpha release: + ``` + > make dev.push + ``` + This will build an alpha-tagged package. +2. Merge `develop` to `staging` branch: + ``` + > make stage + ``` +3. In GitHub, create a pull request from `staging` to `master`. + + + + +%package help +Summary: Development documents and examples for cortex-python +Provides: python3-cortex-python-doc +%description help +# Python Module for the Cortex Cognitive Platform + +The Cortex Python module provides an API client library to easily integrate with the Cortex Cognitive Platform. +Refer to the Cortex documentation for details on how to use the library: + +- Developer guide: https://cognitivescale.github.io/cortex-fabric/ +- Cortex Python references: https://cognitivescale.github.io/cortex-python/master/ + +## Installation + +To install: +``` + > pip install cortex-python +``` + +or from source code: +``` + > git clone git@github.com:CognitiveScale/cortex-python.git + > cd cortex-python + > pip install -e . +``` + +To install the optional components: +``` + > pip install cortex-python[viz] + > pip install cortex-python[jupyter] +``` + +## Development + +### Setup + +When developing, it's a best practice to work in a virtual environment. Create and activate a virtual environment: +``` + > virtualenv --python=python3.6 _venv + > source _venv/bin/activate +``` + +Install developer dependencies: + +``` + > git clone git@github.com:CognitiveScale/cortex-python.git + > cd cortex-python + > make dev.install +``` + +There's a convenience `Makefile` that has commands to common tasks, such as build, test, etc. Use it! + +### Testing + +#### Unit Tests + +Follow above setup instructions (making sure to be in the virtual environment and having the necessary dependencies) + +- `make test` to run test suite + +To run an individual file or class method, use pytest. Example tests shown below: + +- file: `pytest test/unit/agent_test.py` +- class method: `pytest test/unit/agent_test.py::TestAgent::test_get_agent` + +#### Publishing an alpha build + +Suppose you want to release new functionality so it can be installed without releasing a new official version. We need to use an alpha version in PyPi. + +- we need to create and publish an alpha release: +- get credentials to the `cortex-python` pypi CognitiveScale account (via lastpass) +- run `make dev.push`. The alpha pre-release number (the N in X.Y.ZaN) with be determined automatically. + +### Contribution + +After contributing to the library, and before you submit changes as a PR, please do the following + +1. Run unit tests via `make test` +2. Manually verification (i.e. try the new changes out in Cortex) to make sure everything is going well. Not required, but highly encouraged. +3. Bump up `setup.py` version and update the `CHANGELOG.md` + +### Documentation + +Activate your virtual environment: +``` +> source _venv/bin/activate +``` + +Set up your environment, if you have not done so: +``` +> make dev.install +``` + +The package documentation is built with Sphinx and generates versioned documentation for all tag matching the `release/X.Y.Z` pattern and for the `master` branch. To build the documentation: + +``` +> make docs.multi +``` +The documentation will be rendered in HTML format under the `docs/_build/${VERSION}` directory. + +### Pre-release to staging + +1. Create and push an alpha release: + ``` + > make dev.push + ``` + This will build an alpha-tagged package. +2. Merge `develop` to `staging` branch: + ``` + > make stage + ``` +3. In GitHub, create a pull request from `staging` to `master`. + + + + +%prep +%autosetup -n cortex-python-6.1.0 + +%build +%py3_build + +%install +%py3_install +install -d -m755 %{buildroot}/%{_pkgdocdir} +if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi +if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi +if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi +if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi +pushd %{buildroot} +if [ -d usr/lib ]; then + find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/lib64 ]; then + find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/bin ]; then + find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/sbin ]; then + find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst +fi +touch doclist.lst +if [ -d usr/share/man ]; then + find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst +fi +popd +mv %{buildroot}/filelist.lst . +mv %{buildroot}/doclist.lst . + +%files -n python3-cortex-python -f filelist.lst +%dir %{python3_sitelib}/* + +%files help -f doclist.lst +%{_docdir}/* + +%changelog +* Fri May 05 2023 Python_Bot <Python_Bot@openeuler.org> - 6.1.0-1 +- Package Spec generated @@ -0,0 +1 @@ +9cda15b9a77332861f0ef0b7231edcc3 cortex-python-6.1.0.tar.gz |