Retry failed build in Jenkins

Failing build is not what we want to have in out Jenkins, but it happens sometimes. Not always it means that something “went terribly wrong”, but it can be a temporary problem in communication with the code repository or another, not dangerous error. In such cases, it would be great if the build could be retried in an automated way. It’s possible and very simple to implement with Jenkins. Moreover, we don’t need to create a complex configuration. Everything we need is just a plugin – Retry Failed Builds plugin. There are a lot of helpful plugins in Jenkins, and Continue reading

Nginx Ingress in GKE – wrong client IP

Google Cloud Platform is one of the leading Cloud Providers, with Amazon Web Services and Microsoft Azure. Many people think that AWS is the best choice because is the most mature. But with “the best” cloud provider is like with anything in the IT world – it depends. When we talk about the Kubernetes, the leading container orchestration tool, it seems that Google Cloud Platform is the best option. After all, Kubernetes has been designed and built by Google, and how it’s maintained by the Cloud Native Computing Foundation with Google as the founding member. So it should be a Continue reading

Fail to load plugin Findbugs SonarQube 7.4

SonarQube is a very powerful tool, which can be used to inspect your code quality. It is able to detect bugs, code smells, and security vulnerabilities and provides continuous inspections. Many Developers and the whole Teams use this fantastic tool on a daily basis. SonarSource is improving SonarQube, so it’s a normal behavior, that sometimes we need to upgrade our application to a newer version. If you just did that and now you see “Fail to load plugin Findbugs” in your logs, AND you tried to upgrade to the 7.4 version, I think I have a solution of your problem. Continue reading

Jenkins Job DSL Playground – how it works

Working with Jenkins Job DSL code sometimes is a pain in the neck. Especially if you have very big and complex scripts. You can make a mistake very quickly, so it would be great if there could be a way to test your code before the seed deployment. Of course, you can test your DSL scripts outside of Jenkins, but sometimes you don’t need to run the whole bunch of tests, right? You just want to check only the small part of your code… What if I tell you that you can do that? Ladies and gentleman, let me introduce Continue reading

Ansible – boolean variable in extra vars

Passing variables to Playbook with extra vars flag is something normal during the daily work. Even though Ansible offers two ways to do that, you can face the problem when you need to set the true or false values. You should not do something like —extra-vars “foo=true” with the boolean values. I know, it’s quite annoying, but we need to deal with it. So, if you read this post, you wonder how you can pass the boolean variable in extra vars. And now I want to tell you how to do that in a proper way. Variable Precedence First, let’s Continue reading

Jenkins e-mail notification with Office365

Jenkins is a great tool for automation and building the Continuous Integration and Continuous Delivery/Deployment (whatever you want) systems. But the more jobs you create, the more complicated Jenkins will be. Hence you should have some tools for monitoring whether everything is ok. The most basic way to monitor Jenkins’ jobs is e-mail notification. More and more companies choose Office365 as their e-mail service. Today I will show you how to configure Jenkins e-mail notification with Office365 because it’s not so obvious as you may think. I don’t want to show you how to configure and run Post Build Publisher, Continue reading

Free IT e-books with Jenkins

Maybe some of you know PacktPub – part of the Pack Publishing Limited Company. They publish once a day a free IT e-books, which can be saved and downloaded from the account. Every day one can download another e-book from the very big library. It’s a really really great possibility, but it has one, serious problem. We must remember to take a look at the page every day. Without this, we may miss something interesting. Moreover, manual checking is not what we want to do. You wouldn’t be there if you like doing manual things, which can be done automatically! Continue reading

How to run Jenkins with docker?

Sometimes no one wants to deploy and configure the whole server and applications. Especially when the time is the scarce resource. Developers know about it – they face this problem every day. One of the solutions is docker. It helps with deploying, provisioning and automating development and production environments without the big workload. Docker can help also with learning. You do not need the create separated virtual machines for your labs. The only one you need is docker and your own notebook/PC. Forget about long configuration processes and subsequent work expenditures (removing, cleaning etc.). If you want to learn some Jenkins, Continue reading

Deploying multiple vSphere VMs with Terraform

Automation doesn’t mean only the ability to automate some process and repeating it over and over again. It means also the ability to automate every automated process – if it’s possible of course. So even if we can automatically deploy VM, why shouldn’t we try to deploy multiple machines? Everything is fine until we need to deploy three, four or more same virtual servers. It would be very annoying unless we automate also this process – process of deploying multiple vSphere VMs with Terraform. If you haven’t read my previous article, you can do it here: Deploying vSphere VM with Terraform. Continue reading

Terraform vSphere provider is alive again – hostname variable

Yes, I have been waiting for it for a long time! When Hashicorp decided to separate Terraform Core from Providers, vSphere Provider died. It lasted two months – no merging, no new releases. But it has changed at the end of the August – Chris Marchesi (better known as vancluever) took the matter into his own hands and he’s now taking care of re the repository. It’s great news, especially for those of us who use Terraform in the daily work with the vSphere. Terraform vSphere provider allows to use different hostname and name Chris has made a lot of work since Continue reading