You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airavata.apache.org by ma...@apache.org on 2021/06/30 19:37:41 UTC
[airavata-django-portal] branch develop updated: AIRAVATA-3475
Create symlinks to shared directories in user storage for each user
This is an automated email from the ASF dual-hosted git repository.
machristie pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/airavata-django-portal.git
The following commit(s) were added to refs/heads/develop by this push:
new 3b9cefd AIRAVATA-3475 Create symlinks to shared directories in user storage for each user
new d52a245 Merge branch 'airavata-3475' into develop
3b9cefd is described below
commit 3b9cefd784ba1e4c7b6066e636eeb4560f9cd7e8
Author: Marcus Christie <ma...@apache.org>
AuthorDate: Wed Jun 30 15:37:06 2021 -0400
AIRAVATA-3475 Create symlinks to shared directories in user storage for each user
---
django_airavata/apps/api/signals.py | 5 +++++
django_airavata/settings_local.py.sample | 7 +++++++
requirements.txt | 2 +-
3 files changed, 13 insertions(+), 1 deletion(-)
diff --git a/django_airavata/apps/api/signals.py b/django_airavata/apps/api/signals.py
index 448ef88..a3aa065 100644
--- a/django_airavata/apps/api/signals.py
+++ b/django_airavata/apps/api/signals.py
@@ -3,6 +3,7 @@
import logging
from airavata_django_portal_sdk import user_storage
+from django.conf import settings
from django.contrib.auth.signals import user_logged_in
from django.dispatch import Signal, receiver
@@ -21,3 +22,7 @@ def create_user_storage_dir(sender, request, user, **kwargs):
if not user_storage.dir_exists(request, path):
user_storage.create_user_dir(request, path)
log.info("Created home directory for user {}".format(user.username))
+
+ if hasattr(settings, 'GATEWAY_DATA_SHARED_DIRECTORIES'):
+ for name, entry in settings.GATEWAY_DATA_SHARED_DIRECTORIES.items():
+ user_storage.create_symlink(request, entry['path'], name)
diff --git a/django_airavata/settings_local.py.sample b/django_airavata/settings_local.py.sample
index bb01319..67ab71c 100644
--- a/django_airavata/settings_local.py.sample
+++ b/django_airavata/settings_local.py.sample
@@ -86,6 +86,13 @@ GATEWAY_DATA_STORE_DIR = '/tmp'
GATEWAY_DATA_STORE_HOSTNAME = 'localhost'
FILE_UPLOAD_TEMP_DIR = '/tmp'
+# Define shared directories. Each entry is symlinked into the user's storage.
+# GATEWAY_DATA_SHARED_DIRECTORIES = {
+# 'Display Name': {
+# 'path': '/path/to/shared/dir'
+# }
+# }
+
# Profile Service Configuration
PROFILE_SERVICE_HOST = AIRAVATA_API_HOST
PROFILE_SERVICE_PORT = 8962
diff --git a/requirements.txt b/requirements.txt
index 2e0f102..2e84e21 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -19,6 +19,6 @@ google-api-python-client==1.12.8
grpcio-tools==1.34.1
grpcio==1.34.1
-airavata-django-portal-sdk==1.1.dev2
+airavata-django-portal-sdk==1.1.dev3
-e git+https://github.com/apache/airavata.git@develop#egg=airavata-python-sdk&subdirectory=airavata-api/airavata-client-sdks/airavata-python-sdk
-e "."