Difference between revisions of "Continuous Integration procedure (2019)"

From Gcube Wiki
Jump to: navigation, search
(Continuous Integration)
(Continuous Delivery)
 
(21 intermediate revisions by the same user not shown)
Line 9: Line 9:
 
* [[Continuous_Delivery_of_gCube_System:_Overview|Continuous Delivery Pipeline of gCube System: Overview]]
 
* [[Continuous_Delivery_of_gCube_System:_Overview|Continuous Delivery Pipeline of gCube System: Overview]]
 
**[[Continuous_Delivery_of_gCube_System:_Overview#Workflow|Workflow]]
 
**[[Continuous_Delivery_of_gCube_System:_Overview#Workflow|Workflow]]
 +
**[[Continuous_Delivery_of_gCube_System:_Overview#The_Release_Process|The Release Process]]
 
**[[Continuous_Delivery_of_gCube_System:_Overview#Actors_and_Entities|Actors and Entities]]
 
**[[Continuous_Delivery_of_gCube_System:_Overview#Actors_and_Entities|Actors and Entities]]
  
Line 24: Line 25:
 
* [[Development Machine]]
 
* [[Development Machine]]
 
**[[OpenJDK as Java Platform]]
 
**[[OpenJDK as Java Platform]]
**[[Maven Configuration]]  
+
**[[Maven Configuration]]
 +
* [[gCube Project Layout]]
  
 
== Continuous Integration ==
 
== Continuous Integration ==
Line 30: Line 32:
 
** [[Repositories]]
 
** [[Repositories]]
 
** [[Import from SVN]]
 
** [[Import from SVN]]
 +
** [[Cloning_Git_Repository|Cloning a Git Repository]]
 
** [[Git_Branching_Strategy|Branching Strategy]]
 
** [[Git_Branching_Strategy|Branching Strategy]]
 
** [[Tags]]
 
** [[Tags]]
Line 37: Line 40:
  
 
* [[Build and Integration System: Jenkins]]
 
* [[Build and Integration System: Jenkins]]
** [[Jenkins Projects (aka Jobs)]]
+
** [[Jenkins Projects (aka Jobs)|Jenkins Projects (aka Jobs) for Gitea]]
 +
** [[Jenkins Projects (aka Jobs) for GitHub|Jenkins Projects (aka Jobs) for GitHub]]
 
** [[Connecting projects downstream/upstream]]
 
** [[Connecting projects downstream/upstream]]
 
** [[Jenkins Rules]]
 
** [[Jenkins Rules]]
Line 48: Line 52:
 
** [[Gitea/Jenkins:_Setting_up_Webhooks#Testing_the_Gitea.2FJenkins_round_trip|Gitea/Jenkins round trip]]
 
** [[Gitea/Jenkins:_Setting_up_Webhooks#Testing_the_Gitea.2FJenkins_round_trip|Gitea/Jenkins round trip]]
  
* [[Gihub/Jenkins: Setting up Webhooks]]
+
* [[GitHub/Jenkins: Setting up Webhooks]]
  
 
== Continuous Delivery ==
 
== Continuous Delivery ==
Line 58: Line 62:
 
*** [[Continuous_Integration:_Releases_Maven#Build_Configurations|Build Configurations]]
 
*** [[Continuous_Integration:_Releases_Maven#Build_Configurations|Build Configurations]]
 
*** [[Continuous_Integration:_Releases_Maven#Why_not_the_Maven_Release_Plugin|Why not the Maven Release Plugin]]
 
*** [[Continuous_Integration:_Releases_Maven#Why_not_the_Maven_Release_Plugin|Why not the Maven Release Plugin]]
** [[Continuous_Integration:_Releases_Jenkins_Pipeline|Jenkins Pipeline]]
+
** [[Continuous_Integration:_Releases_Jenkins_Pipelines|Jenkins Pipelines]]
*** [[Continuous_Integration:_Releases_Jenkins_Pipeline#gCubeRelease_Pipeline_Project|gCubeRelease Pipeline Project]]
+
** [[Continuous_Integration:_Releases_Jenkins_Pipeline#gCube-Release_Pipeline_Project|gCubeBuilder Pipeline]]
 
*** [[Continuous_Integration:_Releases_Jenkins_Pipeline#Jenkins_Pipeline_Definition|Pipeline Definition]]
 
*** [[Continuous_Integration:_Releases_Jenkins_Pipeline#Jenkins_Pipeline_Definition|Pipeline Definition]]
 
*** [[Continuous_Integration:_Releases_Jenkins_Pipeline#Jenkins_Pipeline_Configuration| Pipeline Configuration]]
 
*** [[Continuous_Integration:_Releases_Jenkins_Pipeline#Jenkins_Pipeline_Configuration| Pipeline Configuration]]
 +
*** [[Continuous_Integration:_Releases_Jenkins_Pipeline#Build_Commits_Report|Build Commits Report]]
 +
** [[Continuous_Integration:_Tagging_Jenkins_Pipeline|gCubeTagging Pipeline]]
 +
*** [[Continuous_Integration:_Tagging_Jenkins_Pipeline#Jenkins_Pipeline_Definition|Pipeline Definition]]
 +
*** [[Continuous_Integration:_Tagging_Jenkins_Pipeline#Jenkins_Pipeline_Execution|Pipeline Execution]]
 +
*** [[Continuous_Integration:_Tagging_Jenkins_Pipeline#Tag_Report|Tag Report]]
 +
** [[Continuous_Integration:_Notes_Jenkins_Pipeline|gCubeReleaseNotes Pipeline]]
 +
** [[Continuous_Integration:_Dependency_Walker_Jenkins_Pipeline|gCubeDependencyWalker Pipeline]]
 +
** [[Continuous_Integration:_Actions_Jenkins_Pipeline|gCubeActions Pipeline]]
 
** [[Continuous_Integration:_Releases_Manager|Activities of Release Manager]]
 
** [[Continuous_Integration:_Releases_Manager|Activities of Release Manager]]
 
** [[Continuous_Integration:_Developer|Activities of Developer]]
 
** [[Continuous_Integration:_Developer|Activities of Developer]]
 +
*** [[Continuous_Integration:_Developer#POM_version_on_master|POM Version]]
 +
*** [[Continuous_Integration:_Developer#Dependencies_version|Maven Dependencies]]
  
 
== Best Practices ==
 
== Best Practices ==
Line 70: Line 84:
 
** [[VCS_Best_Practices| Version Control System]]
 
** [[VCS_Best_Practices| Version Control System]]
 
** [[Jenkins_Best_Practices|Jenkins]]
 
** [[Jenkins_Best_Practices|Jenkins]]
 +
** [[Docker_Best_Practices|Docker]]
  
 
= [[Continuous_Integration:_FAQ|FAQ]] =
 
= [[Continuous_Integration:_FAQ|FAQ]] =

Latest revision as of 03:56, 26 January 2021

This page contains the references for the gCube Continuous Integration procedure

Overview

Getting Started

Minimalistic developer guides for setting up the Continuous Integration procedure:

CI/CD Guide

Configuration

Continuous Integration

Continuous Delivery

Best Practices

FAQ