Introduction

Dependencies can be managed at the following levels:

  • Between jobs inside a workflow:
    • Sequential execution: a job is executed if its predecessor will be completed, see JS7 - Workflows.
    • Parallel execution: a number of jobs are executed in parallel after completion of a common predecessor job, see JS7 - Fork-Join Instruction.
    • Conditional execution: a job is executed if a condition is met, for example if a workflow variable holds expected values, or if its predecessor job completes with specific return codes, see JS7 - If Instruction.
    • Time based execution: a job is executed at a given timeslot, optionally on specific days of week, month etc., see JS7 - Admission Times for Jobs.
    • Cyclic execution: execution of one or more jobs is repeated at predefined periods for a given number of times, see JS7 - Cycle Instruction.
  • Between workflows:
    • Asynchronous execution: a given workflow starts a second workflow that runs asynchronously, see JS7 - AddOrder Instruction.
    • Synchronized execution: a workflow waits for a second workflow having completed a specific step in the workflow, see JS7 - Notice Boards.
  • Between jobs/workflows and external events:
    • File based execution: a workflow is started in case of presence of a file, see JS7 - File Watching.
    • Event based execution: a workflow is started or a given step in a workflow is continued if an external event is signaled, see JS7 - Prompt Instruction.
    • Calendar based execution: a workflow is started for a given point in time specified by a schedule and calendar, see JS7 - Calendars and Schedules.

Resources

  • No labels