[ 
https://issues.apache.org/jira/browse/AIRAVATA-3291?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17025237#comment-17025237
 ] 

Marcus Christie commented on AIRAVATA-3291:
-------------------------------------------

Django error email:

{noformat}
Internal Server Error: /cms/images/multiple/add/

PermissionError at /cms/images/multiple/add/
[Errno 13] Permission denied: 
'/var/www/portals/django-pace-gatech/airavata-django-portal/django_airavata/media/original_images/QuSP_Home_Converted.png'

Request Method: POST
Request URL: https://pace.scigap.org/cms/images/multiple/add/
Django Version: 1.11.21
Python Executable: /var/www/portals/django-pace-gatech/venv/bin/python
Python Version: 3.6.8
Python Path: ['/usr/lib64/python36.zip', '/usr/lib64/python3.6', 
'/usr/lib64/python3.6/lib-dynload', 
'/var/www/portals/django-pace-gatech/venv/lib64/python3.6/site-packages', 
'/var/www/portals/django-pace-gatech/airavata-django-portal', 
'/var/www/portals/django-pace-gatech/venv/lib/python3.6/site-packages', 
'/var/www/portals/django-pace-gatech/venv/lib64/python3.6/site-packages/IPython/extensions']
Server time: Tue, 28 Jan 2020 15:12:22 +0000
Installed Applications:
['django_airavata.apps.admin.apps.AdminConfig',
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'django_airavata.apps.auth.apps.AuthConfig',
'django_airavata.apps.workspace.apps.WorkspaceConfig',
'rest_framework',
'django_airavata.apps.api.apps.ApiConfig',
'django_airavata.apps.groups.apps.GroupsConfig',
'django_airavata.apps.dataparsers.apps.DataParsersConfig',
'django.contrib.humanize',
'wagtail.contrib.forms',
'wagtail.contrib.redirects',
'wagtail.embeds',
'wagtail.sites',
'wagtail.users',
'wagtail.snippets',
'wagtail.documents',
'wagtail.images',
'wagtail.search',
'wagtail.admin',
'wagtail.core',
'modelcluster',
'taggit',
'wagtailfontawesome',
'django_airavata.wagtailapps.base.apps.BaseConfig',
'webpack_loader']
Installed Middleware:
['django.middleware.security.SecurityMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.common.CommonMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'django.middleware.clickjacking.XFrameOptionsMiddleware',
'django_airavata.apps.auth.middleware.authz_token_middleware',
'django_airavata.middleware.AiravataClientMiddleware',
'django_airavata.middleware.sharing_client',
'django_airavata.middleware.profile_service_client',
'django_airavata.apps.auth.middleware.gateway_groups_middleware',
'wagtail.core.middleware.SiteMiddleware',
'wagtail.contrib.redirects.middleware.RedirectMiddleware']


Traceback:  

File 
"/var/www/portals/django-pace-gatech/venv/lib64/python3.6/site-packages/django/core/handlers/exception.py"
 in inner
 41.             response = get_response(request)

File 
"/var/www/portals/django-pace-gatech/venv/lib64/python3.6/site-packages/django/core/handlers/base.py"
 in _get_response
 187.                 response = self.process_exception_by_middleware(e, 
request)

File 
"/var/www/portals/django-pace-gatech/venv/lib64/python3.6/site-packages/django/core/handlers/base.py"
 in _get_response
 185.                 response = wrapped_callback(request, *callback_args, 
**callback_kwargs)

File 
"/var/www/portals/django-pace-gatech/venv/lib64/python3.6/site-packages/django/views/decorators/cache.py"
 in _cache_controlled
 43.             response = viewfunc(request, *args, **kw)

File 
"/var/www/portals/django-pace-gatech/venv/lib64/python3.6/site-packages/wagtail/admin/urls/__init__.py"
 in wrapper
 95.             return view_func(request, *args, **kwargs)

File 
"/var/www/portals/django-pace-gatech/venv/lib64/python3.6/site-packages/wagtail/admin/decorators.py"
 in decorated_view
 28.             return view_func(request, *args, **kwargs)

File 
"/var/www/portals/django-pace-gatech/venv/lib64/python3.6/site-packages/wagtail/admin/utils.py"
 in wrapped_view_func
 139.                 return view_func(request, *args, **kwargs)

File 
"/var/www/portals/django-pace-gatech/venv/lib64/python3.6/site-packages/django/views/decorators/vary.py"
 in inner_func
 21.             response = func(*args, **kwargs)

File 
"/var/www/portals/django-pace-gatech/venv/lib64/python3.6/site-packages/wagtail/images/views/multiple.py"
 in add
 70.             image.save()

File 
"/var/www/portals/django-pace-gatech/venv/lib64/python3.6/site-packages/django/db/models/base.py"
 in save
 808.                        force_update=force_update, 
update_fields=update_fields)

File 
"/var/www/portals/django-pace-gatech/venv/lib64/python3.6/site-packages/django/db/models/base.py"
 in save_base
 838.             updated = self._save_table(raw, cls, force_insert, 
force_update, using, update_fields)

File 
"/var/www/portals/django-pace-gatech/venv/lib64/python3.6/site-packages/django/db/models/base.py"
 in _save_table
 924.             result = self._do_insert(cls._base_manager, using, fields, 
update_pk, raw)

File 
"/var/www/portals/django-pace-gatech/venv/lib64/python3.6/site-packages/django/db/models/base.py"
 in _do_insert
 963.                                using=using, raw=raw)

File 
"/var/www/portals/django-pace-gatech/venv/lib64/python3.6/site-packages/django/db/models/manager.py"
 in manager_method
 85.                 return getattr(self.get_queryset(), name)(*args, **kwargs)

File 
"/var/www/portals/django-pace-gatech/venv/lib64/python3.6/site-packages/django/db/models/query.py"
 in _insert
 1079.         return query.get_compiler(using=using).execute_sql(return_id)

File 
"/var/www/portals/django-pace-gatech/venv/lib64/python3.6/site-packages/django/db/models/sql/compiler.py"
 in execute_sql
 1111.             for sql, params in self.as_sql():

File 
"/var/www/portals/django-pace-gatech/venv/lib64/python3.6/site-packages/django/db/models/sql/compiler.py"
 in as_sql
 1064.                 for obj in self.query.objs

File 
"/var/www/portals/django-pace-gatech/venv/lib64/python3.6/site-packages/django/db/models/sql/compiler.py"
 in <listcomp>
 1064.                 for obj in self.query.objs

File 
"/var/www/portals/django-pace-gatech/venv/lib64/python3.6/site-packages/django/db/models/sql/compiler.py"
 in <listcomp>
 1063.                 [self.prepare_value(field, self.pre_save_val(field, 
obj)) for field in fields]

File 
"/var/www/portals/django-pace-gatech/venv/lib64/python3.6/site-packages/django/db/models/sql/compiler.py"
 in pre_save_val
 1013.         return field.pre_save(obj, add=True)

File 
"/var/www/portals/django-pace-gatech/venv/lib64/python3.6/site-packages/django/db/models/fields/files.py"
 in pre_save
 296.             file.save(file.name, file.file, save=False)

File 
"/var/www/portals/django-pace-gatech/venv/lib64/python3.6/site-packages/django/db/models/fields/files.py"
 in save
 94.         self.name = self.storage.save(name, content, 
max_length=self.field.max_length)

File 
"/var/www/portals/django-pace-gatech/venv/lib64/python3.6/site-packages/django/core/files/storage.py"
 in save
 54.         return self._save(name, content)

File 
"/var/www/portals/django-pace-gatech/venv/lib64/python3.6/site-packages/django/core/files/storage.py"
 in _save
 338.                     file_move_safe(content.temporary_file_path(), 
full_path)

File 
"/var/www/portals/django-pace-gatech/venv/lib64/python3.6/site-packages/django/core/files/move.py"
 in file_move_safe
 73.         copystat(old_file_name, new_file_name)

File "/usr/lib64/python3.6/shutil.py" in copystat
 229.     _copyxattr(src, dst, follow_symlinks=follow)

File "/usr/lib64/python3.6/shutil.py" in _copyxattr
 165.                 os.setxattr(dst, name, value, 
follow_symlinks=follow_symlinks)

Exception Type: PermissionError at /cms/images/multiple/add/
Exception Value: [Errno 13] Permission denied: 
'/var/www/portals/django-pace-gatech/airavata-django-portal/django_airavata/media/original_images/QuSP_Home_Converted.png'
Request information:
USER: [email protected]

GET: No GET data

POST:
csrfmiddlewaretoken = 
'Vw2ulCbFTsFqTmkOIx4jLmfNkZDydowabjUgfVjPmvNsQ2Cv3pZEe0BFeYYBfoz5'

FILES:
files[] = <TemporaryUploadedFile: QuSP Home [Converted].png (image/png)>

COOKIES:
csrftoken = 'SpFwjOylTfFOcJMr4HpTPvP0Vfp3AMJe8cxid7GvmiNQ9p48pzkei9bSPeK6CMM9'
sessionid = '0kh8p40xfy3lk654ltcsdi5tmqvu9ojb'

META:
CONTENT_LENGTH = '3234283'
CONTENT_TYPE = 'multipart/form-data; 
boundary=---------------------------171697573914734806347598434'
CONTEXT_DOCUMENT_ROOT = '/var/www/html'
CONTEXT_PREFIX = ''
CSRF_COOKIE = 'SpFwjOylTfFOcJMr4HpTPvP0Vfp3AMJe8cxid7GvmiNQ9p48pzkei9bSPeK6CMM9'
DOCUMENT_ROOT = '/var/www/html'
GATEWAY_INTERFACE = 'CGI/1.1'
HTTP_ACCEPT = 'text/html, */*; q=0.01'
HTTP_ACCEPT_ENCODING = 'gzip, deflate, br'
HTTP_ACCEPT_LANGUAGE = 'en-US,en;q=0.5'
HTTP_CONNECTION = 'keep-alive'
HTTP_COOKIE = 
'csrftoken=SpFwjOylTfFOcJMr4HpTPvP0Vfp3AMJe8cxid7GvmiNQ9p48pzkei9bSPeK6CMM9; 
sessionid=0kh8p40xfy3lk654ltcsdi5tmqvu9ojb'
HTTP_DNT = '1'
HTTP_HOST = 'pace.scigap.org'
HTTP_ORIGIN = 'https://pace.scigap.org'
HTTP_REFERER = 'https://pace.scigap.org/cms/images/multiple/add/'
HTTP_USER_AGENT = 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10.14; rv:72.0) 
Gecko/20100101 Firefox/72.0'
HTTP_X_REQUESTED_WITH = 'XMLHttpRequest'
PATH_INFO = '/cms/images/multiple/add/'
PATH_TRANSLATED = 
'/var/www/portals/django-pace-gatech/airavata-django-portal/django_airavata/wsgi.py/cms/images/multiple/add/'
QUERY_STRING = ''
REMOTE_ADDR = '149.160.175.252'
REMOTE_PORT = '55101'
REQUEST_METHOD = 'POST'
REQUEST_SCHEME = 'https'
REQUEST_URI = '/cms/images/multiple/add/'
SCRIPT_FILENAME = 
'/var/www/portals/django-pace-gatech/airavata-django-portal/django_airavata/wsgi.py'
SCRIPT_NAME = ''
SERVER_ADDR = '156.56.104.84'
SERVER_ADMIN = 'root@localhost'
SERVER_NAME = 'pace.scigap.org'
SERVER_PORT = '443'
SERVER_PROTOCOL = 'HTTP/1.1'
SERVER_SIGNATURE = ''
SERVER_SOFTWARE = 'Apache/2.4.6 (CentOS) OpenSSL/1.0.2k-fips mod_wsgi/4.5.17 
Python/3.6 mod_fcgid/2.3.9 PHP/5.4.16'
SSL_TLS_SNI = 'pace.scigap.org'
UNIQUE_ID = 'XjBPVuSJfcOT5H69AsYsXAAAAAM'
apache.version = '(2, 4, 6)'
mod_wsgi.application_group = 'pace.scigap.org|'
mod_wsgi.callable_object = 'application'
mod_wsgi.daemon_connects = '1'
mod_wsgi.daemon_restarts = '0'
mod_wsgi.daemon_start = '1580224342456103'
mod_wsgi.enable_sendfile = '0'
mod_wsgi.handler_script = ''
mod_wsgi.ignore_activity = '0'
mod_wsgi.listener_host = ''
mod_wsgi.listener_port = '443'
mod_wsgi.path_info = '/cms/images/multiple/add/'
mod_wsgi.process_group = 'pace.scigap.org'
mod_wsgi.queue_start = '1580224342455926'
mod_wsgi.request_handler = 'wsgi-script'
mod_wsgi.request_id = 'XjBPVuSJfcOT5H69AsYsXAAAAAM'
mod_wsgi.request_start = '1580224342455651'
mod_wsgi.script_name = ''
mod_wsgi.script_reloading = '1'
mod_wsgi.script_start = '1580224342456211'
mod_wsgi.thread_id = 7
mod_wsgi.thread_requests = 3
mod_wsgi.total_requests = 16
mod_wsgi.version = '(4, 5, 17)'
wsgi.errors = <_io.TextIOWrapper name='<wsgi.errors>' encoding='utf-8'>
wsgi.file_wrapper = ''
wsgi.input = <mod_wsgi.Input object at 0x7fe426d977a0>
wsgi.multiprocess = True
wsgi.multithread = True
wsgi.run_once = False
wsgi.url_scheme = 'https'
wsgi.version = '(1, 0)'

Settings:
Using settings module django_airavata.settings
ABSOLUTE_URL_OVERRIDES = {}
ADMINS = [('SciGaP Errors', '[email protected]')]
AIRAVATA_API_HOST = '********************'
AIRAVATA_API_PORT = '********************'
AIRAVATA_API_SECURE = '********************'
ALLOWED_HOSTS = ['pace.scigap.org']
APPEND_SLASH = True
AUTHENTICATION_BACKENDS = ['django_airavata.apps.auth.backends.KeycloakBackend']
AUTHENTICATION_OPTIONS = {'password': '********************', 'external': 
[{'idp_alias': 'cilogon', 'name': 'Existing Institution Credentials', 'logo': 
'images/cilogon-logo-24x24-b.png'}]}
AUTH_PASSWORD_VALIDATORS = '********************'
AUTH_USER_MODEL = 'auth.User'
BASE_DIR = '/var/www/portals/django-pace-gatech/airavata-django-portal'
CACHES = {'default': {'BACKEND': 
'django.core.cache.backends.locmem.LocMemCache'}}
CACHE_MIDDLEWARE_ALIAS = 'default'
CACHE_MIDDLEWARE_KEY_PREFIX = '********************'
CACHE_MIDDLEWARE_SECONDS = 600
CSRF_COOKIE_AGE = 31449600
CSRF_COOKIE_DOMAIN = None
CSRF_COOKIE_HTTPONLY = False
CSRF_COOKIE_NAME = 'csrftoken'
CSRF_COOKIE_PATH = '/'
CSRF_COOKIE_SECURE = False
CSRF_FAILURE_VIEW = 'django.views.csrf.csrf_failure'
CSRF_HEADER_NAME = 'HTTP_X_CSRFTOKEN'
CSRF_TRUSTED_ORIGINS = []
CSRF_USE_SESSIONS = False
CUSTOM_DJANGO_APPS = []
DATABASES = {'default': {'ENGINE': 'django.db.backends.mysql', 'NAME': 
'django_pace-gatech', 'HOST': '156.56.104.11', 'USER': 'django', 'PASSWORD': 
'********************', 'ATOMIC_REQUESTS': False, 'AUTOCOMMIT': True, 
'CONN_MAX_AGE': 0, 'OPTIONS': {}, 'TIME_ZONE': None, 'PORT': '', 'TEST': 
{'CHARSET': None, 'COLLATION': None, 'NAME': None, 'MIRROR': None}}, 'OPTIONS': 
{'init_command': 'SET 
default_storage_engine=INNODB,collation_connection=utf8_bin', 
'ATOMIC_REQUESTS': False, 'AUTOCOMMIT': True, 'ENGINE': 
'django.db.backends.dummy', 'CONN_MAX_AGE': 0, 'OPTIONS': {}, 'TIME_ZONE': 
None, 'NAME': '', 'USER': '', 'PASSWORD': '********************', 'HOST': '', 
'PORT': '', 'TEST': {'CHARSET': None, 'COLLATION': None, 'NAME': None, 
'MIRROR': None}}}
DATABASE_ROUTERS = []
DATA_UPLOAD_MAX_MEMORY_SIZE = 2621440
DATA_UPLOAD_MAX_NUMBER_FIELDS = 1000
DATETIME_FORMAT = 'N j, Y, P'
DATETIME_INPUT_FORMATS = ['%Y-%m-%d %H:%M:%S', '%Y-%m-%d %H:%M:%S.%f', 
'%Y-%m-%d %H:%M', '%Y-%m-%d', '%m/%d/%Y %H:%M:%S', '%m/%d/%Y %H:%M:%S.%f', 
'%m/%d/%Y %H:%M', '%m/%d/%Y', '%m/%d/%y %H:%M:%S', '%m/%d/%y %H:%M:%S.%f', 
'%m/%d/%y %H:%M', '%m/%d/%y']
DATE_FORMAT = 'N j, Y'
DATE_INPUT_FORMATS = ['%Y-%m-%d', '%m/%d/%Y', '%m/%d/%y', '%b %d %Y', '%b %d, 
%Y', '%d %b %Y', '%d %b, %Y', '%B %d %Y', '%B %d, %Y', '%d %B %Y', '%d %B, %Y']
DEBUG = False
DEBUG_PROPAGATE_EXCEPTIONS = False
DECIMAL_SEPARATOR = '.'
DEFAULT_CHARSET = 'utf-8'
DEFAULT_CONTENT_TYPE = 'text/html'
DEFAULT_EXCEPTION_REPORTER_FILTER = 
'django.views.debug.SafeExceptionReporterFilter'
DEFAULT_FILE_STORAGE = 'django.core.files.storage.FileSystemStorage'
DEFAULT_FROM_EMAIL = 'webmaster@localhost'
DEFAULT_INDEX_TABLESPACE = ''
DEFAULT_TABLESPACE = ''
DISALLOWED_USER_AGENTS = []
EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'
EMAIL_HOST = 'smtp.gmail.com'
EMAIL_HOST_PASSWORD = '********************'
EMAIL_HOST_USER = '[email protected]'
EMAIL_PORT = 587
EMAIL_SSL_CERTFILE = None
EMAIL_SSL_KEYFILE = '********************'
EMAIL_SUBJECT_PREFIX = '[Django] '
EMAIL_TIMEOUT = None
EMAIL_USE_LOCALTIME = False
EMAIL_USE_SSL = False
EMAIL_USE_TLS = True
FILE_CHARSET = 'utf-8'
FILE_UPLOAD_DIRECTORY_PERMISSIONS = 511
FILE_UPLOAD_HANDLERS = 
['django.core.files.uploadhandler.MemoryFileUploadHandler', 
'django_airavata.uploadhandler.MaxFileSizeTemporaryFileUploadHandler']
FILE_UPLOAD_MAX_FILE_SIZE = 67108864
FILE_UPLOAD_MAX_MEMORY_SIZE = 2621440
FILE_UPLOAD_PERMISSIONS = None
FILE_UPLOAD_TEMP_DIR = '/var/www/portals/gateway-user-data/pace-gatech/tmp/'
FIRST_DAY_OF_WEEK = 0
FIXTURE_DIRS = []
FORCE_SCRIPT_NAME = None
FORMAT_MODULE_PATH = None
FORM_RENDERER = 'django.forms.renderers.DjangoTemplates'
GATEWAY_DATA_STORE_DIR = '/var/www/portals/gateway-user-data/pace-gatech'
GATEWAY_DATA_STORE_HOSTNAME = 'gf4.ucs.indiana.edu'
GATEWAY_DATA_STORE_RESOURCE_ID = 
'gf4.ucs.indiana.edu_61552681-96f0-462a-a36c-a62a010bffc6'
GATEWAY_ID = 'pace-gatech'
HIDDEN_AIRAVATA_APPS = ['django_airavata_dataparsers']
IGNORABLE_404_URLS = []
INSTALLED_APPS = ['django_airavata.apps.admin.apps.AdminConfig', 
'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 
'django.contrib.sessions', 'django.contrib.messages', 
'django.contrib.staticfiles', 'django_airavata.apps.auth.apps.AuthConfig', 
'django_airavata.apps.workspace.apps.WorkspaceConfig', 'rest_framework', 
'django_airavata.apps.api.apps.ApiConfig', 
'django_airavata.apps.groups.apps.GroupsConfig', 
'django_airavata.apps.dataparsers.apps.DataParsersConfig', 
'django.contrib.humanize', 'wagtail.contrib.forms', 
'wagtail.contrib.redirects', 'wagtail.embeds', 'wagtail.sites', 
'wagtail.users', 'wagtail.snippets', 'wagtail.documents', 'wagtail.images', 
'wagtail.search', 'wagtail.admin', 'wagtail.core', 'modelcluster', 'taggit', 
'wagtailfontawesome', 'django_airavata.wagtailapps.base.apps.BaseConfig', 
'webpack_loader']
INTERNAL_IPS = ['127.0.0.1']
KEYCLOAK_AUTHORIZE_URL = '********************'
KEYCLOAK_CA_CERTFILE = '********************'
KEYCLOAK_CLIENT_ID = '********************'
KEYCLOAK_CLIENT_SECRET = '********************'
KEYCLOAK_LOGOUT_URL = '********************'
KEYCLOAK_TOKEN_URL = '********************'
KEYCLOAK_USERINFO_URL = '********************'
KEYCLOAK_VERIFY_SSL = '********************'
LANGUAGES = [('af', 'Afrikaans'), ('ar', 'Arabic'), ('ast', 'Asturian'), ('az', 
'Azerbaijani'), ('bg', 'Bulgarian'), ('be', 'Belarusian'), ('bn', 'Bengali'), 
('br', 'Breton'), ('bs', 'Bosnian'), ('ca', 'Catalan'), ('cs', 'Czech'), ('cy', 
'Welsh'), ('da', 'Danish'), ('de', 'German'), ('dsb', 'Lower Sorbian'), ('el', 
'Greek'), ('en', 'English'), ('en-au', 'Australian English'), ('en-gb', 
'British English'), ('eo', 'Esperanto'), ('es', 'Spanish'), ('es-ar', 
'Argentinian Spanish'), ('es-co', 'Colombian Spanish'), ('es-mx', 'Mexican 
Spanish'), ('es-ni', 'Nicaraguan Spanish'), ('es-ve', 'Venezuelan Spanish'), 
('et', 'Estonian'), ('eu', 'Basque'), ('fa', 'Persian'), ('fi', 'Finnish'), 
('fr', 'French'), ('fy', 'Frisian'), ('ga', 'Irish'), ('gd', 'Scottish 
Gaelic'), ('gl', 'Galician'), ('he', 'Hebrew'), ('hi', 'Hindi'), ('hr', 
'Croatian'), ('hsb', 'Upper Sorbian'), ('hu', 'Hungarian'), ('ia', 
'Interlingua'), ('id', 'Indonesian'), ('io', 'Ido'), ('is', 'Icelandic'), 
('it', 'Italian'), ('ja', 'Japanese'), ('ka', 'Georgian'), ('kk', 'Kazakh'), 
('km', 'Khmer'), ('kn', 'Kannada'), ('ko', 'Korean'), ('lb', 'Luxembourgish'), 
('lt', 'Lithuanian'), ('lv', 'Latvian'), ('mk', 'Macedonian'), ('ml', 
'Malayalam'), ('mn', 'Mongolian'), ('mr', 'Marathi'), ('my', 'Burmese'), ('nb', 
'Norwegian Bokmål'), ('ne', 'Nepali'), ('nl', 'Dutch'), ('nn', 'Norwegian 
Nynorsk'), ('os', 'Ossetic'), ('pa', 'Punjabi'), ('pl', 'Polish'), ('pt', 
'Portuguese'), ('pt-br', 'Brazilian Portuguese'), ('ro', 'Romanian'), ('ru', 
'Russian'), ('sk', 'Slovak'), ('sl', 'Slovenian'), ('sq', 'Albanian'), ('sr', 
'Serbian'), ('sr-latn', 'Serbian Latin'), ('sv', 'Swedish'), ('sw', 'Swahili'), 
('ta', 'Tamil'), ('te', 'Telugu'), ('th', 'Thai'), ('tr', 'Turkish'), ('tt', 
'Tatar'), ('udm', 'Udmurt'), ('uk', 'Ukrainian'), ('ur', 'Urdu'), ('vi', 
'Vietnamese'), ('zh-hans', 'Simplified Chinese'), ('zh-hant', 'Traditional 
Chinese')]
LANGUAGES_BIDI = ['he', 'ar', 'fa', 'ur']
LANGUAGE_CODE = 'en-us'
LANGUAGE_COOKIE_AGE = None
LANGUAGE_COOKIE_DOMAIN = None
LANGUAGE_COOKIE_NAME = 'django_language'
LANGUAGE_COOKIE_PATH = '/'
LOCALE_PATHS = []
LOGGING = {'version': 1, 'disable_existing_loggers': False, 'filters': 
{'require_debug_false': {'()': 'django.utils.log.RequireDebugFalse'}, 
'require_debug_true': {'()': 'django.utils.log.RequireDebugTrue'}}, 
'formatters': {'verbose': {'format': '[%(asctime)s %(name)s:%(lineno)d 
%(levelname)s] %(message)s'}}, 'handlers': {'console': {'class': 
'logging.StreamHandler', 'formatter': 'verbose'}, 'mail_admins': {'filters': 
['require_debug_false'], 'level': 'ERROR', 'class': 
'django.utils.log.AdminEmailHandler', 'include_html': True}}, 'loggers': 
{'django_airavata': {'handlers': ['console', 'mail_admins'], 'level': 'DEBUG'}, 
'root': {'handlers': ['console'], 'level': 'WARNING'}}}
LOGGING_CONFIG = 'logging.config.dictConfig'
LOGIN_REDIRECT_URL = 'django_airavata_workspace:dashboard'
LOGIN_URL = 'django_airavata_auth:login'
LOGOUT_REDIRECT_URL = '/'
MANAGERS = []
MEDIA_ROOT = 
'/var/www/portals/django-pace-gatech/airavata-django-portal/django_airavata/media'
MEDIA_URL = '/media/'
MESSAGE_STORAGE = 'django.contrib.messages.storage.fallback.FallbackStorage'
MIDDLEWARE = ['django.middleware.security.SecurityMiddleware', 
'django.contrib.sessions.middleware.SessionMiddleware', 
'django.middleware.common.CommonMiddleware', 
'django.middleware.csrf.CsrfViewMiddleware', 
'django.contrib.auth.middleware.AuthenticationMiddleware', 
'django.contrib.messages.middleware.MessageMiddleware', 
'django.middleware.clickjacking.XFrameOptionsMiddleware', 
'django_airavata.apps.auth.middleware.authz_token_middleware', 
'django_airavata.middleware.AiravataClientMiddleware', 
'django_airavata.middleware.sharing_client', 
'django_airavata.middleware.profile_service_client', 
'django_airavata.apps.auth.middleware.gateway_groups_middleware', 
'wagtail.core.middleware.SiteMiddleware', 
'wagtail.contrib.redirects.middleware.RedirectMiddleware']
MIDDLEWARE_CLASSES = ['django.middleware.common.CommonMiddleware', 
'django.middleware.csrf.CsrfViewMiddleware']
MIGRATION_MODULES = {}
MONTH_DAY_FORMAT = 'F j'
NUMBER_GROUPING = 0
OUTPUT_VIEW_PROVIDERS = {}
PASSWORD_HASHERS = '********************'
PASSWORD_RESET_TIMEOUT_DAYS = '********************'
PGA_URL = None
PORTAL_ADMINS = [('SGRC', '[email protected]'), ('Semir Sarajlic', 
'[email protected]')]
PORTAL_TITLE = 'PACE Gateway'
PREPEND_WWW = False
PROFILE_SERVICE_HOST = 'scigap02.sciencegateways.iu.edu'
PROFILE_SERVICE_PORT = 8962
PROFILE_SERVICE_SECURE = False
REST_FRAMEWORK = {'DEFAULT_AUTHENTICATION_CLASSES': 
('rest_framework.authentication.SessionAuthentication',), 
'DEFAULT_PERMISSION_CLASSES': ('rest_framework.permissions.IsAuthenticated',), 
'EXCEPTION_HANDLER': 
'django_airavata.apps.api.exceptions.custom_exception_handler'}
ROOT_URLCONF = 'django_airavata.urls'
SECRET_KEY = '********************'
SECURE_BROWSER_XSS_FILTER = False
SECURE_CONTENT_TYPE_NOSNIFF = False
SECURE_HSTS_INCLUDE_SUBDOMAINS = False
SECURE_HSTS_PRELOAD = False
SECURE_HSTS_SECONDS = 0
SECURE_PROXY_SSL_HEADER = None
SECURE_REDIRECT_EXEMPT = []
SECURE_SSL_HOST = None
SECURE_SSL_REDIRECT = False
SERVER_EMAIL = '[email protected]'
SESSION_CACHE_ALIAS = 'default'
SESSION_COOKIE_AGE = 1209600
SESSION_COOKIE_DOMAIN = None
SESSION_COOKIE_HTTPONLY = True
SESSION_COOKIE_NAME = 'sessionid'
SESSION_COOKIE_PATH = '/'
SESSION_COOKIE_SECURE = False
SESSION_ENGINE = 'django.contrib.sessions.backends.db'
SESSION_EXPIRE_AT_BROWSER_CLOSE = False
SESSION_FILE_PATH = None
SESSION_SAVE_EVERY_REQUEST = False
SESSION_SERIALIZER = 'django.contrib.sessions.serializers.JSONSerializer'
SETTINGS_MODULE = 'django_airavata.settings'
SHARING_API_HOST = '********************'
SHARING_API_PORT = '********************'
SHARING_API_SECURE = '********************'
SHORT_DATETIME_FORMAT = 'm/d/Y P'
SHORT_DATE_FORMAT = 'm/d/Y'
SIGNING_BACKEND = 'django.core.signing.TimestampSigner'
SILENCED_SYSTEM_CHECKS = []
STATICFILES_DIRS = 
['/var/www/portals/django-pace-gatech/airavata-django-portal/django_airavata/static']
STATICFILES_FINDERS = ['django.contrib.staticfiles.finders.FileSystemFinder', 
'django.contrib.staticfiles.finders.AppDirectoriesFinder']
STATICFILES_STORAGE = 'django.contrib.staticfiles.storage.StaticFilesStorage'
STATIC_ROOT = '/var/www/portals/django-pace-gatech/static/'
STATIC_URL = '/static/'
TEMPLATES = [{'BACKEND': 'django.template.backends.django.DjangoTemplates', 
'DIRS': 
['/var/www/portals/django-pace-gatech/airavata-django-portal/django_airavata/templates'],
 'APP_DIRS': True, 'OPTIONS': {'context_processors': 
['django.template.context_processors.debug', 
'django.template.context_processors.request', 
'django.contrib.auth.context_processors.auth', 
'django.contrib.messages.context_processors.messages', 
'django_airavata.context_processors.airavata_app_registry', 
'django_airavata.context_processors.custom_app_registry', 
'django_airavata.context_processors.get_notifications', 
'django_airavata.context_processors.user_session_data']}}]
TEST_NON_SERIALIZED_APPS = []
TEST_RUNNER = 'django.test.runner.DiscoverRunner'
THOUSAND_SEPARATOR = ','
THRIFT_CLIENT_POOL_KEEPALIVE = 5
TIME_FORMAT = 'P'
TIME_INPUT_FORMATS = ['%H:%M:%S', '%H:%M:%S.%f', '%H:%M']
TIME_ZONE = 'UTC'
TUS_DATA_DIR = '/var/www/portals/gateway-user-data/tus-temp-dir'
TUS_ENDPOINT = 'https://tus.airavata.org/files/'
USE_ETAGS = False
USE_I18N = True
USE_L10N = True
USE_THOUSAND_SEPARATOR = False
USE_TZ = True
USE_X_FORWARDED_HOST = False
USE_X_FORWARDED_PORT = False
WAGTAILIMAGES_JPEG_QUALITY = 100
WAGTAIL_SITE_NAME = 'Django Airavata Portal'
WEBPACK_LOADER = {'COMMON': {'BUNDLE_DIR_NAME': 'common/dist/', 'STATS_FILE': 
'/var/www/portals/django-pace-gatech/airavata-django-portal/django_airavata/static/common/dist/webpack-stats.json'},
 'ADMIN': {'BUNDLE_DIR_NAME': 'django_airavata_admin/dist/', 'STATS_FILE': 
'/var/www/portals/django-pace-gatech/airavata-django-portal/django_airavata/apps/admin/static/django_airavata_admin/dist/webpack-stats.json'},
 'DATAPARSERS': {'BUNDLE_DIR_NAME': 'django_airavata_dataparsers/dist/', 
'STATS_FILE': 
'/var/www/portals/django-pace-gatech/airavata-django-portal/django_airavata/apps/dataparsers/static/django_airavata_dataparsers/dist/webpack-stats.json'},
 'GROUPS': {'BUNDLE_DIR_NAME': 'django_airavata_groups/dist/', 'STATS_FILE': 
'/var/www/portals/django-pace-gatech/airavata-django-portal/django_airavata/apps/groups/static/django_airavata_groups/dist/webpack-stats.json'},
 'WORKSPACE': {'BUNDLE_DIR_NAME': 'django_airavata_workspace/dist/', 
'STATS_FILE': 
'/var/www/portals/django-pace-gatech/airavata-django-portal/django_airavata/apps/workspace/static/django_airavata_workspace/dist/webpack-stats.json'}}
WSGI_APPLICATION = 'django_airavata.wsgi.application'
X_FRAME_OPTIONS = 'SAMEORIGIN'
YEAR_MONTH_FORMAT = 'F Y'


{noformat}

> Wagtail: large image uploads fail with SELinux relabelfrom error
> ----------------------------------------------------------------
>
>                 Key: AIRAVATA-3291
>                 URL: https://issues.apache.org/jira/browse/AIRAVATA-3291
>             Project: Airavata
>          Issue Type: Bug
>          Components: Django Portal
>            Reporter: Marcus Christie
>            Assignee: Marcus Christie
>            Priority: Major
>
> {noformat}
> Jan 28 10:12:27 gridfarm004 setroubleshoot: SELinux is preventing httpd from 
> relabelfrom access on the file QuSP_Home_Converted.png. For complete SELinux 
> messages run: sealert -l 7097f275-0c78-47c7-bc55-be30bca3f3a8
> Jan 28 10:12:27 gridfarm004 python: SELinux is preventing httpd from 
> relabelfrom access on the file QuSP_Home_Converted.png.#012#012*****  Plugin 
> catchall (100. confidence) suggests   **************************#012#012If 
> you believe that httpd should be allowed relabelfrom access on the 
> QuSP_Home_Converted.png file by default.#012Then you should report this as a 
> bug.#012You can generate a local policy module to allow this 
> access.#012Do#012allow this access for now by executing:#012# ausearch -c 
> 'httpd' --raw | audit2allow -M my-httpd#012# semodule -i my-httpd.pp#012
> {noformat}
> {noformat}
> [root@gridfarm004 ~]# sealert -l 7097f275-0c78-47c7-bc55-be30bca3f3a8
> SELinux is preventing httpd from relabelfrom access on the file 
> QuSP_Home_Converted.png.
> *****  Plugin catchall (100. confidence) suggests   **************************
> If you believe that httpd should be allowed relabelfrom access on the 
> QuSP_Home_Converted.png file by default.
> Then you should report this as a bug.
> You can generate a local policy module to allow this access.
> Do
> allow this access for now by executing:
> # ausearch -c 'httpd' --raw | audit2allow -M my-httpd
> # semodule -i my-httpd.pp
> Additional Information:
> Source Context                system_u:system_r:httpd_t:s0
> Target Context                system_u:object_r:httpd_sys_rw_content_t:s0
> Target Objects                QuSP_Home_Converted.png [ file ]
> Source                        httpd
> Source Path                   httpd
> Port                          <Unknown>
> Host                          gridfarm004.ucs.indiana.edu
> Source RPM Packages           
> Target RPM Packages           
> Policy RPM                    selinux-policy-3.13.1-252.el7_7.6.noarch
> Selinux Enabled               True
> Policy Type                   targeted
> Enforcing Mode                Enforcing
> Host Name                     gridfarm004.ucs.indiana.edu
> Platform                      Linux gridfarm004.ucs.indiana.edu
>                               3.10.0-957.10.1.el7.x86_64 #1 SMP Mon Mar 18
>                               15:06:45 UTC 2019 x86_64 x86_64
> Alert Count                   28
> First Seen                    2019-12-07 12:53:56 EST
> Last Seen                     2020-01-28 10:12:22 EST
> Local ID                      7097f275-0c78-47c7-bc55-be30bca3f3a8
> Raw Audit Messages
> type=AVC msg=audit(1580224342.756:7108484): avc:  denied  { relabelfrom } for 
>  pid=9646 comm="httpd" name="QuSP_Home_Converted.png" dev="dm-1" ino=71079407 
> scontext=system_u:system_r:httpd_t:s0 
> tcontext=system_u:object_r:httpd_sys_rw_content_t:s0 tclass=file permissive=0
> Hash: httpd,httpd_t,httpd_sys_rw_content_t,file,relabelfrom
> {noformat}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to