Application level Job template

9 min read

BuildPiperJob Templates

Application-Level Job Template #

Workflows designed for a specific application or team — covering template types, creation steps, job configuration, and step management.

Workflow: How to navigate to the Application Job Template.

How to Access/Navigate:

Log in to BPClick on ‘Application’ on the left paneClick on “Job Template”

Note: BP Application Job Template page is accessible inside user portal.

1. Types of Templates #

V2 and V3 are the two types of Application-Level Job Templates available in BuildPiper. Both come pre-loaded as default, system-generated templates, so there is no need to create them from scratch. When creating a new application, you can simply clone either template and use it as a starting point.

V21.1 V2 Template

V2 is built for static jobs. Its UI is static, not rendered dynamically — the workflow is predefined, made up of BuildPiper’s standard job types. The V2 default template is pre-loaded with 8 supported job types:

Build Job
Deploy Job
Promote Job
Rollback Job
API Call Job
Jira Ticket Job
Deploy ConfigMaps Job
Deploy Secrets Job

Values in a V2 template are defined at the template level — every service using the template shares the same set of values.

V31.2 V3 Template

V3 is built for dynamic and custom jobs. Its UI is also rendered dynamically — you can create the template and add any number of jobs to it, with any number of steps inside each job, built around exactly what your workflow needs. Values in a V3 template are configured at the service level — each service using the template can set its own values.

Note: Parallel Step and Conditional Step are not supported in V3 yet. Only Normal Steps can currently be added to a V3 template.

1.3 Job Template Types During Application Onboarding

BuildPiper has native support for three kinds of workloads: K8s-based, VM-based, and Mobile workloads. For each kind of workload, BuildPiper comes packaged with a pre-defined job template, built on the V2 and V3 versions described above:

K8s-based

— a type of V2 template. Used for microservice applications that run on Kubernetes. This is the default job template in BuildPiper.

VM-based

— a type of V3 template. Used for applications that run on virtual machines, including non-microservice applications.

Mobile-based

— used for Mobile CI workflows. Android and iOS both use the same default template.

Regardless of which type an application is onboarded with, the process for creating and configuring a Job Template — described in the rest of this document — works the same way.

2. Creating a Job Template #

1Open the Job Templates Listing Page

Navigate to Application → [App Name] → Job Templates. The listing table shows the following columns:

BP Snapshot: Job Templates listing table

2Choose the “Create New” template

The modal is titled “Do you want to create a Job Template” and includes:

  • Clone Source toggle (Yes / No) — “Yes” clones from the system Default Job Template. “No” reveals a dropdown to select any other existing template as the clone source instead.
  • Template Name
  • Template Description

Complete the fields and click Save.

BP Snapshot: Create New Job Template modal

3Review the New Template in the Listing

After saving, the new template appears as a row in the Job Templates table:

BP Snapshot: New template in listing table

4Open the Template Editor

Editing a template is done via the overflow menu on its row — not by clicking the row or template name directly. Select Edit to open the template editor.

BP Snapshot: Template editor via overflow menu

3. Adding a New Job #

Selecting “Add New Job” opens the Add Job modal, which captures:

Field Required Description
Job Name Yes Free-text display name for the job (e.g. “sample-job”)
Job Code Yes Free-text code identifier, auto-populated from Job Name by default
Is this job entity specific? Yes Yes/No. If Yes, the job is scoped to a specific entity (e.g. a Service or VM-based entity) and will only run in the context of that entity.

Figure 6.1 — Add Job

BP Snapshot: Figure 6.1 — Add Job

Close and Save actions are available at the bottom.

4. Adding a New Step #

Selecting “+ Add New Step” within a job (e.g. Build Job) opens the Add Step(s) wizard, a two-stage flow: Config Step Type followed by Select Steps. A step is the single unit of work within a job. BuildPiper supports three step types:

ANormal Step

executes sequentially, in the order it appears in the job’s step list. Normal steps run one after another, in the exact order they appear in the job’s step list. Each step waits for the previous one to finish before it starts. Use this for the majority of steps where order matters and each step depends on the one before it (e.g. clone the repo, then build, then scan).

BParallel Step

a group of steps that run together, at the same time, instead of one after another. Use this when steps are independent of each other and don’t need to wait — for example, running two different security scans side by side to save time. The whole group still sits at one point in the overall sequence: everything before the group finishes first, then the group runs, then everything after the group continues.

CConditional Step

a step (or set of steps) that only runs when a condition you define is met — for example, only if a previous step’s result equals “passed”. If the condition isn’t met, the step is skipped. Use this to branch out your workflow based on outcomes, instead of always running every step regardless of what happened earlier.

Figure 7.1 — Config Step Type

BP Snapshot: Figure 7.1 — Config Step Type

4.1 Normal Step #

Stage 1 — Config Step Type

Set Step Type to “Normal Step” and click Continue.

Stage 2 — Select Steps

An info banner confirms: “The steps will get executed sequentially.” The Select Steps screen presents a two-column picker:

  • Steps (left) — a searchable, paginated catalogue of available steps, filterable by category. Each entry shows a name, category tag(s), a short description.
  • Added Steps (right) — steps selected for this addition, also searchable.

Click Submit to confirm. Newly added Normal Steps are appended to the end of the job’s existing step sequence.

Figure 7.2 — Select Steps: Normal Step picker

BP Snapshot: Figure 7.2 — Select Steps: Normal Step picker

Step Configuration Panel

When you click a step from the list to select it, it gets added to the job. A form then opens asking for a few details needed to run that step; the exact fields depend on the step. For example, node-owasp asks for details like workspace path, application name, and source key. Enter the values and click Save. The step then appears in the job’s step list.

Figure 7.3 — Step Information / parameter configuration panel

BP Snapshot: Figure 7.3 — Step Information / parameter configuration panel

4.2 Parallel Step #

Note: The Parallel Step feature is controlled by a System Settings flag in the Admin Portal. If disabled, the Config Step Type screen displays: “Parallel Step feature is turned off in System Settings. Please contact your administrator to enable it.”

Stage 1 — Config Step Type

Set Step Type to “Parallel Step”. An additional required field appears:

  • Parallel Step Group Name — names the group that the parallel steps will belong to.

Figure 7.4 — Config Step Type: Parallel Step (feature-flag notice shown when disabled)

BP Snapshot: Figure 7.4 — Config Step Type: Parallel Step

Stage 2 — Select Steps

Steps you select here will run in parallel to each other, as part of the group. There’s no fixed cap on how many steps a group can hold — a super admin sets that limit in System Settings, based on what the infrastructure can support running at once.

Adding steps works the same way as with a Normal Step: click a step to add it, fill in its basic configuration, and click Save. Add as many steps as the configured limit allows, then click Submit.

In the step canvas view, the group appears as a single box, labeled with the group name and a purple “P” badge. Steps before and after the group still run one at a time, in order — only the steps inside the group run together, at the same time.

Figure 7.5 — Resulting step tree with a Parallel Step group

BP Snapshot: Figure 7.5 — Resulting step tree with a Parallel Step group

4.3 Conditional Step #

Stage 1 — Config Step Type

Set Step Type to “Conditional Step”. Additional required fields appear:

  • Conditional Step Name
  • Condition Variable — a dropdown of available variables (e.g. BUILD_GIT_URL).
  • Add Conditions Value for “[Variable]” — a tag-style input; type a value (e.g. “passed”) and press Enter to add it as a condition. Multiple condition values can be added.

Figure 7.6 — Config Step Type: Conditional Step (condition variable and value configured)

BP Snapshot: Figure 7.6 — Config Step Type: Conditional Step

Stage 2 — Select Steps

The Select Steps screen shows a “Condition Values” tab for each condition value you added (e.g. “passed”) — each tab is marked Configured once you’ve assigned a step to it.

Adding steps works the same way as with a Normal Step: click a step to add it, fill in its basic configuration, and click Save. Assign the step(s) that should run when that condition value is matched, then click Submit.

In the step graph, the conditional step appears as a single box with an orange “C” badge, positioned right after the steps that come before it.

5. Template Canvas View #

Beyond the two-panel editor, each template also has a read-only, zoomed-out graph view (accessible via Back / template name header, with an Edit button and a ⋮ overflow menu at the template level). This view visually lays out:

  • All jobs in the template on the left, showing enabled (highlighted) vs. disabled (greyed, crossed-eye icon) state
  • The selected job’s steps as a connected sequential chain
  • Parallel Step groups as a single branching node (purple “P” badge) containing their member steps
  • Conditional Steps as a single node (orange “C” badge) at the point they were inserted

Figure 8.1 — Full template canvas view, showing Jobs (left), Build Job steps, and Parallel/Conditional nodes

BP Snapshot: Figure 8.1 — Full template canvas view

Note: The ⋮ menu at the template level, and the individual ⋮ menus on Job rows and Step rows within the editor, expose additional row-level actions (e.g. rename, delete, enable/disable) that were not captured in this documentation pass.

6. Next Steps #

Once your Job Template is ready, the next step is to attach it to a service. This is done through the Service Onboarding flow, which is documented separately; no additional configuration is needed on the template side.

BuildPiper Documentation · Application-Level Job Template

Last updated: May 2026