Layout
A minimal structure in your code repository is required in order to leverage
the jenkins-pipeline-library. In addition to the Jenkinsfile
, the specific
configuration for the operation of the library is located in the .sqa
folder, as follows:
(project)
|-- .sqa
| |-- config.yml
| |-- docker-compose.yml
|-- Jenkinsfile
|-- ..
As shown in the figure above, the following key files are needed:
.sqa/config.yml
This is the central piece of configuration used by the jenkins-library-pipeline to compose the new stages that implement the requirements from the SQA baseline.
To start creating your own setup please head over to:
.sqa/docker-compose.yml
The library relies by default on Docker Compose tool to facilitate the task of spawing the services required to carry out the verification and validation (V&V) processes.
Please refer to the Docker Compose official documentation to define the services that will be used by the pipeline. Additionally, we provide a template for very simple use cases:
Note
docker-compose is currently the supported technology. Additional frameworks that follow the same YAML approach to define the orchestration settings, such as Kubernetes, are clear candidates to be supported in the future.
Jenkinsfile
The presence of a Jenkinsfile in the code repository indicates Jenkins that the
actual branch must be built according to the stages thereof. The
jenkins-pipeline-library requires the addition of a specific stage that will
dinamically load the stages resultant from parsing the previous
config.yml
file.
The minimal content of the Jenkinsfile is described in: