Merge branch 'release_19.09' into release_20.01

This commit is contained in:
mvdbeek
2019-12-30 10:00:01 +01:00
6 changed files with 26 additions and 8 deletions
@@ -34,6 +34,8 @@ class LocalShell(BaseShellExec):
True
>>> exec_result.stdout.strip() == u'Hello World'
True
>>> exec_result.returncode
0
>>> exec_result = exec_python("import time; time.sleep(10)", timeout=1, timeout_check_interval=.1)
>>> exec_result.stdout == u''
True
@@ -63,6 +65,8 @@ class LocalShell(BaseShellExec):
kill_pg(p.pid)
return Bunch(stdout=u'', stderr=TIMEOUT_ERROR_MESSAGE, returncode=TIMEOUT_RETURN_CODE)
outf.seek(0)
# Need to poll once to establish return code
p.poll()
return Bunch(stdout=_read_str(outf), stderr=_read_str(p.stderr), returncode=p.returncode)
+1 -6
View File
@@ -106,12 +106,7 @@ class UserManager(base.ModelManager, deletable.PurgableManagerMixin):
# TODO:?? flush needed for permissions below? If not, make optional
except exc.IntegrityError as db_err:
raise exceptions.Conflict(str(db_err))
# can throw an sqlalx.IntegrityError if username not unique
self.app.security_agent.create_private_user_role(user)
# We set default user permissions, before we log in and set the default history permissions
if hasattr(self.app.config, "new_user_dataset_access_role_default_private"):
permissions = self.app.config.new_user_dataset_access_role_default_private
self.app.security_agent.user_set_default_permissions(user, default_access_private=permissions)
self.app.security_agent.create_user_role(user, self.app)
return user
def delete(self, user, flush=True):
+12
View File
@@ -656,6 +656,18 @@ class GalaxyRBACAgent(RBACAgent):
self.sa_session.flush()
return assoc
def create_user_role(self, user, app):
# Create private user role if necessary
if not self.get_private_user_role(user):
self.create_private_user_role(user)
# Create default user permissions if necessary
if not user.default_permissions:
if hasattr(app.config, "new_user_dataset_access_role_default_private"):
permissions = app.config.new_user_dataset_access_role_default_private
self.user_set_default_permissions(user, default_access_private=permissions)
else:
self.user_set_default_permissions(user, history=True, dataset=True)
def create_private_user_role(self, user):
# Create private role
role = self.model.Role(name=user.email, description='Private Role for ' + user.email, type=self.model.Role.types.PRIVATE)
+1
View File
@@ -714,6 +714,7 @@ class GalaxyWebTransaction(base.DefaultWebTransaction,
- add the disk usage of the current session to the user's total disk usage
"""
self.user_checks(user)
self.app.security_agent.create_user_role(user, self.app)
# Set the previous session
prev_galaxy_session = self.galaxy_session
prev_galaxy_session.is_valid = False
+7 -1
View File
@@ -6,7 +6,13 @@ History
.. to_doc
---------------------
19.9.1.dev0
19.9.2.dev0
---------------------
---------------------
19.9.1 (2019-12-28)
---------------------
@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
__version__ = '19.9.1.dev0'
__version__ = '19.9.2.dev0'
PROJECT_NAME = "galaxy-tool-util"
PROJECT_OWNER = PROJECT_USERAME = "galaxyproject"