How to execute Jenkins jobs programatically, part 2

In this post we saw how to trigger a Jenkins job in a programatic way, with a very simple source code snippet in Groovy to illustrate how to do it. In this post we’ll revisit the same topic, but with a Bash script. As you’ll see, the script is more sophisticated as it not only runs the job, but also waits the job to complete and retrieve an hypothetical file hosted as an artifact.

Tips for taking the CKA exam

Some days ago I decided to take the Certified Kubernetes Administrator exam, after postponing it for almost a year. My voucher was about to expire, and one of the reasons that I took so long was that the more I read about it the more scared I was to schedule it. Was this fear reasonable? Well, I scored 90% and I can assure you I’m not a Kubernetes expert. With this post, I hope I help you to clear your doubts to pass the exam.

My experience with hiring processes

In some weeks I’ll be starting a new adventure in another company. In this post I’m sharing some tips and ideas about hiring processes after sending countless resumes, facing innumerable interviews, technical challenges, and finally being hired by a promising team. My previous experience Before I decided to leave my current employer I participated in no more than three hiring processes, so we can say that I had almost no experience at all in terms of how to behave and how to succeed.

Monoliths are bad... are they?

Some things happened recently that made me write this post: First one, HEY was released. If you are not from this planet and never heard about HEY, you only need to know that it is a new and peculiar email service that made a bit of noise in social networks due to some issues with Apple. Anyway, the point is that David Heinemeier Hansson made some statements about its architecture on Twitter… he declared it was a monolithic application.

Domain-Driven Design: The cool parts (Part 2)

In the first part of this series we introduced the basic principles that serve as a core of the Domain-Driven Design: The ubiquitous language, the model and the layered architecture. In this post we’ll review a first bunch of components used to model the domain: Entities, Value Objects, Services, Modules and Aggregates. Entities and Value Objects An Entity is the most basic kind of component in the set of tools to model your domain, and basically it’s an object that represents something that has an unique identity, that is preserved over time and thorough different representations.

How to execute Jenkins jobs programatically

The most common usage of Jenkins is to trigger job builds automatically in response to changes in a source code repository. In some other cases you may need to trigger jobs because of any other reason. For example, imagine that you want to execute a Jenkins job after your alert management system detects something is wrong, so it can execute a pipeline that fixes everything and the alert is resolved. This is just an example, but the idea of this post is to be able to execute a Jenkins job programatically, and not using the GUI or anything related to Jenkins itself.