The Airavata Django Portal SDK provides libraries that assist in developing custom Django app extensions to the Airavata Django Portal.
See the documentation at https://airavata-django-portal-sdk.readthedocs.io/ for more details.
To integrate the SDK with an Airavata Django Portal custom app, add
"airavata-django-portal-sdk",
to the install_requires
list in your setup.py file. Then with your virtual
environment activated, either install the SDK directly:
pip install -e "git+https://github.com/apache/airavata-django-portal-sdk.git@master#egg=airavata-django-portal-sdk"
Or add the dependency to your requirements.txt file:
-e "git+https://github.com/apache/airavata-django-portal-sdk.git@master#egg=airavata-django-portal-sdk"
then run pip install -r requirements.txt
django-admin makemigrations --settings=tests.test_settings airavata_django_portal_sdk
To generate the documentation, create a virtual environment and then:
pip install -r requirements-dev.txt
mkdocs serve
source venv/bin/activate
pip install -r requirements-dev.txt
./runtests.py
flake8 .
autopep8 -i -aaa -r .
isort .
-
Update the version in setup.py
-
Tag the repo with the same version, with the format
v${version_number}
. For example, if the version number in setup.py is "1.2" then tag the repo with "v1.2".git tag -m VERSION VERSION
-
In a clean checkout
cd /tmp/ git clone /path/to/airavata-django-portal-sdk/ -b VERSION cd airavata-django-portal-sdk python3 -m venv venv source venv/bin/activate python3 -m pip install --upgrade build python3 -m build
-
Push to pypi.org. Optionally can push to test.pypi.org. See https://packaging.python.org/tutorials/packaging-projects/ for more info.
python3 -m pip install --upgrade twine python3 -m twine upload dist/*