| TED is
an international conference, which gives an opportunity to people worldwide,
to make 18 minutes or less presentation that concludes with a message. You
will find wide variety of topics and amazing presenters, who make ever
lasting impression with their lively (rather life time) presentation. TED has immense ideas that are worth watching! Watch out for presentations in http://www.ted.com/ |
August 9, 2013
TED - Ideas worth spreading
July 18, 2013
Custom Logo for Jenkins
For having your custom or company specific logo for Jenkins Instance, follow the steps below
- Create a custom image or logo of your choice in png format (refer title.png under <Jenkins_Install_Directory>/war/images for size specification.
- Replace <Jenkins_Install_Directory>/war/images/title.png with the custom image and your Jenkins Instance is all set with new look (i.e with Custom Image).
June 25, 2013
Get your EPF (PF) Statements online in two steps!
1. Registration
– Need to enter your identify proof like PAN / AADHAAR No and mobile number.
2. Download
E Passbook
Automatically you will be logged in after registration (your registration details will be sent to your mobile as well).
Automatically you will be logged in after registration (your registration details will be sent to your mobile as well).
For the first time user, your EPF e-statement will be
available for download in 3 working days (still better than queuing up in EPF
office J) .
Please note that you can download e-statements for multiple
accounts, if you have not transferred them yet into your latest PF
account.
April 24, 2013
Jenkins Multijob Plugin - Missing Slashes while traversing down
This article talks about the Missing Slashes (\\) while traversing from high-level to low-level jobs in a Jenkins Multijob project.
Lets assume a scenario where we have two free style jobs (low-level) jobA and jobB, which copies a set of files from Source to Destination path. And a Parent job (Multijob) parentA which calls jobA and jobB with Source and Destination path as parameter.
While passing Source and Destination dir from parentA to jobA and jobB, two slashes gets stripped off due to the Jenkins regular expression behaviour.
Input Entered for parentA:
Source: \\\\serverone\\\\pathone
Destination: d:\\\\temp\\\\testdir
As Received in jobA and jobB:
Source: \\serverone\\pathone
Destination: d:\\temp\\testdir
Here is the pictorial representation of our discussion..
For every higher level you add before parentA, multiply the number of slashes in that particular level by 2.
grantparentA -> parentA -> jobA => 8 -> 4 -> 2
You might wonder that we may have to add 8 slashes for the UNC Path (Source: \\\\serverone\\\\pathone) but your jenkins does not work if you do so. To explain further about UNC Path => When we supply 4 slashes to the parent job, child job will get value \\serverone\pathone not \\serverone\\pathone (which Jenkins expects).
Hence we are using 4 slashes from parent jobs instead of 8.
Lets assume a scenario where we have two free style jobs (low-level) jobA and jobB, which copies a set of files from Source to Destination path. And a Parent job (Multijob) parentA which calls jobA and jobB with Source and Destination path as parameter.
While passing Source and Destination dir from parentA to jobA and jobB, two slashes gets stripped off due to the Jenkins regular expression behaviour.
Input Entered for parentA:
Source: \\\\serverone\\\\pathone
Destination: d:\\\\temp\\\\testdir
As Received in jobA and jobB:
Source: \\serverone\\pathone
Destination: d:\\temp\\testdir
Here is the pictorial representation of our discussion..
For every higher level you add before parentA, multiply the number of slashes in that particular level by 2.
grantparentA -> parentA -> jobA => 8 -> 4 -> 2
You might wonder that we may have to add 8 slashes for the UNC Path (Source: \\\\serverone\\\\pathone) but your jenkins does not work if you do so. To explain further about UNC Path => When we supply 4 slashes to the parent job, child job will get value \\serverone\pathone not \\serverone\\pathone (which Jenkins expects).
Hence we are using 4 slashes from parent jobs instead of 8.
April 2, 2013
Jenkins - Multijob Plugin - Null Pointer Exception
Jenkins Multijob plugins comes handy when you wanted to run some set of jobs in parallel or a combination of sequential or parallel.
Here is a small discussion around the Null Pointer Exception with Multijob Plugin and the fix for the same.
Environment Details:
Jenkins 1.499
Multijob Plugin version 1.7 (parameterized-trigger.jpi is mandatory for Multijob plugin)
Problem Statement:
We have 3 defined using Multijob plugin as follows
Multijob_Parent
Multijob_1A
Multijob_1B
When you run the top level job (sayMultijob_Parent), sometimes the following issue occurs
C:\Program Files (x86)\Jenkins\jobs\MultiJob_Parent\workspace>exit 0
Starting build job MultiJob_1A.
Starting build job MultiJob_1B.
Finished Build : #34 of Job : MultiJob_1A with status :SUCCESS
Finished Build : #23 of Job : MultiJob_1B with status :SUCCESS
FATAL: null
java.lang.NullPointerException
at com.tikal.jenkins.plugins.multijob.MultiJobBuild$MultiJobRunnerImpl.evaluateResult(MultiJobBuild.java:69)
at com.tikal.jenkins.plugins.multijob.MultiJobBuild$MultiJobRunnerImpl.isFailure(MultiJobBuild.java:59)
at com.tikal.jenkins.plugins.multijob.MultiJobBuild$MultiJobRunnerImpl.run(MultiJobBuild.java:51)
at hudson.model.Run.execute(Run.java:1543)
at hudson.model.Run.run(Run.java:1489)
at com.tikal.jenkins.plugins.multijob.MultiJobBuild.run(MultiJobBuild.java:43)
at hudson.model.ResourceController.execute(ResourceController.java:88)
at hudson.model.Executor.run(Executor.java:236)
In this example, both Multijob_1A & Multijob_1B have succeeded but Multijob_Parent have failed with null pointer exception.
Assume a senario where you have 3 levels of jobs, sometimes failure in 3rd level, might have prevented some jobs to start, which is even more dangerous.
Solution:
Here is the fix - https://issues.jenkins-ci.org/browse/JENKINS-16042, provided by authors and follow the below steps to upgrade the Multijob Plugin.
Steps to upgrade the Multijob Plugin:
Here is a small discussion around the Null Pointer Exception with Multijob Plugin and the fix for the same.
Environment Details:
Jenkins 1.499
Multijob Plugin version 1.7 (parameterized-trigger.jpi is mandatory for Multijob plugin)
Problem Statement:
We have 3 defined using Multijob plugin as follows
Multijob_Parent
Multijob_1A
Multijob_1B
When you run the top level job (sayMultijob_Parent), sometimes the following issue occurs
C:\Program Files (x86)\Jenkins\jobs\MultiJob_Parent\workspace>exit 0
Starting build job MultiJob_1A.
Starting build job MultiJob_1B.
Finished Build : #34 of Job : MultiJob_1A with status :SUCCESS
Finished Build : #23 of Job : MultiJob_1B with status :SUCCESS
FATAL: null
java.lang.NullPointerException
at com.tikal.jenkins.plugins.multijob.MultiJobBuild$MultiJobRunnerImpl.evaluateResult(MultiJobBuild.java:69)
at com.tikal.jenkins.plugins.multijob.MultiJobBuild$MultiJobRunnerImpl.isFailure(MultiJobBuild.java:59)
at com.tikal.jenkins.plugins.multijob.MultiJobBuild$MultiJobRunnerImpl.run(MultiJobBuild.java:51)
at hudson.model.Run.execute(Run.java:1543)
at hudson.model.Run.run(Run.java:1489)
at com.tikal.jenkins.plugins.multijob.MultiJobBuild.run(MultiJobBuild.java:43)
at hudson.model.ResourceController.execute(ResourceController.java:88)
at hudson.model.Executor.run(Executor.java:236)
In this example, both Multijob_1A & Multijob_1B have succeeded but Multijob_Parent have failed with null pointer exception.
Assume a senario where you have 3 levels of jobs, sometimes failure in 3rd level, might have prevented some jobs to start, which is even more dangerous.
Solution:
Here is the fix - https://issues.jenkins-ci.org/browse/JENKINS-16042, provided by authors and follow the below steps to upgrade the Multijob Plugin.
Steps to upgrade the Multijob Plugin:
- Upload hpi suggested in the above link.
- Click "Install without restart" button
- Go to Manage jenkins -> Manage Plugin -> Installed -> uninstall the multijob plugin.
- Go to Manage jenkins - Click "Prepare for shutdown"
- Stop Jenkins Service
- Start Jenkins Service
- View the plugin version under installed plugin - should be updated to snapshot version by now
- Verify that the multijobs are in place.
Subscribe to:
Posts (Atom)

