diff options
author | CoprDistGit <infra@openeuler.org> | 2023-05-15 03:50:26 +0000 |
---|---|---|
committer | CoprDistGit <infra@openeuler.org> | 2023-05-15 03:50:26 +0000 |
commit | 24e1f3fe64b6953f67c66b3e18972771635bcbf3 (patch) | |
tree | 6c0238f37043a853183cc991e0754bd10d13f1fe | |
parent | 8026b2d11dd997338f59ec363e7a17b01be43ae7 (diff) |
automatic import of python-cortex-client
-rw-r--r-- | .gitignore | 1 | ||||
-rw-r--r-- | python-cortex-client.spec | 483 | ||||
-rw-r--r-- | sources | 1 |
3 files changed, 485 insertions, 0 deletions
@@ -0,0 +1 @@ +/cortex-client-7.1.2.zip diff --git a/python-cortex-client.spec b/python-cortex-client.spec new file mode 100644 index 0000000..20f0da2 --- /dev/null +++ b/python-cortex-client.spec @@ -0,0 +1,483 @@ +%global _empty_manifest_terminate_build 0 +Name: python-cortex-client +Version: 7.1.2 +Release: 1 +Summary: [Deprecated] Python SDK for the CognitiveScale Cortex5 AI Platform +License: CognitiveScale Inc. +URL: https://docs.cortex.insights.ai +Source0: https://mirrors.nju.edu.cn/pypi/web/packages/2f/4a/d8a4ad2dee7527924036c351d64c6609220920df21d67bbb25f839f1f50a/cortex-client-7.1.2.zip +BuildArch: noarch + + +%description +# Cortex ML Models Python Library + +> NOTE: cortex-client has been deprecated. Please migrate to [cortex-python](https://pypi.org/project/cortex-python/) instead. + +The Cortex Python Library provides an SDK to easily integrate and deploy ML algorithms into Cortex. +Refer to the Cortex documentation for details on how to use the SDK: + +- Developer guide: https://docs.cortex.insights.ai/docs/developer-guide/overview/ +- Python SDK references: https://docs.cortex.insights.ai/docs/developer-guide/reference-guides + + +## Installation + +To install the Cortex Client: +``` + > pip install cortex-client +``` + +or from source code: +``` + > git clone git@bitbucket.org:cognitivescale/cortex-python-lib.git + > cd cortex-python-lib + > pip install -e . +``` + +To install the Cortex Client with the optional visualization component: +``` + > pip install cortex-client[viz] +``` + +## 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 Python SDK in editable mode, and all developer dependencies: + +``` + > git clone git@bitbucket.org:cognitivescale/cortex-python-lib.git + > cd cortex-python-lib + > make dev.setup + > 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 dev.test` to run test suite + +> if you get this cryptic error message: `RuntimeError: Python is not installed as a framework.` +create a file `~/.matplotlib/matplotlibrc` and write inside of it: `backend: TkAgg` + +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` + +#### Using the New SDK + +Suppose you made some changes to the SDK, and you want to try/test the new SDK before committing your changes to dev. We need to use an alpha version of the new SDK. The below changes will push our new SDK docker image to the pypi registry. The below steps are necessary if you wish to run ActionBuilder and commands that require pulling from the private cortex docker registry. + +- we need to create and push an alpha release: +- get credentials to the `cortex-client` pypi cortex5 account (via lastpass) +- run `make dev.push TAG=<alpha release number>`. Example: `make dev.push TAG=1` + +We are going to be testing our new SDK in skill lab. Go to https://docs.cortex-dev.insights.ai/docs/skill-development/pre-skill-development/import-run-notebooks/#load-example-notebooks to get +a working example notebook in skill lab (if you don't have one already). We are going to use `cortex-examples/skill-lab/skills_hello_world.ipynb` as a reference. + +In the hello world notebook: +- create and run a new cell with the command `!pip show cortex-client` - this will show our current cortex-client. +Run that command, and you'll see under Location, it currently points to the old SDK. We need to point it to our new sdk. Take note of this. +- create another cell and run the command `!which python` - this will show which python version (and likely virutalenv) you're using. +Take note of this. + +Create a terminal tab in skill lab. We need to point the python version in the terminal session to be the same one as the hello world note book. This process will be specific to the user, but possible steps include having to run `conda deactivate` and `conda actviate <python virtual env the hello world notebook is in>` + +Now, in the terminal tab you should be in the correct python environment. Next, We need to use our new local sdk. `pip install -e <localdirectory location/cortex-python-lib>`. Make sure to update `setup.py` version to the alpha release. + +Finally: if you go back to the hello world notebook, and run `!pip show cortex-client`, you should see the new SDK version and location. You can now test your new, local SDK on skill-lab. + +Note, If changes don't show up, try restarting the kernel. + +### Contribution + +After contributing to the SDK, and before you submit changes as a PR, please do the following + +1. Run unit tests via `make dev.test` +2. Manually verified SDK (i.e. try the new SDK out in skill lab) to make sure everything is going well. Not required, but highly encouraged. +3. Bump up `setup.py` version and update the `CHANGELOG.md` + +### Documentation + +The Python client documentation is built with Sphinx. To build the documentation: + +`cd` to the root directory of the Python SDK project: +``` + > cd <cortex-python-sdk source dir> +``` + +Activate your virtual environment: +``` +> source _venv/bin/activate +``` + +Setup your environment, if you have not done so: +``` +> make dev.install +``` + +Build the docs: +``` +> make docs.build +``` + +The documentation will be rendered in HTML format under the `docs/_build/html` directory. + +### Pre-release to staging + +1. Create and push an alpha release: + ``` + > make dev.push TAG=1 + ``` + Where `TAG` is the alpha version number. This will build an alpha-tagged package. +2. Merge `develop` to `staging` branch: + ``` + > make stage + ``` +3. In Bitbucket, create a pull request from `staging` to `master`. + +%package -n python3-cortex-client +Summary: [Deprecated] Python SDK for the CognitiveScale Cortex5 AI Platform +Provides: python-cortex-client +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +%description -n python3-cortex-client +# Cortex ML Models Python Library + +> NOTE: cortex-client has been deprecated. Please migrate to [cortex-python](https://pypi.org/project/cortex-python/) instead. + +The Cortex Python Library provides an SDK to easily integrate and deploy ML algorithms into Cortex. +Refer to the Cortex documentation for details on how to use the SDK: + +- Developer guide: https://docs.cortex.insights.ai/docs/developer-guide/overview/ +- Python SDK references: https://docs.cortex.insights.ai/docs/developer-guide/reference-guides + + +## Installation + +To install the Cortex Client: +``` + > pip install cortex-client +``` + +or from source code: +``` + > git clone git@bitbucket.org:cognitivescale/cortex-python-lib.git + > cd cortex-python-lib + > pip install -e . +``` + +To install the Cortex Client with the optional visualization component: +``` + > pip install cortex-client[viz] +``` + +## 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 Python SDK in editable mode, and all developer dependencies: + +``` + > git clone git@bitbucket.org:cognitivescale/cortex-python-lib.git + > cd cortex-python-lib + > make dev.setup + > 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 dev.test` to run test suite + +> if you get this cryptic error message: `RuntimeError: Python is not installed as a framework.` +create a file `~/.matplotlib/matplotlibrc` and write inside of it: `backend: TkAgg` + +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` + +#### Using the New SDK + +Suppose you made some changes to the SDK, and you want to try/test the new SDK before committing your changes to dev. We need to use an alpha version of the new SDK. The below changes will push our new SDK docker image to the pypi registry. The below steps are necessary if you wish to run ActionBuilder and commands that require pulling from the private cortex docker registry. + +- we need to create and push an alpha release: +- get credentials to the `cortex-client` pypi cortex5 account (via lastpass) +- run `make dev.push TAG=<alpha release number>`. Example: `make dev.push TAG=1` + +We are going to be testing our new SDK in skill lab. Go to https://docs.cortex-dev.insights.ai/docs/skill-development/pre-skill-development/import-run-notebooks/#load-example-notebooks to get +a working example notebook in skill lab (if you don't have one already). We are going to use `cortex-examples/skill-lab/skills_hello_world.ipynb` as a reference. + +In the hello world notebook: +- create and run a new cell with the command `!pip show cortex-client` - this will show our current cortex-client. +Run that command, and you'll see under Location, it currently points to the old SDK. We need to point it to our new sdk. Take note of this. +- create another cell and run the command `!which python` - this will show which python version (and likely virutalenv) you're using. +Take note of this. + +Create a terminal tab in skill lab. We need to point the python version in the terminal session to be the same one as the hello world note book. This process will be specific to the user, but possible steps include having to run `conda deactivate` and `conda actviate <python virtual env the hello world notebook is in>` + +Now, in the terminal tab you should be in the correct python environment. Next, We need to use our new local sdk. `pip install -e <localdirectory location/cortex-python-lib>`. Make sure to update `setup.py` version to the alpha release. + +Finally: if you go back to the hello world notebook, and run `!pip show cortex-client`, you should see the new SDK version and location. You can now test your new, local SDK on skill-lab. + +Note, If changes don't show up, try restarting the kernel. + +### Contribution + +After contributing to the SDK, and before you submit changes as a PR, please do the following + +1. Run unit tests via `make dev.test` +2. Manually verified SDK (i.e. try the new SDK out in skill lab) to make sure everything is going well. Not required, but highly encouraged. +3. Bump up `setup.py` version and update the `CHANGELOG.md` + +### Documentation + +The Python client documentation is built with Sphinx. To build the documentation: + +`cd` to the root directory of the Python SDK project: +``` + > cd <cortex-python-sdk source dir> +``` + +Activate your virtual environment: +``` +> source _venv/bin/activate +``` + +Setup your environment, if you have not done so: +``` +> make dev.install +``` + +Build the docs: +``` +> make docs.build +``` + +The documentation will be rendered in HTML format under the `docs/_build/html` directory. + +### Pre-release to staging + +1. Create and push an alpha release: + ``` + > make dev.push TAG=1 + ``` + Where `TAG` is the alpha version number. This will build an alpha-tagged package. +2. Merge `develop` to `staging` branch: + ``` + > make stage + ``` +3. In Bitbucket, create a pull request from `staging` to `master`. + +%package help +Summary: Development documents and examples for cortex-client +Provides: python3-cortex-client-doc +%description help +# Cortex ML Models Python Library + +> NOTE: cortex-client has been deprecated. Please migrate to [cortex-python](https://pypi.org/project/cortex-python/) instead. + +The Cortex Python Library provides an SDK to easily integrate and deploy ML algorithms into Cortex. +Refer to the Cortex documentation for details on how to use the SDK: + +- Developer guide: https://docs.cortex.insights.ai/docs/developer-guide/overview/ +- Python SDK references: https://docs.cortex.insights.ai/docs/developer-guide/reference-guides + + +## Installation + +To install the Cortex Client: +``` + > pip install cortex-client +``` + +or from source code: +``` + > git clone git@bitbucket.org:cognitivescale/cortex-python-lib.git + > cd cortex-python-lib + > pip install -e . +``` + +To install the Cortex Client with the optional visualization component: +``` + > pip install cortex-client[viz] +``` + +## 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 Python SDK in editable mode, and all developer dependencies: + +``` + > git clone git@bitbucket.org:cognitivescale/cortex-python-lib.git + > cd cortex-python-lib + > make dev.setup + > 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 dev.test` to run test suite + +> if you get this cryptic error message: `RuntimeError: Python is not installed as a framework.` +create a file `~/.matplotlib/matplotlibrc` and write inside of it: `backend: TkAgg` + +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` + +#### Using the New SDK + +Suppose you made some changes to the SDK, and you want to try/test the new SDK before committing your changes to dev. We need to use an alpha version of the new SDK. The below changes will push our new SDK docker image to the pypi registry. The below steps are necessary if you wish to run ActionBuilder and commands that require pulling from the private cortex docker registry. + +- we need to create and push an alpha release: +- get credentials to the `cortex-client` pypi cortex5 account (via lastpass) +- run `make dev.push TAG=<alpha release number>`. Example: `make dev.push TAG=1` + +We are going to be testing our new SDK in skill lab. Go to https://docs.cortex-dev.insights.ai/docs/skill-development/pre-skill-development/import-run-notebooks/#load-example-notebooks to get +a working example notebook in skill lab (if you don't have one already). We are going to use `cortex-examples/skill-lab/skills_hello_world.ipynb` as a reference. + +In the hello world notebook: +- create and run a new cell with the command `!pip show cortex-client` - this will show our current cortex-client. +Run that command, and you'll see under Location, it currently points to the old SDK. We need to point it to our new sdk. Take note of this. +- create another cell and run the command `!which python` - this will show which python version (and likely virutalenv) you're using. +Take note of this. + +Create a terminal tab in skill lab. We need to point the python version in the terminal session to be the same one as the hello world note book. This process will be specific to the user, but possible steps include having to run `conda deactivate` and `conda actviate <python virtual env the hello world notebook is in>` + +Now, in the terminal tab you should be in the correct python environment. Next, We need to use our new local sdk. `pip install -e <localdirectory location/cortex-python-lib>`. Make sure to update `setup.py` version to the alpha release. + +Finally: if you go back to the hello world notebook, and run `!pip show cortex-client`, you should see the new SDK version and location. You can now test your new, local SDK on skill-lab. + +Note, If changes don't show up, try restarting the kernel. + +### Contribution + +After contributing to the SDK, and before you submit changes as a PR, please do the following + +1. Run unit tests via `make dev.test` +2. Manually verified SDK (i.e. try the new SDK out in skill lab) to make sure everything is going well. Not required, but highly encouraged. +3. Bump up `setup.py` version and update the `CHANGELOG.md` + +### Documentation + +The Python client documentation is built with Sphinx. To build the documentation: + +`cd` to the root directory of the Python SDK project: +``` + > cd <cortex-python-sdk source dir> +``` + +Activate your virtual environment: +``` +> source _venv/bin/activate +``` + +Setup your environment, if you have not done so: +``` +> make dev.install +``` + +Build the docs: +``` +> make docs.build +``` + +The documentation will be rendered in HTML format under the `docs/_build/html` directory. + +### Pre-release to staging + +1. Create and push an alpha release: + ``` + > make dev.push TAG=1 + ``` + Where `TAG` is the alpha version number. This will build an alpha-tagged package. +2. Merge `develop` to `staging` branch: + ``` + > make stage + ``` +3. In Bitbucket, create a pull request from `staging` to `master`. + +%prep +%autosetup -n cortex-client-7.1.2 + +%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-client -f filelist.lst +%dir %{python3_sitelib}/* + +%files help -f doclist.lst +%{_docdir}/* + +%changelog +* Mon May 15 2023 Python_Bot <Python_Bot@openeuler.org> - 7.1.2-1 +- Package Spec generated @@ -0,0 +1 @@ +5a8b2b48e2aa7ea306ea918e5c94ee68 cortex-client-7.1.2.zip |