batch-shipyard/config_templates/jobs.yaml

282 строки
6.5 KiB
YAML

job_specifications:
- id: myjob
auto_complete: true
environment_variables:
abc: xyz
environment_variables_keyvault_secret_id: https://myvault.vault.azure.net/secrets/myjobenv
max_task_retries: 1
max_wall_time: 02:00:00
retention_time: 1.12:00:00
priority: 0
user_identity:
default_pool_admin: true
specific_user:
gid: 1001
uid: 1001
auto_pool:
keep_alive: false
pool_lifetime: job
recurrence:
schedule:
do_not_run_after: null
do_not_run_until: null
recurrence_interval: 00:05:00
start_window: null
job_manager:
allow_low_priority_node: true
monitor_task_completion: false
run_exclusive: false
allow_run_on_missing_image: false
remove_container_after_exit: true
shm_size: 256m
infiniband: false
gpus: disable
exit_conditions:
default:
exit_options:
job_action: none
dependency_action: block
data_volumes:
- joblevelvol
shared_data_volumes:
- joblevelsharedvol
auto_scratch:
setup: block
task_id: batch-shipyard-autoscratch
num_instances: pool_current_dedicated
job_preparation:
command: myjpcommand
job_release:
command: myjrcommand
input_data:
azure_batch:
- job_id: someotherjob
task_id: task-a
exclude:
- '*.txt'
include:
- wd/*.dat
destination: null
azure_storage:
- storage_account_settings: mystorageaccount
remote_path: jobcontainer/dir
local_path: $AZ_BATCH_NODE_SHARED_DIR/jobdata
is_file_share: false
exclude:
- '*.tmp'
include:
- jobdata*.bin
blobxfer_extra_options: null
default_working_dir: batch
restrict_default_bind_mounts: false
force_enable_task_dependencies: false
autogenerated_task_id:
prefix: task-
zfill_width: 5
federation_constraints:
pool:
autoscale:
allow: true
exclusive: false
low_priority_nodes:
allow: true
exclusive: false
native: false
windows: false
location: eastus
container_registries:
private_docker_hub: true
public:
- my.public.registry.io
max_active_task_backlog:
ratio: null
autoscale_exempt: true
custom_image_arm_id: null
virtual_network_arm_id: null
compute_node:
vm_size: STANDARD_F1
cores:
amount: 2
schedulable_variance: null
memory:
amount: 512m
schedulable_variance: null
exclusive: false
gpu: false
infiniband: false
tasks:
- id: null
docker_image: busybox
singularity_image: shub://singularityhub/busybox
task_factory:
parametric_sweep:
combinations:
iterable:
- ABC
- '012'
length: 2
replacement: false
permutations:
iterable:
- ABC
- DEF
length: 2
product:
- start: 0
step: 1
stop: 10
product_iterables:
- abc
- '012'
zip:
- ab
- '01'
random:
distribution:
beta:
alpha: 1
beta: 1
exponential:
lambda: 2
gamma:
alpha: 1
beta: 1
gauss:
mu: 1
sigma: 0.1
lognormal:
mu: 1
sigma: 0.1
pareto:
alpha: 1
triangular:
high: 1
low: 0
mode:
uniform:
a: 0
b: 1
weibull:
alpha: 1
beta: 1
generate: 3
integer:
start: 0
step: 1
stop: 10
seed:
file:
azure_storage:
storage_account_settings: mystorageaccount
remote_path: container/dir
is_file_share: false
exclude:
- '*.tmp'
include:
- '*.png'
task_filepath: file_name
custom:
input_args:
- a
- b
- c
input_kwargs:
abc: '012'
def: '345'
module: mypkg.mymodule
package: null
repeat: 3
autogenerated_task_id:
prefix: task-
zfill_width: 5
singularity_execution:
cmd: exec
elevated: false
additional_singularity_options: []
name:
labels: []
environment_variables:
def: '123'
environment_variables_keyvault_secret_id: https://myvault.vault.azure.net/secrets/mytaskenv
ports: []
data_volumes:
- contdatavol
- hosttempvol
shared_data_volumes:
- azurefilevol
resource_files:
- blob_source: https://some.url
file_mode: '0750'
file_path: some/path/in/wd/file
input_data:
azure_batch:
- job_id: previousjob
task_id: mytask1
exclude:
- '*.txt'
include:
- wd/output/*.bin
destination: null
azure_storage:
- storage_account_settings: mystorageaccount
remote_path: taskcontainer/output
local_path: $AZ_BATCH_TASK_WORKING_DIR/taskdata
is_file_share: false
exclude:
- '*.tmp'
include:
- taskdata*.bin
blobxfer_extra_options: null
output_data:
azure_storage:
- storage_account_settings: mystorageaccount
remote_path: output/dir
local_path: null
is_file_share: false
condition: tasksuccess
exclude:
- '*.tmp'
include:
- 'out*.dat'
blobxfer_extra_options: null
default_working_dir: batch
remove_container_after_exit: true
shm_size: 256m
additional_docker_run_options: []
infiniband: false
gpus: disable
depends_on:
- taskid-a
- taskid-b
- taskid-c
depends_on_range:
- 1
- 10
max_task_retries: 1
max_wall_time: 03:00:00
retention_time: 1.12:00:00
exit_conditions:
default:
exit_options:
job_action: none
dependency_action: block
multi_instance:
coordination_command:
num_instances: pool_current_dedicated
resource_files:
- blob_source: https://some.url
file_mode: '0750'
file_path: some/path/in/sharedtask/file
pre_execution_command: source myrc
mpi:
runtime: intelmpi
executable_path: path/to/mpiexec/or/mpirun
options: []
processes_per_node: 1
entrypoint: null
command: mycommand
merge_task:
id: null
# ... same properties found in task except for
# depends_on, depends_on_range, multi_instance, task_factory