This is an automated email from the ASF dual-hosted git repository. machristie pushed a commit to branch local-custos-integration-fixes in repository https://gitbox.apache.org/repos/asf/airavata-custos-portal.git
commit e3c9d8d49eafff1717b3ea615ce8efc89ad1e37f Author: Marcus Christie <[email protected]> AuthorDate: Wed May 3 09:17:39 2023 -0400 Updated README with quickstart instructions for working with Custos local development --- README.md | 60 ++++++++++++++++++++++++++++++++++++++++++++++++++---------- 1 file changed, 50 insertions(+), 10 deletions(-) diff --git a/README.md b/README.md index b0c4e20..b9fb426 100644 --- a/README.md +++ b/README.md @@ -1,17 +1,56 @@ # Airavata Custos Portal -## How to use +## Getting started with running locally -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. +### .env file + +Assuming you are running Custos locally (see +https://github.com/apache/airavata-custos/tree/develop#quickstart), edit the +.env file to match the client id and secret generated by the Custos bootstrap +service: + +``` +CUSTOS_CLIENT_ID="custos-s8qf9g3odbbcdsgd2khv-10000000" +CUSTOS_CLIENT_SEC="..." +CUSTOS_API_URL="http://localhost:10000" +CUSTOS_SUPER_CLIENT_ID="custos-s8qf9g3odbbcdsgd2khv-10000000" +``` + +### Running the frontend + +You need Node.js 14 and Yarn 1 installed. + +``` +yarn install +yarn run serve +``` + +### Running the Django server + +You need Python 3.9+. + +``` +python -m venv venv +source venv/bin/activate +pip install -r requirements.txt +./manage.py migrate +./manage.py runserver +``` + +## How to use as a Django app + +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 ``` 2. Create a Django app + ``` django-admin startproject my_first_custos_app . cd my_first_custos_app @@ -23,7 +62,7 @@ django-admin startapp frontend 3. Include the custos portal api and frontend in the urls. ``` -# my_first_custos_app/apps/frontend/urls.py +# my_first_custos_app/apps/frontend/urls.py from django.contrib import admin from django.urls import path @@ -39,7 +78,7 @@ urlpatterns = [ 4. Also, include the custom UI app in the urls. ``` -# my_first_custos_app/apps/frontend/urls.py +# my_first_custos_app/apps/frontend/urls.py from django.contrib import admin from django.urls import path @@ -55,8 +94,8 @@ urlpatterns = [ ## 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. +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 @@ -81,7 +120,6 @@ 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 ``` @@ -91,6 +129,7 @@ And then point to http://localhost:8000 ## How to publish 1. Build the static files + ``` yarn build ``` @@ -102,7 +141,8 @@ python -m pip install --upgrade build python -m build ``` -3. 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. +3. 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
