LabVIEW Development and Continuous Integration and Continuous Delivery/Deployment
- Updated2026-07-27
- 2 minute(s) read
LabVIEW Development and Continuous Integration and Continuous Delivery/Deployment
You can enhance a source control system by adopting a continuous integration and continuous delivery/deployment (CI/CD) model for LabVIEW development. CI/CD helps you manage development risk by supporting frequent, manageable code contributions and automatically building your applications.
For example, if your development process involves code contributions from many developers, it is beneficial to reconcile code submissions with each other and iteratively build your application. This way, you avoid incurring the risk that comes with waiting to test that your application functions as expected until the end of your development cycle. You can also avoid manually testing code and building your applications.
NI provides Docker containers that make it easier to set up an environment for using headless LabVIEW for CI/CD. Headless operation means a non-interactive execution mode designed for executing code or operations without human interaction. As a result, headless LabVIEW is designed to enable automated workflows. Containers are available for Windows and Linux.
Table 3. Example Components of a LabVIEW CI/CD Workflow summarizes the components that you can use to incorporate LabVIEW into a CI/CD workflow.
| Component | Description |
|---|---|
| Code repository under source control |
The repository for your LabVIEW code.
|
| LabVIEW VI Analyzer Toolkit |
API for static code analysis of LabVIEW code. Use the VI Analyzer API to develop tests that enforce coding standards. For example, you can use this API to reject code contributions that do not meet your standards. |
| LabVIEW Command Line Interface (CLI) |
Use the LabVIEW CLI to make LabVIEW accessible to other services for automated workflows.
|
| LabVIEW Application Builder API |
LabVIEW API that automates the functionality of the Application Builder. Builds according to a build specification and deploys the output of a build specification programmatically. Use this API to develop logic that builds and deploys your application. |
| LabVIEW Docker containers |
Prepackaged environments to simplify setting up LabVIEW together with dependencies to enable CI/CD workflows. |
| Automation files |
Support files that define actions to take when other actions occur. For example, if you use a Git source control system, you can use hooks to script VI Analyzer tests for commits. You can also use YAML files with your repository to trigger actions, like building a build specification. |
| Automation server |
Server, such as Jenkins, that takes actions based on changes to the repository. For example, the automation server can do things like the following:
|
Related Information
- Running Operations Using the Command Line Interface for LabVIEW
- Running LabVIEW in Headless Run Mode
You can launch LabVIEW in Headless Run mode, a non-interactive execution mode designed for executing code or operations without human interaction.
- Building and Distributing LabVIEW Code
Create build outputs from LabVIEW code so end users of the VIs you create can put your code to use. Create a build specification to define the output to build.
- ni.com—LabVIEW Licensing for Continuous Integration and Continuous Development (CI/CD) Systems
- ni.com—LabVIEW Continuous Integration With Jenkins/GitHub
- ni.com—Best Practices on How to Use LabVIEW with Jenkins Continuous Integration
- NI Learning Center—Continuous Integration
- hub.docker.com—Headless LabVIEW container images
Containerized LabVIEW for CI/CD automation using LabVIEWCLI.
- github.com—LabVIEW for Containers