My scrapbook about anything which I learned or want to remember, Sometime about tech tips, thoughts and rambling. If you find anything useful don't forget to give thumbs-up :)

Breaking

Thursday, November 26, 2020

Jenkinsfile for Developers, What is that??


Jenkinsfile, this term might be common to you or might be something you never worried about but today I am going to share my personal experience with this. In my team, all the Jenkins and other promotional relation stuff are done by the dedicated DevOps team and usually, this is the norm in all organizations but recently, I was kind of fed up with doing the same manual steps for building my ML model and its deployment, I want something which I can control and design as I want to. I had a discussion with my friend, obviously a DevOps guy, and he helped me to understand Jenkinsfile and usage of it. So, I am going to share the same. 


Nowadays, Developers should know a little bit about DevOps is expected so if you nothing about Jenkinsfile not to worry, let's start from here.  Old Jenkins jobs are usually freestyle jobs where we have to use all the build steps one by one choosing from the "build step" section which does not provide a lot of flexibility in the build process. For more details, Kindy visit - https://www.jenkins.io/doc/book/pipeline/jenkinsfile/ 

Jenkins overcome that drawback by introducing Jenkinsfile (or called Pipeline) is a script kind of build steps that we can customize as per our requirement. Jenkinsfile is very easy to get especially Declarative Pipeline. If you have to design a Jenkinsfile for your project, don't start from scratch, Pick any existing Jenkinsfile, and alter it by adding your build steps.  You can use the below sample - 


As you can see in the above file, there are a few stages defined which are nothing but steps to build your code and deploy it via IBM UCD in the last 2 stages. Jenkins support so many stages and operations which we will go through one by one in the next few post. Till then... Happy Learning !!



Like the below page to get the update  
Facebook Page      Facebook Group      Twitter Feed      Telegram Group


No comments:

Post a Comment

Disclaimer

The postings on this site are my own and don't necessarily represent IBM's or other companies positions, strategies or opinions. All content provided on this blog is for informational purposes and knowledge sharing only.
The owner of this blog makes no representations as to the accuracy or completeness of any information on this site or found by following any link on this site. The owner will not be liable for any errors or omissions in this information nor for the availability of this information. The owner will not be liable for any losses, injuries, or damages from the display or use of his information.