What do you do when you see a tweet announcing that Kohsuke Kawaguchi (the creator of Jenkins CI) is looking to meet in your area with ‘real-world developers outside the Silicon Valley echo chamber’? Do you think twice before replying, or do you instantly say ‘Yes. Let’s meet’! What about the fact that you are not even doing ‘classical’ software development? Can you expect to help Kohsuke regain his confidence that he is in ‘continuous touch’ to Jenkins practitioners’ as in the early days of the project?
Having worked with Jenkins-CI in the life sciences context for the last few years, I am finding that Jenkins satisfies key requirements of a robust framework for efficient data pipelining integration, and analysis. Here I will briefly describe the attributes that make Jenkins-CI a suitable platform for data scientists
What was suggested in JENKINS-23772, was that instead of accepting only integers for the width, that the plug-in started to accept text values as well. This way
10% as valid values. The challenge in user requests like this, is how to maintain backward compatibility in your plug-in, while releasing a new version that changes objects and attributes.
figshare is a platform where users can upload and share images, graphs, presentations and other documents. These artifacts can be generated using different tools - including Jenkins. The BioUno figshare Plug-in integrates Jenkins and figshare. The figshare API uses OAuth 1.0, and requires data such as client key, client secret, token key and token secret stored in Jenkins.
What the Jenkins Credentials Plug-in does, basically, is store these credentials in a way that it is both safer and easier to maintain in Jenkins. Before that, users would add passwords as parameters in jobs or store credentials globally in Jenkins via plug-ins. This resulted in security problems, and was also difficult to maintain with a high number of jobs with different credentials.
More than a year ago I approached Bruno via a series of posts on the BioUno developer’s forum and discussed my frustration with the available Jenkins user interface controls for generating advanced, dynamic user interfaces for scientific applications. I had seen partial implementations of what I thought we needed in some Jenkins plugins, but none of them was well maintained or provided in a single plugin the features I wanted. So, I asked Bruno whether it would be possible to create a new plugin with all of these features? He said ‘yes’ and he took on this challenge. One of Bruno’s first questions was ‘What should we call this new plugin?’. To credit the BioUno project contribution and my expectation that this UI plugin would make all the related incomplete plugins obsolete, I answered ‘Uno-Choice’, the one choice for all your needs!
In this blog entry, I will describe a bit of the Uno-Choice plugin history until its contribution to the Jenkins project with a new name, Active Choices Plugin.