Showing posts from 2016

Code Quality Check

Every software development needs coding; without it, nothing can be developed. The quality of software depend on the way developer write code. It's an essential part of the system and the behavior of the system depends on it.  A small mistake in coding may make software vulnerable and unstable.

Quality engineering works hard to find bugs to avoid potential problems with the software. They spend numerous hours and put tremendous effort into finding any problems with the software and reporting it to the developers.

Cost of fixing the defects at various level.

The Cost of fixing defects at latter stage increases exponentially, hence, you need more hours of QA Engineers and Developers to fix and run the entire release cycle again.

If we can save some amount of time and effort from above, we can utilise resources in more productive way.
Can we make sure code is better written, tightly secure, having no potential bug and right libraries  used.

If we can implement it, we can at-least make sure…

Maven Errors - Few common Maven error and troubleshooting part 2

In this post i am going to talk about maven build troubleshooting, Here is the list few maven error and its troubleshooting.  This is the part 2 of the Troubleshooting tips.

concurrent.ExecutionException If you see following type of error in your release build. [ERROR] java.util.concurrent.ExecutionException: java.lang.NullPointerException [ERROR] [ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch. [ERROR] Re-run Maven using the -X switch to enable full debug logging. SolutionYour build job is having parellel execution, Please contact Release team to "-T -1C" get removed from the job.

Docker image building failed due to Unable to locate package If you see following type of error in non java projects release build.
[INFO] [91mE: Unable to locate package [ERROR] Failed to execute goal org.apache.maven.plugins:maven-release-plugin:2.5.2:prepare (default-cli) on project : Maven execution failed, exit code: '1' -> [Help 1] SolutionIt is ha…

Manage Docker images on local disk

Docker is very powerful containerization technique, and it is becoming famous in short time. People are adapting and containerizing their applications for deployment.
Soon container become very heavy and consume too much of disk space, If you do not delete old images and layers you may soon run out of disk space. Here i am trying to cover the ways to regain the disk space consumed by docker images. Moving docker filesystem to bigger mount point.Usually docker keeps all temporary files related to image building and layers at /var/lib/docker This path is local to the system usually at root partition "/". You can mount a bigger disk space and move the content of /var/lib/docker to the new mount location and make sym link.  This way even docker images occupy space, will not affect  your system as it will be using some other mount location.
Remove Old docker imagesHere are few ways to remove old and unused docker images Removing stopped containerdocker ps -a | grep Exited | awk '{prin…

Authentication Error while pulling images via docker-maven-plugin

docker-maven-plugin is the great plugin provided by spotify to build docker image during maven build.

There is very strange error or behaviour I have seen during the image creation. Plugin expects that image which Dockerfile is pulling needs to be passed with username and password, which should not an essential parameter as most of the images does not need any auth to be downloaded. 
You may see this error
[INFO] Building image your-application:0.0.3 Step 1 : FROM ubunt:latest [INFO] ------------------------------------------------------------------------ [INFO] Reactor Summary: [INFO] [INFO] your-application..................................... FAILUER [ 3.619 s] [INFO] ------------------------------------------------------------------------ [INFO] BUILD FAILURE [INFO] ------------------------------------------------------------------------ [INFO] Total time: 39.938 s (Wall Clock) [INFO] Finished at: 2016-06-25T16:26:06+00:00 [INFO] Final Memory: 65M/1216M [INFO] ----------------------…

Lessons Learned in Jenkins Configuration Management

Summary: Managing the configuration of Jenkins—the popular open source, continuous integration and continuous delivery application—is not trivial. Even a small change can make the platform less stable or result in problems. Vishal Sahasrabuddhe talks about his experiences using Jenkins and offers tips to take advantage of its many powerful features to automate deployment and increase productivity and product quality. (Originally published on )

Configuration management requires that you automate application build, package, and deployment. There are many tools used to accomplish these tasks, but Jenkins is one of the most popular open source frameworks employed by teams today.
Jenkins is widely used by developers to automate not only application procedures, but also continuous integration and continuous delivery. It comes with many powerful built-in features, and there are also hundreds of plugins that help it integrate with other tools and perform a variet…

Lessons Learned in Jenkins Management

Lessons Learned in Jenkins Management:

Managing the configuration of Jenkins is not trivial; even a small change can make the platform less stable or result in problems. Vishal Sahasrabuddhe talks about his real-world experiences with Jenkins and details how to take advantage of its many powerful features while avoiding possible pitfalls.

How to provide effective training/presentation

Providing effective training is an art form. It requires much dedication and skill to engage your students so they believe they have benefited. Simple presentations can feel dull and unengaging, making the topic less interesting and many times leading to little or no knowledge transfer, even if the subject was covered correctly and the information was spot on. Gaining—and keeping—the interest of your audience is paramount in any successful training program. Here are a few essentials to consider when creating your presentation to make it more effective: Start with the basics

Working in Inmobi - My experience

Inmobi is a Mobile Advertising organization and making a huge impact all over the Market.
I would like to talk about some of my personal experience working with Inmobi as an employee.
Work culture - Just one word, awesome. They have lots of work with tight deadlines, but employee rarely need to compromise with their personal life. Inmobi work policies are really employee friendly in all aspects. Its great to work together with like minded freaks to disrupt the market.

Setup Docker slaves for Jenkins

Jenkins is the one of the primary CI tool used in industry. Jenkins provide on cross planform support and have master-slave configuration. Your slave could be any operating system. Recently docker is becoming very popular for replacement of virtualisation up to some extend.
Today I will detail out the steps needed to make dynamically slave provision via docker images.
Setting up Host for Docker You need to have your base machine either VM or hypervisor etc and need to install with all prerequisite. Lets install docker now.curl -sSL | sh

Release Management and Release Engineering

Many times people get confused with the terms as Release management and Release Engineering. They interchange both the terms and use it as the same. Release Management and Release Engineering looks to be similar but both their functions are completely different in implementation, however both serves the same purpose in bigger picture of Releases.

Why I did not attend Infosys Interview

Some time back when i was looking for a job change, i got a call from an Infosys HR for an outstanding opening in their organization and they invited me for the interview. Since job description was nice, i decided to attend the interview and the story began…

 They scheduled an interview time and asked me to come with 2 photos and a resume. Photos were requested to be in formals (no round neck t- shirt), Humm that was weird to start with, as i was just attending their first round of interview.

Sample gradle file

Following details are part of previous blog

Here is the sample of base gradle file which can be acted as super pom for your project.
There are 2 profiles we have enabled whitebox-analysis and Coverage-analysis which does complete checks and only jacoco respectively.