- Introduction
The idea of this document is to present a step-by-step procedure on how to use GitHub and Jenkins to create a CI/CD environment in a Pentaho context without having to install the PDI Client into Jenkins server, i.e., using only RESTful API calls.
The picture below represents a typical customer environment.
The Pentaho Transformations and Jobs are developed using PDI Client (Spoon) and commited/pushed to GitHub using GitHub Desktop or CLI.
At Jenkins, a build is manually or automatically executed, which will temporarily download such Transformations and Jobs to its workspace and
subsequently inject them into the Pentaho Server Enterprise Repository, which can be a QA or Production system.
Repeating this process, as the development evolves, will create multiple versions in GitHub and in the Pentaho Server Enterprise Repository.
- Procedure
Note: all the names, directories, IP addresses and ports are for exemplification only.
1- At the PDI Client (Spoon), create a File Repository in the local desktop.
C:\MyWorkspace\Pentaho\Repositories\FileRepository1
2- At the PDI Client (Spoon), in Tools -> Repository -> Explore... create folders to organize code
/demos/ContinousIntegration
3- Create a new repository at GitHub
https://github.com/rrizzio/pentaho-test
4- At the GitHub Desktop, select File -> Clone repository
5- Select the URL tab, fill in the fields and click Clone
URL: rrizzio/pentaho-test
Local path: C:\MyWorkspace\Pentaho\Repositories\FileRepository1\demos\ContinousIntegration
------------------------------
Rogerio de Rizzio
Master Technical Expert
Hitachi Vantara
------------------------------