Incrementals / install-plugins.sh

26 views
Skip to first unread message

Gavin Mogan

unread,
Jun 10, 2019, 2:13:04 AM6/10/19
to Jenkins Developers
I've been trying to figure out clean solutions to the ci.blueocean docker image having the latest master code, but actually having all its dependencies properly.

My plan was to install blueocean using jenkins:lts and install-plugins, then overwrite them with master built images.

That works pretty good, but when blueocean required new deps, things got weird and didn't auto update properly, which left a docker image that didn't work without manual intervention.

I started to look into install-plugins.sh loading incrementals, which seems like it should work. But I'm not sure I can easily and safely figure out which is the latest master. Right now i'm using blueocean:incrementals;io.jenkins.blueocean;1.18.0-rc4039.8404684f7813 in my plugins.txt, but I think thats a specific snapshot. I figured from the docs that mvn incrementals:updatePluginsTxt -DpluginsFile=plugins.txt should work, but it kept erroring out (I just just realized as typing that its because there's no pom.xml to say where to get the incrementals prefix, mvn incrementals:updatePluginsTxt -DpluginsFile=plugins.txt does work).

Is the maven step the right way to get latest master in your plugins.txt?

Every time I did download the incremental (after https://github.com/jenkinsci/docker/pull/834 fix) I would end up with 1.16, not 1.17 or 1.18 of blueocean. I think because of the declared dep the display url has.

So
1) is there a solution for above to actually get the right plugin and deps?
2) Is there any reason install-plugins is a bash shell script? and not a jar file with the relavent update center type classes that does all the resolving the same as the main application does?

Gavin

Jesse Glick

unread,
Jun 10, 2019, 10:22:15 AM6/10/19
to Jenkins Dev
On Mon, Jun 10, 2019 at 2:13 AM 'Gavin Mogan' via Jenkins Developers
<jenkin...@googlegroups.com> wrote:
> I started to look into install-plugins.sh loading incrementals

IMO you should avoid `install-plugins.sh` altogether. It is much more
straightforward, reliable, and efficient to get the plugins you need
right from Maven.

https://github.com/jenkinsci/parallel-test-executor-plugin/blob/aa366ee02baf7f1c943aa6859f355dd6ae6c8412/demo/Makefile#L8-L20
https://github.com/jenkinsci/parallel-test-executor-plugin/blob/aa366ee02baf7f1c943aa6859f355dd6ae6c8412/demo/Dockerfile#L18-L19

Natasha Stopa

unread,
Jun 10, 2019, 2:12:13 PM6/10/19
to Jenkins Developers
Hi Gaven, 
As part of my Google Summer of Code project I am working on converting the install-plugins bash script to java. It's still a work in progress, but you can find the project page here: https://jenkins.io/projects/gsoc/2019/plugin-installation-manager-tool-cli/, repository here: https://github.com/jenkinsci/plugin-installation-manager-tool, and the gitter channel for the project here: https://gitter.im/jenkinsci/plugin-installation-manager-cli-tool.  I definitely welcome any and all feedback. 

-Natasha 
Reply all
Reply to author
Forward
0 new messages