pitchplay / jenkins-docker-volume

Bootstrapped Docker volume for use with the Jenkins container
MIT License
2 stars 0 forks source link

Resolve jenkins plugin dependencies #4

Open Lykathia opened 9 years ago

Lykathia commented 9 years ago

While looking into #3 noticed that both solutions did not support dependency resolution. This should be fixed.

java.io.IOException: Dependency scm-api (0.2), git-client (1.16.1) doesn't exist
    at hudson.PluginWrapper.resolvePluginDependencies(PluginWrapper.java:480)
    at hudson.PluginManager$2$1$1.run(PluginManager.java:369)
    at org.jvnet.hudson.reactor.TaskGraphBuilder$TaskImpl.run(TaskGraphBuilder.java:169)
    at org.jvnet.hudson.reactor.Reactor.runTask(Reactor.java:282)
    at jenkins.model.Jenkins$7.runTask(Jenkins.java:903)
    at org.jvnet.hudson.reactor.Reactor$2.run(Reactor.java:210)
    at org.jvnet.hudson.reactor.Reactor$Node.run(Reactor.java:117)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
    at java.lang.Thread.run(Thread.java:745)

May 14, 2015 2:09:39 AM jenkins.InitReactorRunner$1 onTaskFailed
SEVERE: Failed Loading plugin ghprb
java.io.IOException: Dependency github-api (1.66), ssh-agent (1.3), git (2.2.4), github (1.9.1) doesn't exist
    at hudson.PluginWrapper.resolvePluginDependencies(PluginWrapper.java:480)
    at hudson.PluginManager$2$1$1.run(PluginManager.java:369)
    at org.jvnet.hudson.reactor.TaskGraphBuilder$TaskImpl.run(TaskGraphBuilder.java:169)
    at org.jvnet.hudson.reactor.Reactor.runTask(Reactor.java:282)
    at jenkins.model.Jenkins$7.runTask(Jenkins.java:903)
    at org.jvnet.hudson.reactor.Reactor$2.run(Reactor.java:210)
    at org.jvnet.hudson.reactor.Reactor$Node.run(Reactor.java:117)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
    at java.lang.Thread.run(Thread.java:745)

May 14, 2015 2:09:39 AM jenkins.InitReactorRunner$1 onTaskFailed
SEVERE: Failed Loading plugin github-oauth
java.io.IOException: Dependency github-api (1.58), git (2.0.3) doesn't exist
    at hudson.PluginWrapper.resolvePluginDependencies(PluginWrapper.java:480)
    at hudson.PluginManager$2$1$1.run(PluginManager.java:369)
    at org.jvnet.hudson.reactor.TaskGraphBuilder$TaskImpl.run(TaskGraphBuilder.java:169)
    at org.jvnet.hudson.reactor.Reactor.runTask(Reactor.java:282)
    at jenkins.model.Jenkins$7.runTask(Jenkins.java:903)
    at org.jvnet.hudson.reactor.Reactor$2.run(Reactor.java:210)
    at org.jvnet.hudson.reactor.Reactor$Node.run(Reactor.java:117)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
    at java.lang.Thread.run(Thread.java:745)
Lykathia commented 9 years ago

Need to build up a list of dependencies that have already been installed, so we can skip installing them a second time. This puts a bit of ownership on the end user to make sure any plugins are compatible with each other at specific versions.

emdem commented 9 years ago

I've been hanging out on freenode so I may hop in the jenkins ci related chats and see if they have any plans.