Airavat custos portal is available as a python package to install and customise for tenants needs. The forllowing instructions are for setting up a customised portal using all the features available in the airavata custos portal.
pip install airavata-custos-portal
django-admin startproject my_first_custos_app . cd my_first_custos_app django-admin startapp apps cd apps django-admin startapp frontend
# my_first_custos_app/apps/frontend/urls.py from django.contrib import admin from django.urls import path from django.conf.urls import include urlpatterns = [ path('admin/', admin.site.urls), path("api/", include("airavata_custos_portal.apps.api.urls")), path("", include("airavata_custos_portal.apps.frontend.urls")), ]
# my_first_custos_app/apps/frontend/urls.py from django.contrib import admin from django.urls import path from django.conf.urls import include urlpatterns = [ path('admin/', admin.site.urls), path("api/", include("airavata_custos_portal.apps.api.urls")), path("", include("airavata_custos_portal.apps.frontend.urls")), path("custom-ui/", include("my_first_custos_app.my_custom_ui.urls")), ]
The application consists of a Vue.js frontend and a Django based backend. The instructions below are for setting up the local setup for development.
Change the environment variables on .env
yarn install yarn serve
yarn lint
python -m venv venv source venv/bin/activate pip install -r requirements.txt cd airavata_custos_portal/ ./manage.py migrate ./manage.py runserver
And then point to http://localhost:8000
yarn build
python -m pip install --upgrade build python -m build
python -m pip install --upgrade twine python -m twine upload dist/*