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 2019/10/29 22:08:15 UTC
[airavata-django-portal] branch master updated: AIRAVATA-3245
Create user dir with permissions that allows PGA interop
This is an automated email from the ASF dual-hosted git repository.
machristie pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/airavata-django-portal.git
The following commit(s) were added to refs/heads/master by this push:
new 26e71d8 AIRAVATA-3245 Create user dir with permissions that allows PGA interop
26e71d8 is described below
commit 26e71d8b1fa72bbef1364b19b027b3d082544f62
Author: Marcus Christie <ma...@apache.org>
AuthorDate: Tue Oct 29 18:07:45 2019 -0400
AIRAVATA-3245 Create user dir with permissions that allows PGA interop
---
django_airavata/apps/api/datastore.py | 19 ++++++++++++-------
1 file changed, 12 insertions(+), 7 deletions(-)
diff --git a/django_airavata/apps/api/datastore.py b/django_airavata/apps/api/datastore.py
index c3a1318..45a439b 100644
--- a/django_airavata/apps/api/datastore.py
+++ b/django_airavata/apps/api/datastore.py
@@ -82,7 +82,7 @@ def move_external(external_path, target_username, target_dir, file_name):
def create_user_dir(username, path):
user_data_storage = _user_data_storage(username)
if not user_data_storage.exists(path):
- os.makedirs(user_data_storage.path(path))
+ _makedirs(username, user_data_storage.path(path))
else:
raise Exception(
"Directory {} already exists".format(path))
@@ -139,15 +139,20 @@ def get_experiment_dir(
user_experiment_data_storage = _user_data_storage(username)
experiment_dir = user_experiment_data_storage.path(path)
if not user_experiment_data_storage.exists(experiment_dir):
- os.makedirs(
- experiment_dir,
- mode=user_experiment_data_storage.directory_permissions_mode)
- # os.makedirs mode isn't always respected so need to chmod to be sure
- os.chmod(experiment_dir,
- mode=user_experiment_data_storage.directory_permissions_mode)
+ _makedirs(username, experiment_dir)
return experiment_dir
+def _makedirs(username, dir_path):
+ user_experiment_data_storage = _user_data_storage(username)
+ os.makedirs(dir_path,
+ mode=user_experiment_data_storage.directory_permissions_mode)
+ # os.makedirs mode isn't always respected so need to chmod to be sure
+ os.chmod(dir_path,
+ mode=user_experiment_data_storage.directory_permissions_mode)
+
+
+
def list_user_dir(username, file_path):
logger.debug("file_path={}".format(file_path))
user_data_storage = _user_data_storage(username)