A workflow is a series of jobs that should be run, and determines how, when and where the jobs should be run. Workflows assemble jobs into processes, and are the unit of automation. Workflows, also manage the order and parallelization of jobs.
As a rule, when manually starting a build or scheduling work, a workflow is being executed. Workflows assemble many of the other configurable items into something usable:
A job is a series of steps detailing how to get something done. It may specify the steps in a build, deployment, or other business need. The job configuration also dictates what types and number of machines the job will be run on (a deployment job may target every machine in a cluster).
A trigger is an automated mechanism for kicking off a workflow.
Source Configuration identifies exactly which source code should be retrieved from a repository. How these are configured will vary between source code management tools.
To start, AnthillPro has two basic types: originating and non-origination. Originating workflows are used to start Build Lives, utilizing Life-Cycle Models, source configuration, and dependency information. Non-origination workflows specify secondary processes that can be run on an existing Build Life (e.g., a deployment). Underneath, the difference is that originating workflows have corresponding BuildProfile objects.
Components of a Workflow:
|
Workflows can either be created for individual projects or be used by multiple projects. To use the same Workflow for multiple projects, a Workflow Library (Workflow Definition) is created. Once configured, Workflow Definitions are added to existing projects as part of the project-workflow creation process (on the project-workflow Definition tab). Workflow Definitions do not necessarily have to be placed in Workflow Library folder. Any Workflows (on the Administration page) not in a folder or as part of a project subdirectory are Workflow Definitions.