2019-05-28 14:58:00 +02:00
|
|
|
# gCubeRelease
|
|
|
|
|
2019-05-28 15:13:54 +02:00
|
|
|
Jenkins Pipeline script to manage a complete gCube release.
|
|
|
|
|
2019-05-28 15:22:51 +02:00
|
|
|
## Requirements
|
2019-05-28 15:20:51 +02:00
|
|
|
* [Jenkins](https://jenkins.io/) ver. 2.164.2 or newer
|
2019-05-28 15:49:05 +02:00
|
|
|
* [Pipeline plugin](https://wiki.jenkins.io/display/JENKINS/Pipeline+Plugin)
|
2019-05-28 15:20:51 +02:00
|
|
|
* [Pipeline: Maven](https://plugins.jenkins.io/pipeline-maven)
|
|
|
|
* [Pipeline: Basic Steps](https://plugins.jenkins.io/workflow-basic-steps)
|
2019-09-03 05:28:20 +02:00
|
|
|
* [Kubernetes](https://plugins.jenkins.io/kubernetes) (for the YAML parser)
|
2019-10-22 14:56:23 +02:00
|
|
|
* [NodeLabelParameter](https://plugins.jenkins.io/nodelabelparameter) (to allow to dynamically select the node on which a job should be executed)
|
|
|
|
* [Email Extension](https://plugins.jenkins.io/email-ext) (to send emails with attachments)
|
2019-09-27 05:13:32 +02:00
|
|
|
* Jenkins configured with a JDK global tool named 'OpenJDK 8'
|
|
|
|
* Jenkins configured with a Maven global tool named 'Maven 3.6.2'
|
2019-10-19 05:07:04 +02:00
|
|
|
* One or more Jenkins agents labeled as 'CD'
|
2019-05-28 15:13:54 +02:00
|
|
|
|
2019-05-28 15:22:51 +02:00
|
|
|
## Reference documentation
|
2019-10-19 05:07:04 +02:00
|
|
|
1. [Jenkins Pipeline](https://jenkins.io/doc/book/pipeline/)
|
|
|
|
|
|
|
|
2. [Pipeline Syntax](https://jenkins.io/doc/book/pipeline/syntax/)
|
2019-05-30 05:41:24 +02:00
|
|
|
|
2019-10-19 05:07:04 +02:00
|
|
|
3. [Wiki](https://wiki.gcube-system.org/gcube/Continuous_Integration:_Releases_Jenkins_Pipeline)
|
2019-05-28 15:13:54 +02:00
|
|
|
|
2019-05-28 15:22:51 +02:00
|
|
|
## Expected parameters
|
2019-05-28 17:03:09 +02:00
|
|
|
Parameters from the Jenkins pipeline project:
|
2019-09-27 05:13:32 +02:00
|
|
|
* Type: a choice of 'SNAPSHOT-DRY-RUN', 'SNAPSHOT', 'RELEASE-DRY-RUN', 'RELEASE-STAGING', 'RELEASE'
|
2019-10-19 05:07:04 +02:00
|
|
|
* gCube_release_version: the gCube version to build (must match the YAML file in /releases)
|
2019-05-28 15:20:51 +02:00
|
|
|
|