Pipeline created for testing the CD in D4Science
Go to file
Roberto Cirillo ceaa196895 small fix 2024-10-30 10:33:40 +01:00
images add new screeeshot in folder images 2023-07-11 16:47:00 +02:00
.gitignore add gitignore 2022-04-29 16:13:39 +02:00
.project fix println sintax 2022-09-09 11:48:07 +02:00
Jenkinsfile small fix 2024-10-30 10:33:40 +01:00
LICENSE.md add LICENSE; fix deploy exitcode 2022-05-10 11:57:09 +02:00
README.html add foo input parameter 2024-02-23 16:06:41 +01:00
README.md Update 'README.md' 2023-07-11 17:00:28 +02:00

README.md

Pipeline-gCubeDeployer

Jenkins Pipeline script to manage one or more gCube components deployment

Requirements

Expected usage

  • ContinuousDeployment(CD): configured as post step build on jenkinsjob
  • Scheduled by system: In this case all the pending deployments (CD) will be managed by a temporized trigger
  • Manually from Jenkins GUI

Expected environment variables

The variables below must be specified as environment variables on the agent where the deployments will be executed:

  • IS_SCHEDULED (True | False): if true all the deployment requests will be performed periodically as specified by cron
  • ENVIRONMENT: ( DEV | PREPROD | PROD) Indicates the target environment where will be deployed all the artifacts
  • DEPLOY_CATEGORY: (Related to release build) one or more Component group on yaml file where search the components to deploy
  • CD: (Continuous Deployment: True | False) if True the remote deploy will be performed

References

Examples

  • When configured as post step build on jenkinsjob, there are some variables to pass as triggered parameters. All the values are dinamically set as shown below:

images/gCubeDeployer-JenkinsJob.png

  • The pipeline can run manually. This option is conceived for debug purpose:

images/gCubeDeployer-manualRun.png

  • Follows a stage view example when the pipeline was scheduled by system, but there were any action to do:

images/gCubeDeployer-stageview.png

Flow Chart

images/FlowChartgCubeDeployer.jpeg

License

This project is licensed under the EUPL V.1.1 License.