mirror of
https://github.com/galaxyproject/galaxy.git
synced 2026-09-24 16:30:27 +08:00
Merge branch 'release_19.09' into release_20.01
This commit is contained in:
@@ -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)
|
||||
|
||||
|
||||
|
||||
@@ -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):
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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"
|
||||
|
||||
Reference in New Issue
Block a user