---
description: Reference to ServoyCloud Application pipelines
---

# Pipelines

## Overview

In the Servoy Cloud ecosystem, we use 'delivery pipelines' to streamline the creation and management of delivery processes for your applications.

Each application can be associated with one or more delivery pipelines, depending on your needs. These pipelines are specifically designed to cater to different job types. Here's what each job type entails:

* [Build and Deploy](jobs#build-and-deploy)\
  This pipeline is responsible for building your application and deploying it to a specified environment in your Servoy Cloud namespace.
* [Build](jobs#build)\
  This pipeline focuses solely on building your application, without deploying it.
* [Mobile](jobs#mobile)\
  This type of pipeline can be used to build mobile applications.
* [Desktop](jobs#desktop)\
  This type of pipeline can be used to build NG Desktop applications.

## Delivery pipeline

A delivery pipeline in Servoy Cloud is a well-organized process that oversees the controlled distribution of software updates to end users. It serves as a 'container' for specific tasks, known as jobs.\
Each delivery pipeline is linked to a unique job and is often referred to as a job itself.\
Regardless of the job type, delivery pipelines share a common section structure:

* [**Job**](#job)
* [**Current Package**](#current-package)
* [**Environment**](#environment)

{% hint style="info" %}
Note: Delivery pipeline information may be clickable, offering more details or insight into the selected information
{% endhint %}

## Job

### Metrics and information

The job section of a pipeline displays the following metrics and information:

* **Job Type:** It can be one of Build and Deploy, Build, Desktop, or Mobile
* **Job Status:** Indicates if the job is Ready, Queued, Running, or Disabled
* **Build Trigger:** Can be Auto, On-Demand, or Scheduled
* **Latest Build Package Information**: Includes build date, build status, and build number.

### Add Job

Follow these steps to add a new job in the Servoy Cloud Control Center:

1. Navigate to **Application Pipelines** from your current screen.
2. Click on the **Add Job** button located in the Delivery Pipeline view.
3. Fill in the job details:
   * **Job Name**: Enter a short name that will serve as an identifier for your job.
   * **Job Type**: Choose between Build, NG Desktop, or Mobile.
4. Click **Save Job** to add the job to the delivery pipeline.
5. Configure your job settings as needed.
6. Click **Save Job Configuration** to apply any changes you've made.

{% hint style="warning" %}
Note: **Build and Deploy** jobs cannot be created from within the Cloud Control Center
{% endhint %}

### View Package History

To view the package history of a job, use the Job context menu ![](https://3933488479-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FjpWd52BKwABWxF2lScUK%2Fuploads%2FMdvIGnUYBnsAMylJY5kD%2Fmenu-more-p.jpg?alt=media\&token=19fc9f1b-9092-48e7-8fb0-b57c689e5ce0).

This provides easy access to all the build packages generated by this job.\
\
In the Servoy Cloud Control Center, you can easily view the history of all the build packages generated by a specific job. Follow the steps below:

1. Navigate to **Application Pipelines** from your current screen.
2. Look for the **Job context menu** ![](https://3933488479-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FjpWd52BKwABWxF2lScUK%2Fuploads%2FMdvIGnUYBnsAMylJY5kD%2Fmenu-more-p.jpg?alt=media\&token=19fc9f1b-9092-48e7-8fb0-b57c689e5ce0).
3. Click on **view package history**.

The 'Package History' provides a comprehensive list of all the build packages that have been generated by the selected job.

### Edit Job Configuration

To edit a [job's configuration](pipelines/jobs/job-configuration):

1. Navigate to **Application Pipelines** from your current screen.
2. Look for the **Job context menu** ![](https://3933488479-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FjpWd52BKwABWxF2lScUK%2Fuploads%2FMdvIGnUYBnsAMylJY5kD%2Fmenu-more-p.jpg?alt=media\&token=19fc9f1b-9092-48e7-8fb0-b57c689e5ce0).
3. Click on **Edit job config**.

This action navigates you to the [job configuration](pipelines/jobs/job-configuration) page so you can properly set up all the properties for the following build packages.

{% hint style="warning" %}
Note: For **Build and Deploy** jobs which deploy to a Production or a Pre-production environment, this action is only available to users with Administrator role, which has Production permissions.
{% endhint %}

### Delete Job

To delete a job:

* Navigate to **Application Pipelines** from your current screen.
* Look for the **Job context menu** ![](https://3933488479-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FjpWd52BKwABWxF2lScUK%2Fuploads%2FMdvIGnUYBnsAMylJY5kD%2Fmenu-more-p.jpg?alt=media\&token=19fc9f1b-9092-48e7-8fb0-b57c689e5ce0).
* Click on **Delete job**.

Deleting a job is permanent. Once you delete a job, its configuration, package history, and artifacts will be permanently deleted. Also, any queued or running job instances will be cancelled.

{% hint style="warning" %}
Note: You cannot delete a **Build and Deploy** job
{% endhint %}

If you want to prevent the job from running, click Cancel and [disable ](#enable-disable-job)the job instead.

### Move Job

To move a job:

* Navigate to **Application Pipelines** from your current screen.
* Look for the **Job context menu** ![](https://3933488479-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FjpWd52BKwABWxF2lScUK%2Fuploads%2FMdvIGnUYBnsAMylJY5kD%2Fmenu-more-p.jpg?alt=media\&token=19fc9f1b-9092-48e7-8fb0-b57c689e5ce0).
* Click on **Move job**.

This action moves a job from one application to another application. It is only available when there is more than one application in the namespace.

### Copy Job

To copy or clone a job:

* Navigate to **Application Pipelines** from your current screen.
* Look for the **Job context menu** ![](https://3933488479-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FjpWd52BKwABWxF2lScUK%2Fuploads%2FMdvIGnUYBnsAMylJY5kD%2Fmenu-more-p.jpg?alt=media\&token=19fc9f1b-9092-48e7-8fb0-b57c689e5ce0).
* Click on **Copy job**.

{% hint style="info" %}
This action is only available for **Build** and **Build and Deploy** jobs
{% endhint %}

Copying a job adds a **Build** job to your delivery pipeline with the same configuration settings as the job that was copied. You only need to provide a new job name that is unique to your delivery pipeline.

### Enable/Disable Job

To enable/disable a job:

* Navigate to **Application Pipelines** from your current screen.
* Look for the **Job context menu** ![](https://3933488479-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FjpWd52BKwABWxF2lScUK%2Fuploads%2FMdvIGnUYBnsAMylJY5kD%2Fmenu-more-p.jpg?alt=media\&token=19fc9f1b-9092-48e7-8fb0-b57c689e5ce0).
* Toggle **Enable job**.

A disabled job will not run as scheduled. Running jobs will not be affected, but queued instances will be cancelled.

{% hint style="warning" %}
Note: For **Build and Deploy** jobs which deploy to a Production or a Pre-production environment, this action is only available to users with Administrator role, which has Production permissions.
{% endhint %}

## Current Package

### Metrics and information

When a job is executed, it generates a build package to represent its outcome. The Current Package section of the pipeline displays details of the **latest successful package.**

If there is no successful package available, generate a successful build to see Current Package details.

Package details include:

#### General

* **Package build number**
* **Package build version:**
  * **Mobile and Desktop:** Application version
  * **Build and Deploy or Build:** Servoy Developer version

#### Job specific

* **Mobile**: Binary downloads according to the build/deploy types of the mobile build
* **Desktop:** Binary downloads according to the application platforms of the desktop build
* **Build and Deploy or Build**:
  * **Package build date**
  * **Package build markers badge** - Warning and error count badges
  * **Number of commits**
  * **Code Quality reports** - Available when quality control settings have been configured in job configuration, before generating a build. The following can be displayed:
    * **Code Analysis** report
    * **Code Coverage** report
    * **Unit Test** report
    * **End-to-End Testing** report

### View Package Details

To view the details of the current package in your namespace, follow these steps:

* Navigate to **Application Pipelines** from your current screen.
* Look for the **Current package menu** ![](https://3933488479-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FjpWd52BKwABWxF2lScUK%2Fuploads%2FMdvIGnUYBnsAMylJY5kD%2Fmenu-more-p.jpg?alt=media\&token=19fc9f1b-9092-48e7-8fb0-b57c689e5ce0).
* Click on **View package details**.

This action navigates you to the latest successful build package details page.

### View Docker Pull Commands

Docker pull commands are used for on-premise deployment. To view the Docker Information Dialog for all supported operating systems, follow these steps:

* Navigate to **Application Pipelines** from your current screen.
* Look for the **Current package menu** ![](https://3933488479-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FjpWd52BKwABWxF2lScUK%2Fuploads%2FMdvIGnUYBnsAMylJY5kD%2Fmenu-more-p.jpg?alt=media\&token=19fc9f1b-9092-48e7-8fb0-b57c689e5ce0).
* Click on **Docker pull**.

{% hint style="info" %}
Docker Pull Commands are only available for **Build and Deploy** and **Build** jobs.
{% endhint %}

For more details, refer to the documentation in the [On-Premise Deployment section](../../../on-premise-deployment).

### Download WAR file

A WAR (Web Application Archive) file is a package that contains all the necessary components and resources to deploy your web application.

To download the WAR file for your current package in the Servoy Cloud Control Center, follow these steps:

* Navigate to **Application Pipelines** from your current screen.
* Look for the **Current package menu** ![](https://3933488479-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FjpWd52BKwABWxF2lScUK%2Fuploads%2FMdvIGnUYBnsAMylJY5kD%2Fmenu-more-p.jpg?alt=media\&token=19fc9f1b-9092-48e7-8fb0-b57c689e5ce0).
* Click on **Download WAR File**.

{% hint style="info" %}
Downloading the WAR file is only available for **Build and Deploy and Build** jobs.
{% endhint %}

## Environment

### Metrics and information

This section displays information and key metrics about the environment where the build packages are deployed. These are only relevant for **Build and Deploy** jobs and are the following:

#### Build and Deploy

* **Environment status:** Online or Offline
* **Environment health:** Healthy, At-Risk or Critical
* **Environment real time users**

### View Environment Details

Follow these steps to access in-depth details about your environment in the Servoy Cloud Control Center:

* Navigate to **Application Pipelines** from your current screen.
* Look for the **Environment menu** ![](https://3933488479-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FjpWd52BKwABWxF2lScUK%2Fuploads%2FMdvIGnUYBnsAMylJY5kD%2Fmenu-more-p.jpg?alt=media\&token=19fc9f1b-9092-48e7-8fb0-b57c689e5ce0).
* Click on **View environment details**.

### Launch Application

To start your web-based application in the browser for a specific environment, please follow the steps below:

* Navigate to **Application Pipelines** from your current screen.
* Look for the **Environment menu** ![](https://3933488479-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FjpWd52BKwABWxF2lScUK%2Fuploads%2FMdvIGnUYBnsAMylJY5kD%2Fmenu-more-p.jpg?alt=media\&token=19fc9f1b-9092-48e7-8fb0-b57c689e5ce0).
* Click on **Launch Application**.
