3. Yoram Michaeli
Fullstack DevOps Technical Leader
Tikal Knowledge
Fullstack as a service
Fullstack Developers Israel
Main domains: DevOps, Web, Mobile, Backend
4. So what is that we want to
achieve???
what message do we have?
6. Better usage of Jenkins pipeline
framework
Explore
main
stages
(build, deploy,
test)
Identify
Reusable
Bits
Design
CI
Pipeline
Process
As
a Code
Shift
Left
Use
Shared
Library
15. Presented by: Yoram Michaeli
Backstage team: Tikal Knowledge DevOps group
GitHub repository: tikal-pipelib
More info: yorammi@tikalk.com
16. Presented by: Yoram Michaeli
Backstage team: Tikal Knowledge DevOps group
GitHub repository: tikal-pipelib
More info: yorammi@tikalk.com
Hinweis der Redaktion
A new Star-Wars movie is coming next month, so it is a good opportunity to celebrate it!
Iâm Yoram Michaeli from Tikal Knowledge DevOps group, and Iâm going to show you â faster than a lightsaber - how to improve the usage of Jenkins pipeline. And if youâre a DevOps expert or a fullstack developer, youâre more than welcome to join the Tikal family.
So what is the use of reusable Jenkins pipeline?
We want to have process-as-a-code!
Iâm going to give you just a kick start for coding your processes.
One way is to create a common-flow pipeline job and call it from other jobs with parameters â this will provide a reusable jobs.
but a better way - that really turn it into Jenkins as a code - is to use shared libraries. Here you can really write reusable code in Groovy!
It doesnât matter why Groovy has been chosen - it is still a programming language, so it can be used for programming the process.
The common usage of shared library is to write a public function and call it from within pipeline Jenkinsfiles
A more challenging way to use shared library is to write a common-flows-public-classes and use inheritance for wide usage of it.For example â implement a base CI flow class, inherit from it and overwrite the main actions in it.This is the real implementation of Jenkins pipeline!
In Tikal we established a shared library that encapsulates what Iâve showed here and much more.
We established 2 new GitHub public repositories for that purpose.
the main repository is a shared library, that contains basic functions and complex flow classes which you can use and add more to it using pull requests.
the second repository is a mix of pipeline-code-examples and tests for the tikal-pipelib and it is shared with the community, so you can use it and contribute to it as well
And youâre all welcome to contact me for more information.
THANKS!!!
And youâre all welcome to contact me for more information.
THANKS!!!