Continuous Integration: Tagging Jenkins Pipeline

From Gcube Wiki
Revision as of 05:48, 23 December 2019 by Manuele.simi (Talk | contribs) (Jenkins Pipeline Execution)

Jump to: navigation, search

gCubeTagging Pipeline Project

In gCube we use a Pipeline to tag all the repositories forming a gCube Release. The pipeline project is available at: https://jenkins.d4science.org/job/gCube-Tagging/


Parameters

Jenkins tagging pipeline params.png

Triggers

No triggers are defined because the pipeline is expected to be manually launched by the Release Manager:

Jenkins tagging pipeline triggers.png

It can be changed according to the release needs and the availability of a sufficient number of dedicate agents in Jenkins.

Git

The pipeline is maintained in a Git repository. This section connects the project to the Git repository.

Jenkins tagging pipeline git.png

Jenkins Pipeline Execution

Starting from the following sample commits report available at https://code-repo.d4science.org/gCubeCI/gCubeRelease/raw/branch/master/releases/4.10.0/build_commits.12.csv:

GroupID,ArtifactID,Version,SCM URL,Build Number,Distribution URL,Filename,Packaging
org.gcube.tools,strategy-forward,1.1.0,https://code-repo.d4science.org/Playground/MergeStrategyFastForward,66f5fd1da37229615268955eeaf46870dd4d6576,...

We run the pipeline with the following parameters:

  • Type = TAG
  • gcube_release_number = 4.10.0
  • report_number = 12

On the jenkins console, we can see the messages logging the tagging activity on the repository:

Jenkins tagging pipeline console.png

On gitea, we can appreciate that the tag has been pushed;

Jenkins tagging pipeline gitea.png

On a local cloned repo, we can fetch the new tag:

Jenkins tagging pipeline repo.png