Skip to content

Commit e61e2b2

Browse files
committed
Add automation pipeline documentation
1 parent 7f38f97 commit e61e2b2

File tree

7 files changed

+1176
-85
lines changed

7 files changed

+1176
-85
lines changed
Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
When configuring a pipeline, you can use built-in pipeline templates provided by Choreo. These templates include pre-defined functionality that can simplify and accelerate pipeline creation.
2+
3+
[Choreo’s pipeline specification](./specification.md) supports referencing these templates using the following syntax:
4+
5+
```
6+
steps:
7+
- name: Build
8+
template: choreo/<template name>
9+
```
10+
11+
## Available Built-in Templates
12+
13+
!!! info "Note"
14+
The list of built-in templates is continuously growing.
15+
16+
??? "choreo/buildpack-build@v1"
17+
Builds applications using supported buildpacks within Choreo. This is used by Choreo’s default build pipeline.
18+
19+
??? "choreo/dockerfile-scan@v1"
20+
Scans Dockerfiles for security vulnerabilities and best practices.
21+
22+
??? "choreo/docker-build@v1"
23+
Builds Docker images using a provided Dockerfile.
24+
25+
??? "choreo/trivy-scan@v1"
26+
Performs vulnerability scanning on container images using Trivy.
27+
28+
??? "choreo/webapp-build@v1"
29+
Builds web applications using supported frameworks.
30+
31+
??? "choreo/ballerina-build@v1"
32+
Builds Ballerina projects.
33+
34+
??? "choreo/mi-trivy-scan@v1"
35+
Performs Trivy-based vulnerability scanning for Micro Integrator images.
36+
37+
??? "choreo/integration-project-build@v1"
38+
Builds integration projects.
39+
40+
??? "choreo/test-runner-build@v1"
41+
Runs tests using the built-in test runner.
42+
43+
??? "choreo/prism-build@v1"
44+
Builds Prism projects.
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
# What are Automation Pipelines
2+
3+
!!! info "Note"
4+
Automation pipeline capabilities are only available in paid plans for private data plane organizations.
5+
6+
Choreo provides the capability to define and run any automated workflow within your IDP infrastructure. You can write your automation pipeline using the [Choreo pipeline syntax](./specification.md) which is a simplified version of [Argo workflows syntax](https://argoproj.github.io/workflows/) syntax.
7+
8+
There are a few variations of automation pipelines - CI pipelines, CD pipelines and Infrastructure provisioning pipelines depending on what you are automating.
Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
# Create Automation Pipelines
2+
3+
Choreo allows to define automation pipelines at organization level. Follow these steps to create an automation pipeline.
4+
5+
1. Sign in to the [Choreo Console](https://console.choreo.dev/).
6+
2. In the left navigation menu, click **DevOps** and then click **Automation Pipelines**.
7+
3. Click **+ Create**.
8+
4. You can define an inline yaml or import from GitHub
9+
10+
## Define pipeline within Choreo
11+
12+
This option is useful when you are testing a pipeline or if you like to let Choreo to keep your pipeline definitions.
13+
14+
1. Under `Define your Pipeline YAML`, click **Use YAML Editor**
15+
2. Provide a name by which you can identify the pipeline.
16+
3. Optionally provide a description
17+
4. Click **Create**
18+
19+
This pipeline definition is managed within Choreo. You can update it after defining as well.
20+
21+
## Import pipeline from Git
22+
23+
If your organization manages pipelines in Git, you can authorize and let Choreo to refer it. It could be a monolithic repository having multiple pipelines.
24+
25+
1. Under `Import Pipeline from Git` Click on the Git provider to authorize, and proceed with steps to grant access.
26+
2. You can select **Repository**, **Branch** and Specific **Pipeline Yaml** File within and directory in the repository.
27+
3. Provide a name by which you can identify the pipeline.
28+
4. Optionally provide a description
29+
5. Click **Create**
30+
31+
Created pipelines will be listed in a tabular view.
32+
33+
34+
# Edit Automation Pipelines
35+
36+
Editing is only possible for pipelines defined within Choreo. Click **Edit Pipeline YAML** and in the right side panel that opens up you can edit the pipeline definition. You can view the pipeline definition in full screen view as well by maximizing the panel.
37+
38+
!!! info "Note"
39+
Once a pipeline is edited, you cannot roll back to a previous version.
40+
41+
When a pipeline is defined in Git, it always uses the latest version from the repository at runtime.
42+
To update the pipeline, modify it in Git and trigger a new run.
43+
44+
# Delete Automation Pipelines
45+
46+
In the pipeline listing, under the **Actions** column, click the **Delete** icon. A confirmation pop-up will appear. Upon confirmation, the pipeline and all its associated runs will be permanently removed from Choreo.
47+
Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
After a pipeline is defined, you can execute it. The pipeline may need some inputs for it to run. Ensure you configure them correctly before triggering the run.
2+
3+
# Add Pipeline Variables and Secrets
4+
5+
The pipelines are defined at the organization level. Thus the variables defined for them are injected at the same level. Learn more on how to define a input variable in your pipeline at [Variables and Secrets - Choreo Pipelines Specification](abc). Follow these steps to define inputs and their values for a given pipeline.
6+
7+
1. Click on **Pipeline Variables & Secrets** at upper right corner of the pipeline page.
8+
2. A panel will appear on the right side. To add a variable, under **Variables** section, add a new one by providing the Name and Value. The variable name must exactly match the name expected by the pipeline.
9+
3. If you have a secret to be added as a pipeline input, under **Secrets** section, add a new one by providing the Name and Value. The secret name must exactly match the name expected by the pipeline.
10+
11+
!!! info "Note"
12+
Once a secret is added, it is securely uploaded to the environment’s configured vault and injected into the pods running the workflow. You will not be able to view the secret value again after it is added.
13+
14+
## Manage existing Pipeline Variables and Secrets
15+
16+
To update or remove a secret, click the three vertical dots in the upper-right corner of the variable box in the Choreo UI. From the menu, choose the appropriate action.
17+
18+
# Run pipeline
19+
20+
Once the pipeline inputs are configured, click **Start New Run** to trigger a workflow run. The run will use the latest version of the pipeline definition along with the configured inputs.
21+
22+
Under the Runs table, a new row will appear displaying a unique **Run ID** for the triggered run. The following details are shown for each pipeline run:
23+
24+
1. **Version** – The version of the pipeline definition. This version is automatically incremented each time the pipeline definition is updated. It helps determine whether the run was triggered after a definition update.
25+
2. **Status** – The current status of the run:
26+
- **Successful**: All steps in the pipeline completed successfully.
27+
- **Failed**: One or more steps in the pipeline failed.
28+
- **Stopped**: The pipeline was manually stopped.
29+
3. **Start Time** – The timestamp when the pipeline run was triggered.
30+
4. **Duration** – The total time taken to execute the pipeline. If the pipeline runs for more than a predefined threshold (e.g., xx minutes), it will be automatically force-stopped by Choreo.
31+
32+
33+
# View pipeline logs
34+
35+
Click **View Logs** for a selected pipeline run in the Runs table. This opens a panel on the right, displaying logs for each step of the pipeline. You can close or maximize the log panel using the icons in the upper-right corner of the panel.
36+
37+
!!! info "Note"
38+
Choreo keeps pipeline logs maximum for 30 days.
39+
40+
# Stop a pipeline run
41+
42+
One a pipeline run is triggered, Click on **View Logs** and then in the log panel that opens to the right, click on **Stop Run**.

0 commit comments

Comments
 (0)