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

[JENKINS-14538] Move tool configuration to separate page #2140

Merged
merged 11 commits into from
Mar 23, 2016

Conversation

amuniz
Copy link
Member

@amuniz amuniz commented Mar 18, 2016

This PR wraps up #2011.

It fixes remaining tasks:

  • Basic changes done
  • Needs better icon (or rather a different icon for Configure Jenkins, a large gear may work);
  • Change package names
  • Fix tests

@jenkinsci/code-reviewers and @reviewbybees

@daniel-beck daniel-beck added the work-in-progress The PR is under active development, not ready to the final review label Mar 19, 2016
@amuniz
Copy link
Member Author

amuniz commented Mar 19, 2016

This needs to be debugged because it's basically not working. For example, JDK installations are not persisted to disk, so they are all gone after a restart. Investigating...

@daniel-beck daniel-beck added needs-more-reviews Complex change, which would benefit from more eyes and removed work-in-progress The PR is under active development, not ready to the final review labels Mar 19, 2016
@ghost
Copy link

ghost commented Mar 19, 2016

This pull request originates from a CloudBees employee. At CloudBees, we require that all pull requests be reviewed by other CloudBees employees before we seek to have the change accepted. If you want to learn more about our process please see this explanation.

@@ -3354,8 +3354,6 @@ public synchronized void doConfigSubmit( StaplerRequest req, StaplerResponse rsp

systemMessage = Util.nullify(req.getParameter("system_message"));

setJDKs(req.bindJSONToList(JDK.class, json.get("jdks")));
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This call is no more needed as the JDKs list is set in a call to its descriptor configure in GlobalToolConfiguration.doConfigure. Moreover it was clearing out the JDKs list on each general configuration submit (because there is no such jdks attribute in the JSON now).

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, good.

@daniel-beck
Copy link
Member

Looks solid. No real findings. No +1 from me, as I'm co-author.

l.main_panel {
h1 {
l.icon(class: 'icon-setting icon-xlg')
// TODO more appropriate icon
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do you plan to address this TODO before the PR gets merged?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Well, I'm not a good icon designer. If someone sends one, I'll use it.
Anyway, now that Manage Jenkins is using icon-gear I think it's ok to keep icon-setting here.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This TODO is obsolete. Since this PR switches the Manage Jenkins icon, uses of this icon for tools is appropriate.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

So 🐜 delete the misleading comment.

@oleg-nenashev
Copy link
Member

looks good to me 👍

@jglick
Copy link
Member

jglick commented Mar 21, 2016

java.lang.NullPointerException: null
    at hudson.plugins.git.GitTool.onLoaded(GitTool.java:135)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:606)
    at hudson.init.TaskMethodFinder.invoke(TaskMethodFinder.java:106)
    at hudson.init.TaskMethodFinder$TaskImpl.run(TaskMethodFinder.java:175)
    at org.jvnet.hudson.reactor.Reactor.runTask(Reactor.java:282)
    at jenkins.model.Jenkins$8.runTask(Jenkins.java:1009)

might be yours.

@amuniz
Copy link
Member Author

amuniz commented Mar 21, 2016

mvn -f test test -Dtest=DescriptorTest#overriddenId passed locally, trying to see why it fails in the PR build.

@amuniz
Copy link
Member Author

amuniz commented Mar 21, 2016

It seems the root cause is git-plugin not being installed correctly:

SEVERE: Failed to install Git client plugin
java.io.IOException: Failed to dynamically deploy this plugin
    at hudson.model.UpdateCenter$InstallationJob._run(UpdateCenter.java:1648)
    at hudson.model.UpdateCenter$DownloadJob.run(UpdateCenter.java:1426)
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
    at java.util.concurrent.FutureTask.run(FutureTask.java:262)
    at hudson.remoting.AtmostOneThreadExecutor$Worker.run(AtmostOneThreadExecutor.java:110)
    at java.lang.Thread.run(Thread.java:745)
Caused by: java.io.IOException: Failed to install git-client plugin
    at hudson.PluginManager.dynamicLoad(PluginManager.java:698)
    at hudson.model.UpdateCenter$InstallationJob._run(UpdateCenter.java:1644)
    ... 5 more
Caused by: java.lang.NullPointerException
    at hudson.PluginManager.dynamicLoad(PluginManager.java:693)
    ... 6 more

I'm going to close/reopen to get a new build.

@amuniz amuniz closed this Mar 21, 2016
@amuniz amuniz reopened this Mar 21, 2016
@amuniz
Copy link
Member Author

amuniz commented Mar 21, 2016

This time DescriptorTest passed (one skipped because of @Ignore):

Running hudson.model.DescriptorTest
Tests run: 4, Failures: 0, Errors: 0, Skipped: 1, Time elapsed: 76.092 sec - in hudson.model.DescriptorTest

But hudson.LauncherTest.remoteKill failed. It seems just flaky tests failing sporadically.

@@ -73,11 +71,12 @@ public String getDisplayName() {
public static class Security extends GlobalConfigurationCategory {
@Override
public String getShortDescription() {
return Messages.GlobalSecurityConfiguration_Description();
return hudson.security.Messages.GlobalSecurityConfiguration_Description();
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

BTW not an issue introduced in this PR, but would be nice at some point to use core/move-l10n.groovy to put this message in the natural place.

@jglick
Copy link
Member

jglick commented Mar 21, 2016

🐝

@daniel-beck daniel-beck merged commit 82d3eb8 into jenkinsci:2.0 Mar 23, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
needs-more-reviews Complex change, which would benefit from more eyes
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants