base#

CMS related base tasks.

Classes:

CrabWorkflow(*args, **kwargs)

class CrabWorkflow(*args, **kwargs)[source]#

Bases: AnalysisTask, CrabWorkflow, RemoteWorkflowMixin

Attributes:

crab_memory

exclude_params_branch

crab_forward_env_variables

reqs

exclude_index

exclude_params_crab_workflow

exclude_params_index

exclude_params_remote_workflow

exclude_params_repr

exclude_params_repr_empty

exclude_params_req

exclude_params_req_get

exclude_params_req_set

exclude_params_sandbox

exclude_params_workflow

Methods:

crab_stageout_location()

Hook to define both the "Site.storageSite" and "Data.outLFNDirBase" settings in a 2-tuple, i.e., the name of the storage site to use and the base directory for crab's own output staging.

crab_output_directory()

Hook to define the location of submission output files, such as the json files containing job data.

crab_bootstrap_file()

Hook to define the location of an optional, so-called bootstrap file that is sent alongside jobs and called prior to the actual job payload.

crab_workflow_requires()

Hook to define requirements for the workflow itself and that need to be resolved before any submission can happen.

crab_job_config(config, submit_jobs)

Hook to inject custom settings into the job config, which is an instance of the Config class defined inside the job manager.

crab_destination_info(info)

Hook to add additional information behind each job status query line by extending an info dictionary whose values will be shown separated by comma.

crab_memory = <law.parameter.BytesParameter object>#
exclude_params_branch = {'acceptance', 'branches', 'cancel_jobs', 'cleanup_jobs', 'crab_memory', 'ignore_submission', 'job_workers', 'no_poll', 'parallel_jobs', 'pilot', 'poll_fails', 'poll_interval', 'retries', 'shuffle_jobs', 'submission_threads', 'tasks_per_job', 'tolerance', 'transfer_logs', 'walltime'}#
crab_forward_env_variables = {'CF_CERN_USER': 'cf_cern_user', 'CF_STORE_NAME': 'cf_store_name'}#
reqs = {'BundleBashSandbox': <class 'columnflow.tasks.framework.remote.BundleBashSandbox'>, 'BundleCMSSWSandbox': <class 'columnflow.tasks.framework.remote.BundleCMSSWSandbox'>, 'BundleRepo': <class 'columnflow.tasks.framework.remote.BundleRepo'>, 'BundleSoftware': <class 'columnflow.tasks.framework.remote.BundleSoftware'>}#
crab_stageout_location()[source]#

Hook to define both the “Site.storageSite” and “Data.outLFNDirBase” settings in a 2-tuple, i.e., the name of the storage site to use and the base directory for crab’s own output staging. An example would be ("T2_DE_DESY", "/store/user/...").

In case this is not used, the choice of the output base has no affect, but is still required for crab’s job submission to work.

Return type:

tuple[str, str]

crab_output_directory()[source]#

Hook to define the location of submission output files, such as the json files containing job data. This method should return a FileSystemDirectoryTarget.

Return type:

FileSystemDirectoryTarget

crab_bootstrap_file()[source]#

Hook to define the location of an optional, so-called bootstrap file that is sent alongside jobs and called prior to the actual job payload. It is meant to run a custom setup routine in order for the payload to run successfully (e.g. software setup, data retrieval).

Return type:

JobInputFile

crab_workflow_requires()[source]#

Hook to define requirements for the workflow itself and that need to be resolved before any submission can happen.

Return type:

dict[str, AnalysisTask]

crab_job_config(config, submit_jobs)[source]#

Hook to inject custom settings into the job config, which is an instance of the Config class defined inside the job manager.

Return type:

Config

crab_destination_info(info)[source]#

Hook to add additional information behind each job status query line by extending an info dictionary whose values will be shown separated by comma.

Return type:

dict[str, str]

exclude_index = False#
exclude_params_crab_workflow = {}#
exclude_params_index = {'effective_workflow'}#
exclude_params_remote_workflow = {}#
exclude_params_repr = {'cancel_jobs', 'cleanup_jobs', 'workflow'}#
exclude_params_repr_empty = {}#
exclude_params_req = {'effective_workflow'}#
exclude_params_req_get = {}#
exclude_params_req_set = {}#
exclude_params_sandbox = {'log_file', 'sandbox'}#
exclude_params_workflow = {'branch'}#