Marcus Christie created AIRAVATA-3055:
-----------------------------------------

             Summary: Handle case where file path is missing
                 Key: AIRAVATA-3055
                 URL: https://issues.apache.org/jira/browse/AIRAVATA-3055
             Project: Airavata
          Issue Type: Sub-task
          Components: Django Portal
            Reporter: Marcus Christie
            Assignee: Marcus Christie


I'm getting an issue when I test locally and then on django.seagrid.org, using 
the same backend. For my local testing the experiment data directory is 
different than django.seagrid.org and this causes SuspiciousFileOperation to be 
thrown:
{noformat}
...
[Fri May 31 18:38:36.244456 2019] [wsgi:error] [pid 5588] [remote 
149.160.157.9:63740]   File 
"/data/portals/django-seagrid/airavata-django-portal/django_airavata/apps/api/datastore.py",
 line 154, in rel_path
[Fri May 31 18:38:36.244459 2019] [wsgi:error] [pid 5588] [remote 
149.160.157.9:63740]     full_path = path_(username, file_path)
[Fri May 31 18:38:36.244462 2019] [wsgi:error] [pid 5588] [remote 
149.160.157.9:63740]   File 
"/data/portals/django-seagrid/airavata-django-portal/django_airavata/apps/api/datastore.py",
 line 160, in path_
[Fri May 31 18:38:36.244465 2019] [wsgi:error] [pid 5588] [remote 
149.160.157.9:63740]     return user_data_storage.path(file_path)
[Fri May 31 18:38:36.244468 2019] [wsgi:error] [pid 5588] [remote 
149.160.157.9:63740]   File 
"/data/portals/django-seagrid/venv/lib64/python3.4/site-packages/django/core/files/storage.py",
 line 405, in path
[Fri May 31 18:38:36.244476 2019] [wsgi:error] [pid 5588] [remote 
149.160.157.9:63740]     return safe_join(self.location, name)
[Fri May 31 18:38:36.244479 2019] [wsgi:error] [pid 5588] [remote 
149.160.157.9:63740]   File 
"/data/portals/django-seagrid/venv/lib64/python3.4/site-packages/django/utils/_os.py",
 line 78, in safe_join
[Fri May 31 18:38:36.244482 2019] [wsgi:error] [pid 5588] [remote 
149.160.157.9:63740]     'component ({})'.format(final_path, base_path))
[Fri May 31 18:38:36.244488 2019] [wsgi:error] [pid 5588] [remote 
149.160.157.9:63740] django.core.exceptions.SuspiciousFileOperation: The joined 
path (/tmp/experiment-data-dir/marcus/tmp/Gaussian_ej992jq.com) is located 
outside of the base path component 
(/var/www/portals/gateway-user-data/django-seagrid/marcus-user)
{noformat}

I think we just need to catch and log a warning with these 
SuspiciousFileOperation errors.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to