Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Try to support installation of specific versions of plugins #104

Closed
buep opened this issue Feb 12, 2018 · 19 comments
Closed

Try to support installation of specific versions of plugins #104

buep opened this issue Feb 12, 2018 · 19 comments

Comments

@buep
Copy link
Member

buep commented Feb 12, 2018

For now we only support latest - let's try recommendation by @ndeloof in this comment #43 (comment)

@buep buep mentioned this issue Feb 12, 2018
@steven-foster
Copy link

steven-foster commented Feb 13, 2018

would this support installing from http? we use some internally developed plugins that are not hosted in the update center (they wouldn't be useful to anybody)

our current bash/groovy configuration grabs the .hpi files and installs them directly

@ndeloof
Copy link
Contributor

ndeloof commented Feb 13, 2018

@steven-foster the goal here is to improve plugins and dependency management, so cherry-picking binaries from outside update center without metadata is out of scope imho.

@daniel-beck
Copy link
Member

@ndeloof @steven-foster
The solution to that should probably involve being able to configure additional update sites, like UpdateSites Manager Plugin does. Coupled with something like Juseppe it's a clean solution using Jenkins builtin functionality.

@daniel-beck
Copy link
Member

daniel-beck commented Feb 13, 2018

@ndeloof

cherry-picking binaries from outside update center without metadata is out of scope imho

Note that this will make this issue impossible to resolve, as update sites only advertise the latest release (compatible with the core version, more or less). (Unless you start consuming release-history.json and replace the advertised version number with one listed in there, hoping the URL is the same otherwise.)

@steven-foster
Copy link

Thanks for the Juseppe pointer, didn't come across this when looking at self-hosting plugins

@ndeloof
Copy link
Contributor

ndeloof commented Feb 13, 2018

@daniel-beck plugin management need indeed to be updated in many places.
http://updates.jenkins-ci.org/download/plugins/ let us download arbitrary plugin version but not metadata about them (some time ago @ydubreuil opened a PR to get them published as well for this exact same purpose)

@buep
Copy link
Member Author

buep commented Feb 16, 2018

@steven-foster in case you don't get your plugin installation use-case to work, please make another issue for future work of maybe supporting your situation with self-made non-public plugins.
I know a few of our customers that have such as well, so it could be something to consider for future versions.

But it is out of scope on this issues.

@Cinderhaze
Copy link

Related to the above (hosting your own update sites), lets make sure this can still work in air-gapped environments!

@ewelinawilkosz
Copy link
Contributor

@ndeloof I added 'Size' to help with planning and prediction
I follow https://www.praqma.com/stories/a-pragmatic-workflow/ where 'Size 4 - too big' simply means it takes more than a day (do you agree it does) - we can divide it to smaller <= 1 day issues if you think it makes sense

@ewelinawilkosz ewelinawilkosz modified the milestones: Release-1.0, Release-0.2-alpha Mar 17, 2018
@ndeloof
Copy link
Contributor

ndeloof commented Mar 19, 2018

We could rely on UpdateCenter.InstallationJob to install plugin from a specific version, but UpdateSite unfortunately only expose a single version for each plugin (despite the download site has all of them, at least https://updates.jenkins.io/download/plugins/ does)

@ndeloof
Copy link
Contributor

ndeloof commented Mar 19, 2018

the sole option I have in mind is to assume update centers all use the download/plugins/shortname/version URL structure, so we can build plugin URL - but doing so we would miss the artifact checksum to check download was fine

@ewelinawilkosz
Copy link
Contributor

@ndeloof I'm wondering what's your opinion about merging #43 - it would become part of first official release, but since you mentioned its Only inspirational so far I want to know if it makes sense

@ndeloof
Copy link
Contributor

ndeloof commented Apr 17, 2018

@ewelinawilkosz I've been working on my own version of it here : https://github.com/ndeloof/configuration-as-code-plugin/tree/plugins
which implement the proposed JEP-201 update (jenkinsci/jep#59)
please note this require jenkins-infra/update-center2#192

@ndeloof
Copy link
Contributor

ndeloof commented Apr 27, 2018

see #175

@ewelinawilkosz ewelinawilkosz removed this from the Release-0.2-alpha milestone Jun 10, 2018
@ewelinawilkosz
Copy link
Contributor

@ndeloof if I remember right current installation is not the final one, and we need to monitor jenkins-infra/update-center2#197
can we close this issue (after all we support the specific version install) and take necessary steps once the PR is merged in infra?

@ndeloof
Copy link
Contributor

ndeloof commented Jun 11, 2018

yes indeed, I think we can close this one and create a follow-up once we have an alternative to offer

@ndeloof ndeloof closed this as completed Jun 11, 2018
@deiga
Copy link

deiga commented May 21, 2019

@ndeloof Since the dependant issues seem solved, are there plans to continue this work?

@jetersen
Copy link
Member

No, this feature was removed as of v1.8

@jetersen
Copy link
Member

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

8 participants