CI/CD pipelines

reference

CI/CD pipelines

Mender supports production-grade CI/CD pipelines to implement specific use cases. This section describes possible ways to integrate your workflow with Mender and the most popular CI/CD providers.

Mender CI-workflows Docker image

To help you create CI/CD pipelines, we created GitHub repository containing ready to use, battle-tested CI/CD pipeline code snippets that can be used in your workflows. We also provide mender-ci-tools Docker image based on Alpine Linux and provide command-line utilities,mender-artifact and mender-cli installed.

To locally inspect the Docker image, pull it with the following command:

docker pull mendersoftware/mender-ci-tools:1.0.0

The Docker image definition and CI/CD templates can be found here.

Supported CI/CD providers

Mender currently supports three major CI/CD providers:

Creating and Signing a Mender Artifact

This scenario uses mender-artifact tool to package your software as a Mender Artifact. A Mender Artifact can optionally be signed, so the examples provided allow for signing the Artifact too.

The input for the scenario is the software being packaged and the output is a Mender Artifact.

You can read about artifact creation details here.

More details about signing Mender Artifacts here.

Uploading a Mender Artifact

This scenario uses mender-cli tool to upload your Mender Artifact to the Mender Server.

The input for the scenario is the Mender Artifact generated in the previous stage, and the output is the upload result.

You can read about uploading the Mender Artifact to the file storage here.

You can use Personal Access Tokens with necessary permissions to perform automated actions on the Mender Server on your behalf.

Deploying an Artifact to the fleet of devices

This scenario uses the Mender Server API to trigger a deployment on your fleet.

The inputs for this scenario are the device group to deploy on and previously uploaded Mender Artifact, and the output is the deployment result.

We welcome contributions to improve this documentation. To submit a change, use the Edit link at the top of the page or email us at .