Monday, July 16, 2018

Jenkins and the pain

Jenkins and the pain



If you know what is desperation and suffering - you know where I am at the moment. Ive got my head around Jenkins. I was never a server guy or a CI expert but used it on many projects. And there is a point where you set it up for yourself or an official project. These are the times when I realize I know nothing.

So Jenkins is surely amazing to automate things.  And true its mostly used for CI and deployment purposes. Ive been checking out the plugin ecosystem comes with Jenkins and its amazing. Hundreds of really useful additions.

And Ive fallen into the same issue that makes me crazy each single time. I used the system often to run tests and generate reports. You can get the summary, charts, recorded videos and individual test reports and lot more. And I couldnt even get a single one of them. I have a properly working Selenium environment. Im using the PHP remote controller and PHPUnit Selenium subclasses. There are all running just fine in any environment. But thats all. I can generate many fancy reports - and thanks God Jenkins needs the only one I cannot provide: HTML. Google was kind to explain me that its even a satanic byproduct or I can use some really enterprise wrapper tools which probably would cost my life to setup.

Jenkins by default has at least a dozen of different plugins supporting Selenium workflow. Either their documentation mentioned that its only working with HTML tests or was lacking of any explanation.

And in the meantime I realized whats my problem. Ive found exclusively special use cases. A combination of certain elements. And of course you either change your strategy or look for another help. Somehow I feel that I want to stick with the PHP binding. It would a pain to edit the pure HTML test harness.

Sure, I could go to forums or StackOverflow but its so frustrating when a simple task - that any developer could solve in half an hour - takes me weeks to find out. So no, not this time. Ill make this work no matter what.

Well, it would be a shame to leave you with all this negative attitude. Its not all that bad. Jenkins on its own is really handy. There are native packages you can install - also for OS-X - and I could install it without any problems. I did it also on a virtual machine (why not) and works fine though any package managers. It runs as a service and the serves access works without any problem. Packages can be installed and its really simple to create jobs that are doing elementary operations.

Then you have bigger challenges to select the plugins and wire them together. Im wondering if I can use my local Jenkins to install Drupal sites quickly (full core and contrib fetch plus install profile) - or doing general maintenance operations.

Honestly I hate going to sleep without results. Its like the same feeling when you break your favorite toy or realize Metallica has a new album. Except - except the day when you solve the problem - and I swear it resets your brain so that time youve been struggling seems to be never happened. Splendid.

---

Peter

go to link download

No comments:

Post a Comment