Skip to main content

The Airavata Custos Portal SDK is a library that makes it easier to develop Airavata Custos Portal customizations.

Project description

Airavata Custos Portal

How to use

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.

  1. Install
pip install airavata-custos-portal
  1. Create a Django app
django-admin startproject my_first_custos_app
cd my_first_custos_app/my_first_custos_app
django-admin startapp my_custom_ui
  1. Include the custos portal api and frontend in the urls.
# my_first_custos_app/my_first_custos_app/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")),
]
  1. Also, include the custom UI app in the urls.
# my_first_custos_app/my_first_custos_app/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")),
]

Development

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 configurations

Change the environment variables on .env

Run Vue.js app

yarn install
yarn serve

Lints and fixes files

yarn lint

Running the Django server locally

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

How to publish

  1. Build the static files
yarn build
  1. Build the python package
python -m pip install --upgrade build
python -m build
  1. Publish the python package to pypi.org. Optionally can push to test.pypi.org. See https://packaging.python.org/tutorials/packaging-projects/ for more info.
python -m pip install --upgrade twine
python -m twine upload dist/*

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

airavata_custos_portal-0.0.6.tar.gz (1.7 MB view hashes)

Uploaded Source

Built Distribution

airavata_custos_portal-0.0.6-py3-none-any.whl (1.8 MB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page