Is there any tool to create Jenkins Plugin? - plugins

I have a Jenkins job that is working fine. Now i need to create the Jenkins Plugin bundling the whole functionality of the current Jenkins job.
I know we can create Jenkins job using maven, jelly and java. But I want some easy way of creating the plugin.
Do anyone know any tools that does my requirement.?????

Well, as you already known, in most cases, we develop jenkins plugin using maven & java.
But as an alternative, you can always choose other methods if you you like and here are some:
If you are not good at Java and would like to try develop jenkins plugin in Ruby or Python , you can try:
https://github.com/jenkinsci/jenkins.py/wiki
https://github.com/jenkinsci/jenkins.py/wiki/Getting-Started-With-Python-Plugins
Jenkins Plugin development in Ruby
If you don't like Maven and want to try other build tool like Gradle, then this is for you:
https://wiki.jenkins-ci.org/display/JENKINS/Gradle+JPI+Plugin
Also, I found in CloudBee site there is a way to develop jenkins plugin using only Groovy script,this is super easy and I am sure you will like it.
https://www.cloudbees.com/event/topic/groovy-way-write-jenkins-plugin

Related

How can I run Jenkins job via eclipse?

I don't use maven, I use ant (if it related...)
Should I create a new plugin?
Is there any exist one?
I tried to look for instruction but all related to maven.
Thanks
You can try this plugin which adds a view to Eclipse and allows you to monitor and trigger build jobs on Jenkins or Hudson.

Updating Version of Jenkins Netbeans Plugin Uses

I'm trying to develop a plugin for Jenkins using NetBeans, which uses the stapler hudsons Jenkins plugin for Jenkins support. However the version of Jenkins it is using is 1.509 when I need 1.580. Is there a way for me to update the Jenkins version the NetBeans plugin is using?
I guess the only way to tweak it is to download the source and compile the plugin. But honestly this is not useful, since the next (Jekins and/or NetBeans) update will break it again. The best thing to do is write an email to "Jesse Glick", who is the maintainer of the plugin, see: https://github.com/stapler/netbeans-stapler-plugin/graphs/contributors. The email is on the GitHub page.

How to integrate qunit with eclipse

How can I integrate qunit with eclipse? I could not find a plugin for the same in Eclipse marketplace.
Is there any other way by which I can integrate the two?
Should it be through JS Test Driver?
Here's one way to do this:
Download and install the headless browser "phantomJS". It has a plugin for launching qunit tasks.
In Eclipse, define a menu item Run/External Tools/Configuration with a command line like this
phantomjs-1.9.7-linux-x86_64/bin/phantomjs phantomjs/run-qunit.js nttp://mysite.com/myproject/tests/qunit-composite.html
If you have many test scripts and test cases, and if want to store your run results in a database, then additionally do this:
Install the Build Server TeamCity, it is free and has an Eclipse plugin.
Configure and start TeamCity from the command line.
In TeamCity, add a new project with a single Build Step with the phantomjs call mentioned above
All this brings more complexity of course.

CloudBees + PlayFramework + Eclipse

I want to develop and manage my DEV#CloudBees and RUN#CloudBees workspace from Eclipse, for a PlayFramework project, and I will have to work with it from several different PC. I'm using the Cloudbees SVN repository, Jenkins CI solution, database ... everything.
I installed CloudBees and PlayFramework plugins for Eclipse, created my CloudBees account, SVN repository, project, Jenkins Job and database. I've created my Play project, eclipsified it.
I understand and I have tested each component of my targeted working environment but I didn't manage to make them work smoothly together.
1- I've seen some Play modules for CloudBees but it is only for command-line use. Is there a nice Eclipse plugin wrapper for this ?
2- I have some issues writing the build.xml, especially when referencing the PlayFramework libs, because I can not use the local installation as it won't work on Jenkins.
3- How can I deploy to RUN#CloudBees from Eclipse ? If i use the CloudBees plugin, it doesn't package the PlayFramework libs.
4- How can I use the testing features of Play to be integrated in Jenkins ?
I have a lot of questions but it is enough for now :) By the way, PlayFramework is awesome and CloudBees a life-saving work environment.
Thank you for your help.
Contact the support, they are really helpful..and fast!
they do have a plugin for Jenkins, ask to get it installed on your server..I use the command
play auto-test
and it works fine. You'll need some code to check for failures depending on the .failures files. check this link
I received a very quick and efficient answer from Cloudbees support.
It confirms what mericano1 and Ryan said (thanks to them).
The CloudBees Jenkins service let users install some customization plugins like the Play! Framework one !
After adding it to the core configuration, you can add a new build step "Play!" in your job configuration and set the Play! commands you need. For example "clean", then "deps --sync" and finally "auto-test". You can also add the war -o toto.war if you need the binary.
You can check the "Play! auto-test reports" checkbox. You'll have an additional icon "Play! Test Result" in the left menu of the build result page to watch the ... Play test result page (unbelieavable :)).
Still in the job configuration, you can check the "Deploy to CloudBees" features. I didn't tried but I think the Play! libs issues wouldn't be resolved. So, add the cloudbees 0.2.2 plugin in your Play! project dependencies.yml, and you can add the bees:app:deploy command in your build step.
For Eclipse, the CloudBees plugin is fully functionnal, once you have configurated your Jenkins job. But you should stay with the Play! process to develop locally and not the Run DEV#/CloudBees Local.
1) The cloudbees module is only for the command-line. There is no Eclipse plugin (that I know of). However, the command-line is really simple play bees:app:deploy
2) Not sure here
3) Deploying Play Framework Apps is a bit different from deploying J2EE (because of the necessary play war command), thus deploying a Play app to Cloudbees from Eclipse might not be possible. However, see 1).
4) I think there is a Play plugin for Jenkins. I have never used it on/off Cloudbees.
OK, so I provided some help on questions 2 and 4, and unfortunately, the answers may not have been what you hoped. I suggest switching to command-line when it is time to deploy.
In eclipse click on external tools menu and create a new command as noted by Ryan in 1).
then you can simply click on the external tool icon.

Continuous integration & eclipse plugin development

I am developing a set of eclipse plugins, and I have several JUnit plugin tests that actually start another instance of eclipse, create a mock workspace and a mock project and runs various operations on them. I want to put that on continuous integration and I am at loss as to where to start. I am using Hudson, would there be any plugins that makes that easier? Can those tests launch eclipse in headless mode or something on the CI server? Pointers would be much appreciated.
I think the best solution for building Eclipse-based software currently is Tycho - it is based on Maven and uses your standard Eclipse files (like manifest, target platform, product definition). I got started with it using an intro from this blog: http://mattiasholmqvist.se/2010/02/building-with-tycho-part-1-osgi-bundles/, and it worked really well. We also use Hudson, and since Tycho is Maven-based, Hudson integration was trivial and worked simply by calling Maven, which Hudson supports out of the box.
As far as I know, Buckminster tries to solve these problems: you can create descriptors, and then Buckminster can execute your tasks.
For Hudson there is a Buckminster module, that helps executing the Buckminster builds.
maybe this helps you to avoid plugin tests? ;) i like to avoid them... by using mock objects...
http://blog.srvme.de/2010/12/10/mock-eclipse-ifile/