# gCubeRelease Jenkins Pipeline script to manage a complete gCube release. ## Requirements * [Jenkins](https://jenkins.io/) ver. 2.164.2 or newer * [Pipeline plugin](https://wiki.jenkins.io/display/JENKINS/Pipeline+Plugin) * [Pipeline: Maven](https://plugins.jenkins.io/pipeline-maven) * [Pipeline: Basic Steps](https://plugins.jenkins.io/workflow-basic-steps) * [Kubernetes](https://plugins.jenkins.io/kubernetes) (for the YAML parser) * [NodeLabelParameter](https://plugins.jenkins.io/nodelabelparameter) (The node and label parameter plugin allows to dynamically select the node on which a job should be executed.) * Jenkins configured with a JDK global tool named 'OpenJDK 8' * Jenkins configured with a Maven global tool named 'Maven 3.6.2' * One or more Jenkins agents labeled as 'pipeline-agent' ## Reference documentation [Jenkins Pipeline](https://jenkins.io/doc/book/pipeline/) [Pipeline Syntax](https://jenkins.io/doc/book/pipeline/syntax/) ## Expected parameters Parameters from the Jenkins pipeline project: * Type: a choice of 'SNAPSHOT-DRY-RUN', 'SNAPSHOT', 'RELEASE-DRY-RUN', 'RELEASE-STAGING', 'RELEASE' * gCube_release_version: the gcube version to build (must match the YAML file in /releases) ## Stages ### build core components