VectorCAST Jenkins Pipeline Plugin Overview
Background - What is a Jenkins Pipeline
A Jenkins Pipeline is a user-defined model of a continuous delivery (CD) system for your software. VectorCAST Pipeline Job is a model based on configuration information the user provides during the initial setup of the Pipeline Job.
VectorCAST Pipeline Stages
The VectorCAST Pipeline Job is broken up into multiple stages:
- Previous Stage - A placeholder for stage(s) coming before VectorCAST
- Single Checkout - A stage for checking out the source and VectorCAST project information a single time for the entire pipeline.
- Get Environment Info - This stage queries the VectorCAST Project to determine which VectorCAST Test Environments to run
- Build Execute Stage - This is the dynamically generated stage spawning a job for each VectorCAST Test Environments
- Generate Overall Reports - This stage generates the reports for the VectorCAST project
- Check Build Log - This stage searches the build log for common errors in the previous stages
- Next Stage - A placeholder for stage(s) coming after VectorCAST
Parallelizing VectorCAST Test Environments
The Build Execute Stage of the VectorCAST Pipeline Job will spawn a single job for every enabled VectorCAST Test Environment. Each job is restricted to execution on a Node (machine which is part of the Jenkins environment) that has a matching label in the Node configuration. You can restrict the number of simultaneous jobs running by limiting the number of executors on each Node. A user may want to limit the number of executors because of limited hardware, limited tool licenses, or limited CPUs. Jobs are launched in parallel but may be queued on a certain node waiting for an available executor.
For example, a node that supports host based tests may have a large number of executors where a node that supports a hardware based connection may be limited to one executors.
For more general information on Jenkins Pipeline Jobs see https://jenkins.io/doc/book/pipeline