SandboxStoreHandler
- SandboxHandler is the implementation of the Sandbox service
in the DISET framework
SandboxStore
{
Port = 9196
LocalSE = ProductionSandboxSE
MaxThreads = 200
toClientMaxThreads = 100
Backend = local
MaxSandboxSizeMiB = 10
SandboxPrefix = Sandbox
BasePath = /opt/dirac/storage/sandboxes
DelayedExternalDeletion = True
Authorization
{
Default = authenticated
FileTransfer
{
Default = authenticated
}
}
}
- class DIRAC.WorkloadManagementSystem.Service.SandboxStoreHandler.SandboxStoreHandler(handlerInitDict, trid)
Bases:
SandboxStoreHandlerMixin
,RequestHandler
- __init__(handlerInitDict, trid)
Constructor
- Parameters:
handlerInitDict (dictionary) – Information vars for the service
trid (object) – Transport to use
- auth_ping = ['all']
- auth_refreshConfiguration = ['CSAdministrator']
- auth_whoami = ['all']
- export_assignSandboxesToEntities(enDict, ownerName='', ownerGroup='', entitySetup=False)
Assign sandboxes to jobs. Expects a dict of { entityId : [ ( SB, SBType ), … ] }
- static export_echo(data)
This method is used for testing performance of the service
- Parameters:
data (str) – data to be sent back to the caller
- Returns:
S_OK, Value is the input data
- export_getFreeDiskSpace()
Get the free disk space of the storage element If no size is specified, terabytes will be used by default.
- export_getSandboxesAssignedToEntity(entityId, entitySetup=False)
Get the sandboxes associated to a job and the association type
- export_getTotalDiskSpace()
Get the total disk space of the storage element If no size is specified, terabytes will be used by default.
- export_ping()
- static export_refreshConfiguration(fromMaster)
Force refreshing the configuration data
- Parameters:
fromMaster (bool) – flag to refresh from the controller configuration service
- export_unassignEntities(entitiesList, entitiesSetup=False)
Unassign a list of jobs
- export_whoami()
A simple whoami, returns all credential dictionary, except certificate chain object.
- classmethod getCSOption(optionName, defaultValue=False)
Get an option from the CS section of the services
- Returns:
Value for serviceSection/optionName in the CS being defaultValue the default
- getRemoteAddress()
Get the address of the remote peer.
- Returns:
Address of remote peer.
- getRemoteCredentials()
Get the credentials of the remote peer.
- Returns:
Credentials dictionary of remote peer.
- initialize()
Initialize this instance of the handler (to be overwritten)
- classmethod initializeHandler(serviceInfoDict)
Initialization of DB object
- initializeRequest()
- purgeUnusedSandboxes()
- srv_disconnect(trid=None)
- classmethod srv_disconnectClient(trid)
- srv_getActionTuple()
- classmethod srv_getCSOption(optionName, defaultValue=False)
Get an option from the CS section of the services
- Returns:
Value for serviceSection/optionName in the CS being defaultValue the default
- srv_getClientSetup()
- srv_getClientVO()
- srv_getClientVersion()
- srv_getFormattedRemoteCredentials()
- classmethod srv_getMonitor()
- srv_getRemoteAddress()
Get the address of the remote peer.
- Returns:
Address of remote peer.
- srv_getRemoteCredentials()
Get the credentials of the remote peer.
- Returns:
Credentials dictionary of remote peer.
- classmethod srv_getServiceName()
- srv_getTransportID()
- classmethod srv_getURL()
- classmethod srv_msgCreate(msgName)
- srv_msgReply(msgObj)
- classmethod srv_msgSend(trid, msgObj)
- transfer_bulkFromClient(fileId, token, _fileSize, fileHelper)
Receive files packed into a tar archive by the fileHelper logic. token is used for access rights confirmation.
- transfer_bulkToClient(bulkId, token, fileHelper)
- transfer_fromClient(fileId, token, fileSize, fileHelper)
Receive a file as a sandbox
- transfer_listBulk(bulkId, token, fileHelper)
- transfer_toClient(fileID, token, fileHelper)
Method to send files to clients. fileID is the local file name in the SE. token is used for access rights confirmation.
- types_assignSandboxesToEntities = [<class 'dict'>]
- types_echo = [<class 'str'>]
- types_getFreeDiskSpace = []
- types_getSandboxesAssignedToEntity = [<class 'str'>]
- types_getTotalDiskSpace = []
- types_ping = []
- types_refreshConfiguration = [<class 'bool'>]
- types_unassignEntities = [(<class 'list'>, <class 'tuple'>)]
- types_whoami = []
- class DIRAC.WorkloadManagementSystem.Service.SandboxStoreHandler.SandboxStoreHandlerMixin
Bases:
object
- export_assignSandboxesToEntities(enDict, ownerName='', ownerGroup='', entitySetup=False)
Assign sandboxes to jobs. Expects a dict of { entityId : [ ( SB, SBType ), … ] }
- export_getFreeDiskSpace()
Get the free disk space of the storage element If no size is specified, terabytes will be used by default.
- export_getSandboxesAssignedToEntity(entityId, entitySetup=False)
Get the sandboxes associated to a job and the association type
- export_getTotalDiskSpace()
Get the total disk space of the storage element If no size is specified, terabytes will be used by default.
- export_unassignEntities(entitiesList, entitiesSetup=False)
Unassign a list of jobs
- classmethod initializeHandler(serviceInfoDict)
Initialization of DB object
- initializeRequest()
- purgeUnusedSandboxes()
- transfer_bulkFromClient(fileId, token, _fileSize, fileHelper)
Receive files packed into a tar archive by the fileHelper logic. token is used for access rights confirmation.
- transfer_fromClient(fileId, token, fileSize, fileHelper)
Receive a file as a sandbox
- transfer_toClient(fileID, token, fileHelper)
Method to send files to clients. fileID is the local file name in the SE. token is used for access rights confirmation.
- types_assignSandboxesToEntities = [<class 'dict'>]
- types_getFreeDiskSpace = []
- types_getSandboxesAssignedToEntity = [<class 'str'>]
- types_getTotalDiskSpace = []
- types_unassignEntities = [(<class 'list'>, <class 'tuple'>)]