Need help on stale plugin selenium grid plugin

45 views
Skip to first unread message

Rouke Broersma

unread,
Mar 25, 2016, 7:44:07 AM3/25/16
to Jenkins Developers
I could really use some help on the selenium grid plugin: https://github.com/jenkinsci/selenium-plugin
I'm trying to bump the version number, the plugin seems to rely on selenium-server-standalone, but this package is no longer published to maven.
As a workaround the plugin seems to have a separate pom file that uses the maven antrun plugin to download the selenium-server-standalone jar from the hosting site, and then punlishes it to a (private local?) maven repository at 
This however does not seem to work on my end, nor in the build. 

I have instead tried using the selenium-server (non-standalone) jar because that IS published on maven, but then no server seems to want to start up.
I don't really understand how these asynchronous calls to start the server work so I'm having a really hard time debugging this.

The plugin maintainer has also not made a change in almost a year, and not released any updated plugin for almost two years. 
Any updates (for example to bump version number) have not been packaged and released since april 2014.

Rouke Broersma

unread,
Mar 25, 2016, 10:09:53 AM3/25/16
to Jenkins Developers
After reviewing the issue more, it seems like the plugin maintainer used to run the dist-server-standalone install build step manually, to install the selenium-server-standalone jar to the jenkins maven repository, but I cannot do this as I am not authorized, nor do I think this is the correct way to do this. I think this because I see no way for this build step to be ran when building the plugin.

See:

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-deploy-plugin:2.7:deploy-file (default) on project selenium-server-standalone: Failed to deploy artifacts: Could not transfer artifact org.seleniumhq.selenium:selenium-server-standalone:jar:2.53.0 from/to maven.jenkins-ci.org (http://maven.jenkins-ci.org:8081/content/repositories/releases).

I also now know that the selenium-server artifact cannot be used as a selenium grid, so the selenium-server-standalone artifact must be downloaded somewhow for this plugin to work. I think a better way would possibly be to use a backend-crawler script like how the chromedriver executable is downloaded but I do not have the neccesary experience to implement this in the current plugin.

Rouke Broersma

unread,
Mar 25, 2016, 10:54:05 AM3/25/16
to Jenkins Developers
Finally found in this pr: https://github.com/jenkinsci/selenium-plugin/pull/24
That indeed the dependency needs to be pushed to the jenkins maven repo for any version update to work, by someone with access to do this...
By running mvn package in dist-server-standalone/
This does not at all seem like a good way to go about this, honestly. But whatever. I'll create a pull request with the updated version and hope someone with access can
run the maven step to upload the jar, and can merge the pr since the maintainer is awol and can also release a new plugin version since it's been a while...

Rouke Broersma

unread,
Mar 25, 2016, 11:15:58 AM3/25/16
to Jenkins Developers
I have made two pr's. One updates to the latest available selenium version (latest available in the jenkins maven repo is 2.48.2), and another updates to the actual latest version 2.53.0.
The pr for the version that already exists in the maven repo just needs to be merged and a new plugin version needs to be released.
For the other pr, mvn package needs to be ran in the updated dist-server-standalone/pom.xml by someone with rights to upload to jenkins maven before the change is effective.
After that it should work and be ready to be released with latest selenium version.

Thanks in advance to anyone able to help out with this.

Rouke Broersma

unread,
Mar 25, 2016, 11:17:06 AM3/25/16
to Jenkins Developers
Version 2.48.2 pr not requiring jenkins maven update: https://github.com/jenkinsci/selenium-plugin/pull/55
Version 2.53.0 pr requiring jenkins maven update: https://github.com/jenkinsci/selenium-plugin/pull/56

Rouke Broersma

unread,
Apr 8, 2016, 10:11:06 AM4/8/16
to Jenkins Developers
I'm having an issue where one test is still failing on the cloudbees plugin ci server, but not locally. It kinda looks to me like the ci server is forking the tests even though forkCount has been set to 0 in the plugin pom.
When I look at the effective pom I see concurrency=2 in the properties, and I also see two locations where the maven-surefire-plugin is defined with forkCount=2. Could this be the issue? Does anyone know how to override this behavior if it indeed is the issue?

The tests cannot run concurrently because of heavy use of async calls in the plugin, I'm guessing.

Rouke Broersma

unread,
Apr 11, 2016, 12:59:23 PM4/11/16
to Jenkins Developers
Is there anyone that can help me out with this concurrency on maven surefire that should not be happening but is happening anyway?

Rouke Broersma

unread,
Apr 12, 2016, 5:13:54 AM4/12/16
to Jenkins Developers
I have figured out that the forkCount=0 was defined in pluginManagement instead of plugins and was therefore never applied.
Reply all
Reply to author
Forward
0 new messages