jenkins/war/resources/scripts/hudson-behavior.js

1671 lines
54 KiB
JavaScript
Raw Normal View History

/*
* The MIT License
*
* Copyright (c) 2004-2009, Sun Microsystems, Inc., Kohsuke Kawaguchi, Daniel Dyer, Yahoo! Inc.
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
//
Merged revisions 17324-17325,17428,17430,17473-17475,17481-17482,17555-17563,17571,17593-17595,17619-17620,17637-17644,17656-17657,17663-17665,17667-17670,17730,17753,17755-17758,17763-17768,17770-17771,17901,17906,17911-17912,17958,17961-17962,17970-17977 via svnmerge from https://www.dev.java.net/svn/hudson/branches/tool-autoinstallation ........ r17324 | jglick | 2009-04-20 18:24:32 -0700 (Mon, 20 Apr 2009) | 2 lines Defensive cloning and Javadoc corrections. (Though it seems no one is using the default impls of these methods yet anyway.) ........ r17325 | jglick | 2009-04-20 18:29:06 -0700 (Mon, 20 Apr 2009) | 1 line Deprecation of delegate method is intentional. ........ r17428 | jglick | 2009-04-23 08:07:14 -0700 (Thu, 23 Apr 2009) | 1 line Noting ToolLocationTranslator more prominently. ........ r17430 | jglick | 2009-04-23 09:16:40 -0700 (Thu, 23 Apr 2009) | 1 line Unused imports. ........ r17473 | jglick | 2009-04-23 19:21:11 -0700 (Thu, 23 Apr 2009) | 1 line Allow Plugin.configure to see the StaplerRequest, needed for some kinds of calls. ........ r17474 | jglick | 2009-04-23 19:25:54 -0700 (Thu, 23 Apr 2009) | 3 lines Initial sketch of plugin to manage tool installations across slaves. (Should really be under ../plugins/ but that was not branched, so putting here for the moment.) ........ r17475 | jglick | 2009-04-23 20:29:36 -0700 (Thu, 23 Apr 2009) | 1 line Typo in Javadoc. ........ r17481 | jglick | 2009-04-23 22:46:26 -0700 (Thu, 23 Apr 2009) | 1 line Unzip of an unbuffered stream is painfully slow. ........ r17482 | jglick | 2009-04-23 22:48:01 -0700 (Thu, 23 Apr 2009) | 1 line ZIP-based tool installer now functional. ........ r17555 | jglick | 2009-04-27 17:50:38 -0700 (Mon, 27 Apr 2009) | 1 line Build against newest trunk. ........ r17556 | jglick | 2009-04-27 18:38:28 -0700 (Mon, 27 Apr 2009) | 1 line Adding help. ........ r17557 | jglick | 2009-04-27 18:57:46 -0700 (Mon, 27 Apr 2009) | 1 line Moving toolName & label config GUI into generic files. ........ r17558 | jglick | 2009-04-27 19:37:30 -0700 (Mon, 27 Apr 2009) | 1 line Typo. ........ r17559 | jglick | 2009-04-27 20:07:47 -0700 (Mon, 27 Apr 2009) | 1 line Second tool installer type based on a freeform command. ........ r17560 | jglick | 2009-04-27 20:24:36 -0700 (Mon, 27 Apr 2009) | 1 line installIfNecessaryFrom will now just return false in case the target dir exists but the URL cannot be opened. ........ r17561 | jglick | 2009-04-27 20:25:22 -0700 (Mon, 27 Apr 2009) | 2 lines chmod only if something was actually installed. Use a+x, not o+x. ........ r17562 | jglick | 2009-04-27 20:26:46 -0700 (Mon, 27 Apr 2009) | 1 line Comment only. ........ r17563 | jglick | 2009-04-27 20:41:12 -0700 (Mon, 27 Apr 2009) | 1 line I18N. ........ r17571 | jglick | 2009-04-28 08:15:31 -0700 (Tue, 28 Apr 2009) | 2 lines Wiki link. ........ r17593 | jglick | 2009-04-28 15:38:33 -0700 (Tue, 28 Apr 2009) | 1 line Turn off echo mode, it's just noise. ........ r17594 | jglick | 2009-04-28 15:39:29 -0700 (Tue, 28 Apr 2009) | 2 lines Synchronizing access to installers for a given node/tool combo. Sending log messages to Hudson log in real time. ........ r17595 | jglick | 2009-04-28 15:46:29 -0700 (Tue, 28 Apr 2009) | 1 line Copyrights. ........ r17619 | jglick | 2009-04-29 06:25:23 -0700 (Wed, 29 Apr 2009) | 1 line Improved Javadoc. ........ r17620 | jglick | 2009-04-29 06:51:11 -0700 (Wed, 29 Apr 2009) | 1 line Demonstraing how to use DLJ to mechanically install official JDK releases on supported operating systems. ........ r17637 | kohsuke | 2009-04-30 16:15:24 -0700 (Thu, 30 Apr 2009) | 1 line fixed what appears to be a C&P mistake ........ r17638 | kohsuke | 2009-04-30 16:16:21 -0700 (Thu, 30 Apr 2009) | 1 line show YUI logger if YUI debugging mode is set. ........ r17639 | kohsuke | 2009-04-30 16:52:28 -0700 (Thu, 30 Apr 2009) | 7 lines Fixed a UI script problem when <hetero-list> nests inside <repeatable>. The cause of the problem was that the behavior for inner <hetero-list> kicks in first, altering HTML (by removing "prototypes"), before behavior for outer <repetable> kicks in and removes the master copy from DOM tree. So <repeatable> ends up computing a master copy after some elements are removed, and hence when we try to reinsert them later by clicking "Add", it'll get incorrect copy, and re-execution of the <hetero-list> behavior bombs out. I fixed this by skipping those HTML-altering behaviors if they show up in the part of DOM tree that's supposed to be snapshotted and removed. ........ r17640 | kohsuke | 2009-04-30 16:57:58 -0700 (Thu, 30 Apr 2009) | 7 lines Added ToolProperty to ToolInstallation (which acts like NodeProperty to Node --- basically decorates the base object with additional properties.) The original motivation is to implement ToolInstaller this way, if Jesse is OK. But decorating tools seem to have some other interesting use, such as a plugin for configuring $M2_HOME/conf/settings.xml, or a plugin to insert unlimited cryptography extension to JDK, or a plugin to add a few more jars into $ANT_HOME/lib. For this to work, ToolInstallations that want properties needs to be modified to use a new constructor. For a starter, I modified the JDK class to do this. I also took the opportunity to modernize JDK/config.jelly. ........ r17641 | kohsuke | 2009-04-30 17:02:04 -0700 (Thu, 30 Apr 2009) | 1 line this appears to be a left-over from early days when we didn't have a means to do form validation ........ r17642 | kohsuke | 2009-04-30 17:02:35 -0700 (Thu, 30 Apr 2009) | 1 line we don't need no.such.JDK but we need name. rebranching ........ r17643 | kohsuke | 2009-04-30 17:03:22 -0700 (Thu, 30 Apr 2009) | 1 line rebranched from Hudson's configure.properties ........ r17644 | kohsuke | 2009-04-30 17:05:31 -0700 (Thu, 30 Apr 2009) | 1 line removed unnecessary translations ........ r17656 | kohsuke | 2009-05-01 11:27:36 -0700 (Fri, 01 May 2009) | 1 line Less hack for improved type safety. Asking people to write more code is not necessarily bad as long as what they need to do is obvious to them. ........ r17657 | kohsuke | 2009-05-01 12:07:20 -0700 (Fri, 01 May 2009) | 5 lines The toolautoinst part of the change that corresponds to rev.17640. ToolInstallers are now hooked under ToolInstallation through InstallSourceProperty as a ToolProperty. This allows the relevant UIs to be shown in one place. Still pending Jesse's feedback. Making it a single commit to simplify a revert if necessary ........ r17663 | kohsuke | 2009-05-01 13:23:51 -0700 (Fri, 01 May 2009) | 1 line doc improvement ........ r17664 | kohsuke | 2009-05-01 13:24:10 -0700 (Fri, 01 May 2009) | 1 line needs this to allow Stapler to databind hetero-list automatically ........ r17665 | jglick | 2009-05-01 13:31:27 -0700 (Fri, 01 May 2009) | 1 line Warnings. ........ r17667 | kohsuke | 2009-05-01 14:20:53 -0700 (Fri, 01 May 2009) | 1 line added a method to do chmod ........ r17668 | kohsuke | 2009-05-01 14:30:35 -0700 (Fri, 01 May 2009) | 1 line prefer JDK6 version to avoid unnecessary JNA loading ........ r17669 | kohsuke | 2009-05-01 14:33:09 -0700 (Fri, 01 May 2009) | 1 line no, I must have confused this. ........ r17670 | kohsuke | 2009-05-01 15:57:11 -0700 (Fri, 01 May 2009) | 2 lines - Automated JDK installer and its test. - Minor update to the signature of ToolInstaller for supplying the expected default location. ........ r17730 | kohsuke | 2009-05-04 11:27:34 -0700 (Mon, 04 May 2009) | 1 line avoid NPE as reported in HUDSON-3608 ........ r17753 | jglick | 2009-05-04 19:34:08 -0700 (Mon, 04 May 2009) | 2 lines Moved toolautoinst functionality into core. ........ r17755 | jglick | 2009-05-04 20:28:34 -0700 (Mon, 04 May 2009) | 8 lines Added TaskListener parameter and IOException and InterruptedException to several methods: Run.getEnvironment NodeSpecific.forNode ToolLocationTranslator.getToolHome ToolLocationNodeProperty.getToolHome ToolInstallation.translateFor ProcessCache.Factory.getMavenInstallation ProcessCache.Factory.getJava ........ r17756 | jglick | 2009-05-04 20:36:56 -0700 (Mon, 04 May 2009) | 1 line expectedLocation was never strictly necessary, and will soon no longer be used even by JDKInstaller. ........ r17757 | jglick | 2009-05-04 20:40:41 -0700 (Mon, 04 May 2009) | 1 line Not sure yet what @since should be. ........ r17758 | jglick | 2009-05-04 20:41:51 -0700 (Mon, 04 May 2009) | 1 line getDefaultInstallers method added. Not yet in use. ........ r17763 | kohsuke | 2009-05-05 10:50:36 -0700 (Tue, 05 May 2009) | 1 line deprecated redundant getJavaHome method ........ r17764 | kohsuke | 2009-05-05 12:10:45 -0700 (Tue, 05 May 2009) | 1 line added general-purpose property defaulting mechanism, and added default tool installer for JDK ........ r17765 | jglick | 2009-05-05 12:35:56 -0700 (Tue, 05 May 2009) | 1 line capitalize("") -> "" ........ r17766 | jglick | 2009-05-05 12:49:52 -0700 (Tue, 05 May 2009) | 1 line Missing @since. ........ r17767 | jglick | 2009-05-05 13:01:41 -0700 (Tue, 05 May 2009) | 1 line Unchecked warning. ........ r17768 | jglick | 2009-05-05 13:19:49 -0700 (Tue, 05 May 2009) | 2 lines Two unsuccessful attempts at form validation. ........ r17770 | jglick | 2009-05-05 13:48:37 -0700 (Tue, 05 May 2009) | 1 line Better class names. ........ r17771 | kohsuke | 2009-05-05 14:12:21 -0700 (Tue, 05 May 2009) | 5 lines brought the form validation check back. The trick is to use the 'value' parameter. In the end we'd expect this check to go away anyway, as we change input field to drop-down list, but in the mean time, this is why it didn't work. Maybe we probably need more static code checkers? Like FindBugs rules? ........ r17901 | kohsuke | 2009-05-09 19:15:40 -0700 (Sat, 09 May 2009) | 1 line having two toolHome is odd. ........ r17906 | kohsuke | 2009-05-10 11:09:13 -0700 (Sun, 10 May 2009) | 1 line adding the generalization of UpdateCenter, but for compatibility reasons, we are leaving UpdateCenter as-is. ........ r17911 | kohsuke | 2009-05-10 17:02:53 -0700 (Sun, 10 May 2009) | 1 line integrated json-lib with a bit of bug fix ........ r17912 | kohsuke | 2009-05-10 17:13:05 -0700 (Sun, 10 May 2009) | 1 line JDK list is now fetched from hudson.dev.java.net ........ r17958 | kohsuke | 2009-05-11 13:44:25 -0700 (Mon, 11 May 2009) | 48 lines Handle AbortException better to avoid error like this: [INFO] ------------------------------------------------------------------------ [ERROR] BUILD ERROR [INFO] ------------------------------------------------------------------------ [INFO] Failed to delete directory: C:\files\hudson\workspace\hudson\hudson\main\remoting\target. Reason: Unable to delete file C:\files\hudson\workspace\hudson\hudson\main\remoting\target\remoting-1.304-SNAPSHOT.jar [INFO] ------------------------------------------------------------------------ [INFO] For more information, run Maven with the -e switch [INFO] ------------------------------------------------------------------------ [INFO] Total time: 31 seconds [INFO] Finished at: Sun May 10 18:15:33 PDT 2009 [INFO] Final Memory: 25M/48M [INFO] ------------------------------------------------------------------------ Recording fingerprints Archiving artifacts Recording test results ERROR: Failed to archive JUnit reports hudson.util.IOException2: remote file operation failed at hudson.FilePath.act(FilePath.java:596) at hudson.tasks.junit.JUnitResultArchiver.perform(JUnitResultArchiver.java:82) at hudson.model.AbstractBuild$AbstractRunner.performAllBuildStep(AbstractBuild.java:372) at hudson.model.AbstractBuild$AbstractRunner.performAllBuildStep(AbstractBuild.java:360) at hudson.model.Build$RunnerImpl.post2(Build.java:183) at hudson.model.AbstractBuild$AbstractRunner.post(AbstractBuild.java:345) at hudson.model.Run.run(Run.java:943) at hudson.model.Build.run(Build.java:112) at hudson.model.ResourceController.execute(ResourceController.java:93) at hudson.model.Executor.run(Executor.java:119) Caused by: hudson.AbortException: Test reports were found but none of them are new. Did tests run? For example, \files\hudson\workspace\hudson\hudson\main\core\target\surefire-reports\TEST-hudson.BulkChangeTest.xml is 2 days 23 hr old at hudson.tasks.junit.TestResult.parse(TestResult.java:134) at hudson.tasks.junit.TestResult.<init>(TestResult.java:95) at hudson.tasks.junit.JUnitResultArchiver$1.invoke(JUnitResultArchiver.java:95) at hudson.tasks.junit.JUnitResultArchiver$1.invoke(JUnitResultArchiver.java:82) at hudson.FilePath$FileCallableWrapper.call(FilePath.java:1583) at hudson.remoting.UserRequest.perform(UserRequest.java:92) at hudson.remoting.UserRequest.perform(UserRequest.java:46) at hudson.remoting.Request$2.run(Request.java:236) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) at java.util.concurrent.FutureTask.run(FutureTask.java:138) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) at java.lang.Thread.run(Thread.java:619) ........ r17961 | kohsuke | 2009-05-11 15:16:39 -0700 (Mon, 11 May 2009) | 1 line adding Windows JDK silent installation ........ r17962 | kohsuke | 2009-05-11 16:08:13 -0700 (Mon, 11 May 2009) | 1 line Fixing JDK offline installatino for Windows ........ r17970 | kohsuke | 2009-05-11 19:37:59 -0700 (Mon, 11 May 2009) | 1 line Fixing a problem that prevents the usage of this tag in <repeatable> block, which reinserts the same fragment over and over. So statically assigning IDs won't work ........ r17971 | kohsuke | 2009-05-11 22:17:09 -0700 (Mon, 11 May 2009) | 1 line continuing to remove static ID generation, which breaks the tag when used inside <repetable> tag. ........ r17972 | kohsuke | 2009-05-11 22:19:11 -0700 (Mon, 11 May 2009) | 1 line I don't know when this started, but even in the hudson-dev:run mode, the versionis no longer '?', so we need a different way to force reload ........ r17973 | kohsuke | 2009-05-11 22:26:34 -0700 (Mon, 11 May 2009) | 1 line adjusted the text a bit since multiple "add" and "delete"s were rather confusing ........ r17974 | kohsuke | 2009-05-11 22:31:58 -0700 (Mon, 11 May 2009) | 1 line added help screen ........ r17975 | kohsuke | 2009-05-11 22:41:39 -0700 (Mon, 11 May 2009) | 1 line form validation now works against the checkbox, too ........ r17976 | kohsuke | 2009-05-11 22:43:00 -0700 (Mon, 11 May 2009) | 1 line with auto installation, we expect users to specify a directory that doesn't exist yet, so don't report it as an error ........ r17977 | kohsuke | 2009-05-11 22:43:24 -0700 (Mon, 11 May 2009) | 1 line improving the text ........ git-svn-id: https://hudson.dev.java.net/svn/hudson/trunk/hudson/main@17985 71c3de6d-444a-0410-be80-ed276b4c234a
2009-05-12 21:59:10 +08:00
//
// JavaScript for Hudson
// See http://www.ibm.com/developerworks/web/library/wa-memleak/?ca=dgr-lnxw97JavascriptLeaks
// for memory leak patterns and how to prevent them.
//
// create a new object whose prototype is the given object
function object(o) {
function F() {}
F.prototype = o;
return new F();
}
// id generator
var iota = 0;
// Form check code
//========================================================
var FormChecker = {
// pending requests
queue : [],
// conceptually boolean, but doing so create concurrency problem.
// that is, during unit tests, the AJAX.send works synchronously, so
// the onComplete happens before the send method returns. On a real environment,
// more likely it's the other way around. So setting a boolean flag to true or false
// won't work.
inProgress : 0,
/**
* Schedules a form field check. Executions are serialized to reduce the bandwidth impact.
*
* @param url
* Remote doXYZ URL that performs the check. Query string should include the field value.
* @param method
* HTTP method. GET or POST. I haven't confirmed specifics, but some browsers seem to cache GET requests.
* @param target
* HTML element whose innerHTML will be overwritten when the check is completed.
*/
delayedCheck : function(url, method, target) {
if(url==null || method==null || target==null)
return; // don't know whether we should throw an exception or ignore this. some broken plugins have illegal parameters
this.queue.push({url:url, method:method, target:target});
this.schedule();
},
sendRequest : function(url, params) {
if (params.method == "post") {
var idx = url.indexOf('?');
params.parameters = url.substring(idx + 1);
url = url.substring(0, idx);
}
new Ajax.Request(url, params);
},
schedule : function() {
if (this.inProgress>0) return;
if (this.queue.length == 0) return;
var next = this.queue.shift();
this.sendRequest(next.url, {
method : next.method,
onComplete : function(x) {
next.target.innerHTML = x.responseText;
FormChecker.inProgress--;
FormChecker.schedule();
}
});
this.inProgress++;
}
}
Merged revisions 17324-17325,17428,17430,17473-17475,17481-17482,17555-17563,17571,17593-17595,17619-17620,17637-17644,17656-17657,17663-17665,17667-17670,17730,17753,17755-17758,17763-17768,17770-17771,17901,17906,17911-17912,17958,17961-17962,17970-17977 via svnmerge from https://www.dev.java.net/svn/hudson/branches/tool-autoinstallation ........ r17324 | jglick | 2009-04-20 18:24:32 -0700 (Mon, 20 Apr 2009) | 2 lines Defensive cloning and Javadoc corrections. (Though it seems no one is using the default impls of these methods yet anyway.) ........ r17325 | jglick | 2009-04-20 18:29:06 -0700 (Mon, 20 Apr 2009) | 1 line Deprecation of delegate method is intentional. ........ r17428 | jglick | 2009-04-23 08:07:14 -0700 (Thu, 23 Apr 2009) | 1 line Noting ToolLocationTranslator more prominently. ........ r17430 | jglick | 2009-04-23 09:16:40 -0700 (Thu, 23 Apr 2009) | 1 line Unused imports. ........ r17473 | jglick | 2009-04-23 19:21:11 -0700 (Thu, 23 Apr 2009) | 1 line Allow Plugin.configure to see the StaplerRequest, needed for some kinds of calls. ........ r17474 | jglick | 2009-04-23 19:25:54 -0700 (Thu, 23 Apr 2009) | 3 lines Initial sketch of plugin to manage tool installations across slaves. (Should really be under ../plugins/ but that was not branched, so putting here for the moment.) ........ r17475 | jglick | 2009-04-23 20:29:36 -0700 (Thu, 23 Apr 2009) | 1 line Typo in Javadoc. ........ r17481 | jglick | 2009-04-23 22:46:26 -0700 (Thu, 23 Apr 2009) | 1 line Unzip of an unbuffered stream is painfully slow. ........ r17482 | jglick | 2009-04-23 22:48:01 -0700 (Thu, 23 Apr 2009) | 1 line ZIP-based tool installer now functional. ........ r17555 | jglick | 2009-04-27 17:50:38 -0700 (Mon, 27 Apr 2009) | 1 line Build against newest trunk. ........ r17556 | jglick | 2009-04-27 18:38:28 -0700 (Mon, 27 Apr 2009) | 1 line Adding help. ........ r17557 | jglick | 2009-04-27 18:57:46 -0700 (Mon, 27 Apr 2009) | 1 line Moving toolName & label config GUI into generic files. ........ r17558 | jglick | 2009-04-27 19:37:30 -0700 (Mon, 27 Apr 2009) | 1 line Typo. ........ r17559 | jglick | 2009-04-27 20:07:47 -0700 (Mon, 27 Apr 2009) | 1 line Second tool installer type based on a freeform command. ........ r17560 | jglick | 2009-04-27 20:24:36 -0700 (Mon, 27 Apr 2009) | 1 line installIfNecessaryFrom will now just return false in case the target dir exists but the URL cannot be opened. ........ r17561 | jglick | 2009-04-27 20:25:22 -0700 (Mon, 27 Apr 2009) | 2 lines chmod only if something was actually installed. Use a+x, not o+x. ........ r17562 | jglick | 2009-04-27 20:26:46 -0700 (Mon, 27 Apr 2009) | 1 line Comment only. ........ r17563 | jglick | 2009-04-27 20:41:12 -0700 (Mon, 27 Apr 2009) | 1 line I18N. ........ r17571 | jglick | 2009-04-28 08:15:31 -0700 (Tue, 28 Apr 2009) | 2 lines Wiki link. ........ r17593 | jglick | 2009-04-28 15:38:33 -0700 (Tue, 28 Apr 2009) | 1 line Turn off echo mode, it's just noise. ........ r17594 | jglick | 2009-04-28 15:39:29 -0700 (Tue, 28 Apr 2009) | 2 lines Synchronizing access to installers for a given node/tool combo. Sending log messages to Hudson log in real time. ........ r17595 | jglick | 2009-04-28 15:46:29 -0700 (Tue, 28 Apr 2009) | 1 line Copyrights. ........ r17619 | jglick | 2009-04-29 06:25:23 -0700 (Wed, 29 Apr 2009) | 1 line Improved Javadoc. ........ r17620 | jglick | 2009-04-29 06:51:11 -0700 (Wed, 29 Apr 2009) | 1 line Demonstraing how to use DLJ to mechanically install official JDK releases on supported operating systems. ........ r17637 | kohsuke | 2009-04-30 16:15:24 -0700 (Thu, 30 Apr 2009) | 1 line fixed what appears to be a C&P mistake ........ r17638 | kohsuke | 2009-04-30 16:16:21 -0700 (Thu, 30 Apr 2009) | 1 line show YUI logger if YUI debugging mode is set. ........ r17639 | kohsuke | 2009-04-30 16:52:28 -0700 (Thu, 30 Apr 2009) | 7 lines Fixed a UI script problem when <hetero-list> nests inside <repeatable>. The cause of the problem was that the behavior for inner <hetero-list> kicks in first, altering HTML (by removing "prototypes"), before behavior for outer <repetable> kicks in and removes the master copy from DOM tree. So <repeatable> ends up computing a master copy after some elements are removed, and hence when we try to reinsert them later by clicking "Add", it'll get incorrect copy, and re-execution of the <hetero-list> behavior bombs out. I fixed this by skipping those HTML-altering behaviors if they show up in the part of DOM tree that's supposed to be snapshotted and removed. ........ r17640 | kohsuke | 2009-04-30 16:57:58 -0700 (Thu, 30 Apr 2009) | 7 lines Added ToolProperty to ToolInstallation (which acts like NodeProperty to Node --- basically decorates the base object with additional properties.) The original motivation is to implement ToolInstaller this way, if Jesse is OK. But decorating tools seem to have some other interesting use, such as a plugin for configuring $M2_HOME/conf/settings.xml, or a plugin to insert unlimited cryptography extension to JDK, or a plugin to add a few more jars into $ANT_HOME/lib. For this to work, ToolInstallations that want properties needs to be modified to use a new constructor. For a starter, I modified the JDK class to do this. I also took the opportunity to modernize JDK/config.jelly. ........ r17641 | kohsuke | 2009-04-30 17:02:04 -0700 (Thu, 30 Apr 2009) | 1 line this appears to be a left-over from early days when we didn't have a means to do form validation ........ r17642 | kohsuke | 2009-04-30 17:02:35 -0700 (Thu, 30 Apr 2009) | 1 line we don't need no.such.JDK but we need name. rebranching ........ r17643 | kohsuke | 2009-04-30 17:03:22 -0700 (Thu, 30 Apr 2009) | 1 line rebranched from Hudson's configure.properties ........ r17644 | kohsuke | 2009-04-30 17:05:31 -0700 (Thu, 30 Apr 2009) | 1 line removed unnecessary translations ........ r17656 | kohsuke | 2009-05-01 11:27:36 -0700 (Fri, 01 May 2009) | 1 line Less hack for improved type safety. Asking people to write more code is not necessarily bad as long as what they need to do is obvious to them. ........ r17657 | kohsuke | 2009-05-01 12:07:20 -0700 (Fri, 01 May 2009) | 5 lines The toolautoinst part of the change that corresponds to rev.17640. ToolInstallers are now hooked under ToolInstallation through InstallSourceProperty as a ToolProperty. This allows the relevant UIs to be shown in one place. Still pending Jesse's feedback. Making it a single commit to simplify a revert if necessary ........ r17663 | kohsuke | 2009-05-01 13:23:51 -0700 (Fri, 01 May 2009) | 1 line doc improvement ........ r17664 | kohsuke | 2009-05-01 13:24:10 -0700 (Fri, 01 May 2009) | 1 line needs this to allow Stapler to databind hetero-list automatically ........ r17665 | jglick | 2009-05-01 13:31:27 -0700 (Fri, 01 May 2009) | 1 line Warnings. ........ r17667 | kohsuke | 2009-05-01 14:20:53 -0700 (Fri, 01 May 2009) | 1 line added a method to do chmod ........ r17668 | kohsuke | 2009-05-01 14:30:35 -0700 (Fri, 01 May 2009) | 1 line prefer JDK6 version to avoid unnecessary JNA loading ........ r17669 | kohsuke | 2009-05-01 14:33:09 -0700 (Fri, 01 May 2009) | 1 line no, I must have confused this. ........ r17670 | kohsuke | 2009-05-01 15:57:11 -0700 (Fri, 01 May 2009) | 2 lines - Automated JDK installer and its test. - Minor update to the signature of ToolInstaller for supplying the expected default location. ........ r17730 | kohsuke | 2009-05-04 11:27:34 -0700 (Mon, 04 May 2009) | 1 line avoid NPE as reported in HUDSON-3608 ........ r17753 | jglick | 2009-05-04 19:34:08 -0700 (Mon, 04 May 2009) | 2 lines Moved toolautoinst functionality into core. ........ r17755 | jglick | 2009-05-04 20:28:34 -0700 (Mon, 04 May 2009) | 8 lines Added TaskListener parameter and IOException and InterruptedException to several methods: Run.getEnvironment NodeSpecific.forNode ToolLocationTranslator.getToolHome ToolLocationNodeProperty.getToolHome ToolInstallation.translateFor ProcessCache.Factory.getMavenInstallation ProcessCache.Factory.getJava ........ r17756 | jglick | 2009-05-04 20:36:56 -0700 (Mon, 04 May 2009) | 1 line expectedLocation was never strictly necessary, and will soon no longer be used even by JDKInstaller. ........ r17757 | jglick | 2009-05-04 20:40:41 -0700 (Mon, 04 May 2009) | 1 line Not sure yet what @since should be. ........ r17758 | jglick | 2009-05-04 20:41:51 -0700 (Mon, 04 May 2009) | 1 line getDefaultInstallers method added. Not yet in use. ........ r17763 | kohsuke | 2009-05-05 10:50:36 -0700 (Tue, 05 May 2009) | 1 line deprecated redundant getJavaHome method ........ r17764 | kohsuke | 2009-05-05 12:10:45 -0700 (Tue, 05 May 2009) | 1 line added general-purpose property defaulting mechanism, and added default tool installer for JDK ........ r17765 | jglick | 2009-05-05 12:35:56 -0700 (Tue, 05 May 2009) | 1 line capitalize("") -> "" ........ r17766 | jglick | 2009-05-05 12:49:52 -0700 (Tue, 05 May 2009) | 1 line Missing @since. ........ r17767 | jglick | 2009-05-05 13:01:41 -0700 (Tue, 05 May 2009) | 1 line Unchecked warning. ........ r17768 | jglick | 2009-05-05 13:19:49 -0700 (Tue, 05 May 2009) | 2 lines Two unsuccessful attempts at form validation. ........ r17770 | jglick | 2009-05-05 13:48:37 -0700 (Tue, 05 May 2009) | 1 line Better class names. ........ r17771 | kohsuke | 2009-05-05 14:12:21 -0700 (Tue, 05 May 2009) | 5 lines brought the form validation check back. The trick is to use the 'value' parameter. In the end we'd expect this check to go away anyway, as we change input field to drop-down list, but in the mean time, this is why it didn't work. Maybe we probably need more static code checkers? Like FindBugs rules? ........ r17901 | kohsuke | 2009-05-09 19:15:40 -0700 (Sat, 09 May 2009) | 1 line having two toolHome is odd. ........ r17906 | kohsuke | 2009-05-10 11:09:13 -0700 (Sun, 10 May 2009) | 1 line adding the generalization of UpdateCenter, but for compatibility reasons, we are leaving UpdateCenter as-is. ........ r17911 | kohsuke | 2009-05-10 17:02:53 -0700 (Sun, 10 May 2009) | 1 line integrated json-lib with a bit of bug fix ........ r17912 | kohsuke | 2009-05-10 17:13:05 -0700 (Sun, 10 May 2009) | 1 line JDK list is now fetched from hudson.dev.java.net ........ r17958 | kohsuke | 2009-05-11 13:44:25 -0700 (Mon, 11 May 2009) | 48 lines Handle AbortException better to avoid error like this: [INFO] ------------------------------------------------------------------------ [ERROR] BUILD ERROR [INFO] ------------------------------------------------------------------------ [INFO] Failed to delete directory: C:\files\hudson\workspace\hudson\hudson\main\remoting\target. Reason: Unable to delete file C:\files\hudson\workspace\hudson\hudson\main\remoting\target\remoting-1.304-SNAPSHOT.jar [INFO] ------------------------------------------------------------------------ [INFO] For more information, run Maven with the -e switch [INFO] ------------------------------------------------------------------------ [INFO] Total time: 31 seconds [INFO] Finished at: Sun May 10 18:15:33 PDT 2009 [INFO] Final Memory: 25M/48M [INFO] ------------------------------------------------------------------------ Recording fingerprints Archiving artifacts Recording test results ERROR: Failed to archive JUnit reports hudson.util.IOException2: remote file operation failed at hudson.FilePath.act(FilePath.java:596) at hudson.tasks.junit.JUnitResultArchiver.perform(JUnitResultArchiver.java:82) at hudson.model.AbstractBuild$AbstractRunner.performAllBuildStep(AbstractBuild.java:372) at hudson.model.AbstractBuild$AbstractRunner.performAllBuildStep(AbstractBuild.java:360) at hudson.model.Build$RunnerImpl.post2(Build.java:183) at hudson.model.AbstractBuild$AbstractRunner.post(AbstractBuild.java:345) at hudson.model.Run.run(Run.java:943) at hudson.model.Build.run(Build.java:112) at hudson.model.ResourceController.execute(ResourceController.java:93) at hudson.model.Executor.run(Executor.java:119) Caused by: hudson.AbortException: Test reports were found but none of them are new. Did tests run? For example, \files\hudson\workspace\hudson\hudson\main\core\target\surefire-reports\TEST-hudson.BulkChangeTest.xml is 2 days 23 hr old at hudson.tasks.junit.TestResult.parse(TestResult.java:134) at hudson.tasks.junit.TestResult.<init>(TestResult.java:95) at hudson.tasks.junit.JUnitResultArchiver$1.invoke(JUnitResultArchiver.java:95) at hudson.tasks.junit.JUnitResultArchiver$1.invoke(JUnitResultArchiver.java:82) at hudson.FilePath$FileCallableWrapper.call(FilePath.java:1583) at hudson.remoting.UserRequest.perform(UserRequest.java:92) at hudson.remoting.UserRequest.perform(UserRequest.java:46) at hudson.remoting.Request$2.run(Request.java:236) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) at java.util.concurrent.FutureTask.run(FutureTask.java:138) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) at java.lang.Thread.run(Thread.java:619) ........ r17961 | kohsuke | 2009-05-11 15:16:39 -0700 (Mon, 11 May 2009) | 1 line adding Windows JDK silent installation ........ r17962 | kohsuke | 2009-05-11 16:08:13 -0700 (Mon, 11 May 2009) | 1 line Fixing JDK offline installatino for Windows ........ r17970 | kohsuke | 2009-05-11 19:37:59 -0700 (Mon, 11 May 2009) | 1 line Fixing a problem that prevents the usage of this tag in <repeatable> block, which reinserts the same fragment over and over. So statically assigning IDs won't work ........ r17971 | kohsuke | 2009-05-11 22:17:09 -0700 (Mon, 11 May 2009) | 1 line continuing to remove static ID generation, which breaks the tag when used inside <repetable> tag. ........ r17972 | kohsuke | 2009-05-11 22:19:11 -0700 (Mon, 11 May 2009) | 1 line I don't know when this started, but even in the hudson-dev:run mode, the versionis no longer '?', so we need a different way to force reload ........ r17973 | kohsuke | 2009-05-11 22:26:34 -0700 (Mon, 11 May 2009) | 1 line adjusted the text a bit since multiple "add" and "delete"s were rather confusing ........ r17974 | kohsuke | 2009-05-11 22:31:58 -0700 (Mon, 11 May 2009) | 1 line added help screen ........ r17975 | kohsuke | 2009-05-11 22:41:39 -0700 (Mon, 11 May 2009) | 1 line form validation now works against the checkbox, too ........ r17976 | kohsuke | 2009-05-11 22:43:00 -0700 (Mon, 11 May 2009) | 1 line with auto installation, we expect users to specify a directory that doesn't exist yet, so don't report it as an error ........ r17977 | kohsuke | 2009-05-11 22:43:24 -0700 (Mon, 11 May 2009) | 1 line improving the text ........ git-svn-id: https://hudson.dev.java.net/svn/hudson/trunk/hudson/main@17985 71c3de6d-444a-0410-be80-ed276b4c234a
2009-05-12 21:59:10 +08:00
function toValue(e) {
// compute the form validation value to be sent to the server
var type = e.getAttribute("type");
if(type!=null && type.toLowerCase()=="checkbox")
Merged revisions 17324-17325,17428,17430,17473-17475,17481-17482,17555-17563,17571,17593-17595,17619-17620,17637-17644,17656-17657,17663-17665,17667-17670,17730,17753,17755-17758,17763-17768,17770-17771,17901,17906,17911-17912,17958,17961-17962,17970-17977 via svnmerge from https://www.dev.java.net/svn/hudson/branches/tool-autoinstallation ........ r17324 | jglick | 2009-04-20 18:24:32 -0700 (Mon, 20 Apr 2009) | 2 lines Defensive cloning and Javadoc corrections. (Though it seems no one is using the default impls of these methods yet anyway.) ........ r17325 | jglick | 2009-04-20 18:29:06 -0700 (Mon, 20 Apr 2009) | 1 line Deprecation of delegate method is intentional. ........ r17428 | jglick | 2009-04-23 08:07:14 -0700 (Thu, 23 Apr 2009) | 1 line Noting ToolLocationTranslator more prominently. ........ r17430 | jglick | 2009-04-23 09:16:40 -0700 (Thu, 23 Apr 2009) | 1 line Unused imports. ........ r17473 | jglick | 2009-04-23 19:21:11 -0700 (Thu, 23 Apr 2009) | 1 line Allow Plugin.configure to see the StaplerRequest, needed for some kinds of calls. ........ r17474 | jglick | 2009-04-23 19:25:54 -0700 (Thu, 23 Apr 2009) | 3 lines Initial sketch of plugin to manage tool installations across slaves. (Should really be under ../plugins/ but that was not branched, so putting here for the moment.) ........ r17475 | jglick | 2009-04-23 20:29:36 -0700 (Thu, 23 Apr 2009) | 1 line Typo in Javadoc. ........ r17481 | jglick | 2009-04-23 22:46:26 -0700 (Thu, 23 Apr 2009) | 1 line Unzip of an unbuffered stream is painfully slow. ........ r17482 | jglick | 2009-04-23 22:48:01 -0700 (Thu, 23 Apr 2009) | 1 line ZIP-based tool installer now functional. ........ r17555 | jglick | 2009-04-27 17:50:38 -0700 (Mon, 27 Apr 2009) | 1 line Build against newest trunk. ........ r17556 | jglick | 2009-04-27 18:38:28 -0700 (Mon, 27 Apr 2009) | 1 line Adding help. ........ r17557 | jglick | 2009-04-27 18:57:46 -0700 (Mon, 27 Apr 2009) | 1 line Moving toolName & label config GUI into generic files. ........ r17558 | jglick | 2009-04-27 19:37:30 -0700 (Mon, 27 Apr 2009) | 1 line Typo. ........ r17559 | jglick | 2009-04-27 20:07:47 -0700 (Mon, 27 Apr 2009) | 1 line Second tool installer type based on a freeform command. ........ r17560 | jglick | 2009-04-27 20:24:36 -0700 (Mon, 27 Apr 2009) | 1 line installIfNecessaryFrom will now just return false in case the target dir exists but the URL cannot be opened. ........ r17561 | jglick | 2009-04-27 20:25:22 -0700 (Mon, 27 Apr 2009) | 2 lines chmod only if something was actually installed. Use a+x, not o+x. ........ r17562 | jglick | 2009-04-27 20:26:46 -0700 (Mon, 27 Apr 2009) | 1 line Comment only. ........ r17563 | jglick | 2009-04-27 20:41:12 -0700 (Mon, 27 Apr 2009) | 1 line I18N. ........ r17571 | jglick | 2009-04-28 08:15:31 -0700 (Tue, 28 Apr 2009) | 2 lines Wiki link. ........ r17593 | jglick | 2009-04-28 15:38:33 -0700 (Tue, 28 Apr 2009) | 1 line Turn off echo mode, it's just noise. ........ r17594 | jglick | 2009-04-28 15:39:29 -0700 (Tue, 28 Apr 2009) | 2 lines Synchronizing access to installers for a given node/tool combo. Sending log messages to Hudson log in real time. ........ r17595 | jglick | 2009-04-28 15:46:29 -0700 (Tue, 28 Apr 2009) | 1 line Copyrights. ........ r17619 | jglick | 2009-04-29 06:25:23 -0700 (Wed, 29 Apr 2009) | 1 line Improved Javadoc. ........ r17620 | jglick | 2009-04-29 06:51:11 -0700 (Wed, 29 Apr 2009) | 1 line Demonstraing how to use DLJ to mechanically install official JDK releases on supported operating systems. ........ r17637 | kohsuke | 2009-04-30 16:15:24 -0700 (Thu, 30 Apr 2009) | 1 line fixed what appears to be a C&P mistake ........ r17638 | kohsuke | 2009-04-30 16:16:21 -0700 (Thu, 30 Apr 2009) | 1 line show YUI logger if YUI debugging mode is set. ........ r17639 | kohsuke | 2009-04-30 16:52:28 -0700 (Thu, 30 Apr 2009) | 7 lines Fixed a UI script problem when <hetero-list> nests inside <repeatable>. The cause of the problem was that the behavior for inner <hetero-list> kicks in first, altering HTML (by removing "prototypes"), before behavior for outer <repetable> kicks in and removes the master copy from DOM tree. So <repeatable> ends up computing a master copy after some elements are removed, and hence when we try to reinsert them later by clicking "Add", it'll get incorrect copy, and re-execution of the <hetero-list> behavior bombs out. I fixed this by skipping those HTML-altering behaviors if they show up in the part of DOM tree that's supposed to be snapshotted and removed. ........ r17640 | kohsuke | 2009-04-30 16:57:58 -0700 (Thu, 30 Apr 2009) | 7 lines Added ToolProperty to ToolInstallation (which acts like NodeProperty to Node --- basically decorates the base object with additional properties.) The original motivation is to implement ToolInstaller this way, if Jesse is OK. But decorating tools seem to have some other interesting use, such as a plugin for configuring $M2_HOME/conf/settings.xml, or a plugin to insert unlimited cryptography extension to JDK, or a plugin to add a few more jars into $ANT_HOME/lib. For this to work, ToolInstallations that want properties needs to be modified to use a new constructor. For a starter, I modified the JDK class to do this. I also took the opportunity to modernize JDK/config.jelly. ........ r17641 | kohsuke | 2009-04-30 17:02:04 -0700 (Thu, 30 Apr 2009) | 1 line this appears to be a left-over from early days when we didn't have a means to do form validation ........ r17642 | kohsuke | 2009-04-30 17:02:35 -0700 (Thu, 30 Apr 2009) | 1 line we don't need no.such.JDK but we need name. rebranching ........ r17643 | kohsuke | 2009-04-30 17:03:22 -0700 (Thu, 30 Apr 2009) | 1 line rebranched from Hudson's configure.properties ........ r17644 | kohsuke | 2009-04-30 17:05:31 -0700 (Thu, 30 Apr 2009) | 1 line removed unnecessary translations ........ r17656 | kohsuke | 2009-05-01 11:27:36 -0700 (Fri, 01 May 2009) | 1 line Less hack for improved type safety. Asking people to write more code is not necessarily bad as long as what they need to do is obvious to them. ........ r17657 | kohsuke | 2009-05-01 12:07:20 -0700 (Fri, 01 May 2009) | 5 lines The toolautoinst part of the change that corresponds to rev.17640. ToolInstallers are now hooked under ToolInstallation through InstallSourceProperty as a ToolProperty. This allows the relevant UIs to be shown in one place. Still pending Jesse's feedback. Making it a single commit to simplify a revert if necessary ........ r17663 | kohsuke | 2009-05-01 13:23:51 -0700 (Fri, 01 May 2009) | 1 line doc improvement ........ r17664 | kohsuke | 2009-05-01 13:24:10 -0700 (Fri, 01 May 2009) | 1 line needs this to allow Stapler to databind hetero-list automatically ........ r17665 | jglick | 2009-05-01 13:31:27 -0700 (Fri, 01 May 2009) | 1 line Warnings. ........ r17667 | kohsuke | 2009-05-01 14:20:53 -0700 (Fri, 01 May 2009) | 1 line added a method to do chmod ........ r17668 | kohsuke | 2009-05-01 14:30:35 -0700 (Fri, 01 May 2009) | 1 line prefer JDK6 version to avoid unnecessary JNA loading ........ r17669 | kohsuke | 2009-05-01 14:33:09 -0700 (Fri, 01 May 2009) | 1 line no, I must have confused this. ........ r17670 | kohsuke | 2009-05-01 15:57:11 -0700 (Fri, 01 May 2009) | 2 lines - Automated JDK installer and its test. - Minor update to the signature of ToolInstaller for supplying the expected default location. ........ r17730 | kohsuke | 2009-05-04 11:27:34 -0700 (Mon, 04 May 2009) | 1 line avoid NPE as reported in HUDSON-3608 ........ r17753 | jglick | 2009-05-04 19:34:08 -0700 (Mon, 04 May 2009) | 2 lines Moved toolautoinst functionality into core. ........ r17755 | jglick | 2009-05-04 20:28:34 -0700 (Mon, 04 May 2009) | 8 lines Added TaskListener parameter and IOException and InterruptedException to several methods: Run.getEnvironment NodeSpecific.forNode ToolLocationTranslator.getToolHome ToolLocationNodeProperty.getToolHome ToolInstallation.translateFor ProcessCache.Factory.getMavenInstallation ProcessCache.Factory.getJava ........ r17756 | jglick | 2009-05-04 20:36:56 -0700 (Mon, 04 May 2009) | 1 line expectedLocation was never strictly necessary, and will soon no longer be used even by JDKInstaller. ........ r17757 | jglick | 2009-05-04 20:40:41 -0700 (Mon, 04 May 2009) | 1 line Not sure yet what @since should be. ........ r17758 | jglick | 2009-05-04 20:41:51 -0700 (Mon, 04 May 2009) | 1 line getDefaultInstallers method added. Not yet in use. ........ r17763 | kohsuke | 2009-05-05 10:50:36 -0700 (Tue, 05 May 2009) | 1 line deprecated redundant getJavaHome method ........ r17764 | kohsuke | 2009-05-05 12:10:45 -0700 (Tue, 05 May 2009) | 1 line added general-purpose property defaulting mechanism, and added default tool installer for JDK ........ r17765 | jglick | 2009-05-05 12:35:56 -0700 (Tue, 05 May 2009) | 1 line capitalize("") -> "" ........ r17766 | jglick | 2009-05-05 12:49:52 -0700 (Tue, 05 May 2009) | 1 line Missing @since. ........ r17767 | jglick | 2009-05-05 13:01:41 -0700 (Tue, 05 May 2009) | 1 line Unchecked warning. ........ r17768 | jglick | 2009-05-05 13:19:49 -0700 (Tue, 05 May 2009) | 2 lines Two unsuccessful attempts at form validation. ........ r17770 | jglick | 2009-05-05 13:48:37 -0700 (Tue, 05 May 2009) | 1 line Better class names. ........ r17771 | kohsuke | 2009-05-05 14:12:21 -0700 (Tue, 05 May 2009) | 5 lines brought the form validation check back. The trick is to use the 'value' parameter. In the end we'd expect this check to go away anyway, as we change input field to drop-down list, but in the mean time, this is why it didn't work. Maybe we probably need more static code checkers? Like FindBugs rules? ........ r17901 | kohsuke | 2009-05-09 19:15:40 -0700 (Sat, 09 May 2009) | 1 line having two toolHome is odd. ........ r17906 | kohsuke | 2009-05-10 11:09:13 -0700 (Sun, 10 May 2009) | 1 line adding the generalization of UpdateCenter, but for compatibility reasons, we are leaving UpdateCenter as-is. ........ r17911 | kohsuke | 2009-05-10 17:02:53 -0700 (Sun, 10 May 2009) | 1 line integrated json-lib with a bit of bug fix ........ r17912 | kohsuke | 2009-05-10 17:13:05 -0700 (Sun, 10 May 2009) | 1 line JDK list is now fetched from hudson.dev.java.net ........ r17958 | kohsuke | 2009-05-11 13:44:25 -0700 (Mon, 11 May 2009) | 48 lines Handle AbortException better to avoid error like this: [INFO] ------------------------------------------------------------------------ [ERROR] BUILD ERROR [INFO] ------------------------------------------------------------------------ [INFO] Failed to delete directory: C:\files\hudson\workspace\hudson\hudson\main\remoting\target. Reason: Unable to delete file C:\files\hudson\workspace\hudson\hudson\main\remoting\target\remoting-1.304-SNAPSHOT.jar [INFO] ------------------------------------------------------------------------ [INFO] For more information, run Maven with the -e switch [INFO] ------------------------------------------------------------------------ [INFO] Total time: 31 seconds [INFO] Finished at: Sun May 10 18:15:33 PDT 2009 [INFO] Final Memory: 25M/48M [INFO] ------------------------------------------------------------------------ Recording fingerprints Archiving artifacts Recording test results ERROR: Failed to archive JUnit reports hudson.util.IOException2: remote file operation failed at hudson.FilePath.act(FilePath.java:596) at hudson.tasks.junit.JUnitResultArchiver.perform(JUnitResultArchiver.java:82) at hudson.model.AbstractBuild$AbstractRunner.performAllBuildStep(AbstractBuild.java:372) at hudson.model.AbstractBuild$AbstractRunner.performAllBuildStep(AbstractBuild.java:360) at hudson.model.Build$RunnerImpl.post2(Build.java:183) at hudson.model.AbstractBuild$AbstractRunner.post(AbstractBuild.java:345) at hudson.model.Run.run(Run.java:943) at hudson.model.Build.run(Build.java:112) at hudson.model.ResourceController.execute(ResourceController.java:93) at hudson.model.Executor.run(Executor.java:119) Caused by: hudson.AbortException: Test reports were found but none of them are new. Did tests run? For example, \files\hudson\workspace\hudson\hudson\main\core\target\surefire-reports\TEST-hudson.BulkChangeTest.xml is 2 days 23 hr old at hudson.tasks.junit.TestResult.parse(TestResult.java:134) at hudson.tasks.junit.TestResult.<init>(TestResult.java:95) at hudson.tasks.junit.JUnitResultArchiver$1.invoke(JUnitResultArchiver.java:95) at hudson.tasks.junit.JUnitResultArchiver$1.invoke(JUnitResultArchiver.java:82) at hudson.FilePath$FileCallableWrapper.call(FilePath.java:1583) at hudson.remoting.UserRequest.perform(UserRequest.java:92) at hudson.remoting.UserRequest.perform(UserRequest.java:46) at hudson.remoting.Request$2.run(Request.java:236) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) at java.util.concurrent.FutureTask.run(FutureTask.java:138) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) at java.lang.Thread.run(Thread.java:619) ........ r17961 | kohsuke | 2009-05-11 15:16:39 -0700 (Mon, 11 May 2009) | 1 line adding Windows JDK silent installation ........ r17962 | kohsuke | 2009-05-11 16:08:13 -0700 (Mon, 11 May 2009) | 1 line Fixing JDK offline installatino for Windows ........ r17970 | kohsuke | 2009-05-11 19:37:59 -0700 (Mon, 11 May 2009) | 1 line Fixing a problem that prevents the usage of this tag in <repeatable> block, which reinserts the same fragment over and over. So statically assigning IDs won't work ........ r17971 | kohsuke | 2009-05-11 22:17:09 -0700 (Mon, 11 May 2009) | 1 line continuing to remove static ID generation, which breaks the tag when used inside <repetable> tag. ........ r17972 | kohsuke | 2009-05-11 22:19:11 -0700 (Mon, 11 May 2009) | 1 line I don't know when this started, but even in the hudson-dev:run mode, the versionis no longer '?', so we need a different way to force reload ........ r17973 | kohsuke | 2009-05-11 22:26:34 -0700 (Mon, 11 May 2009) | 1 line adjusted the text a bit since multiple "add" and "delete"s were rather confusing ........ r17974 | kohsuke | 2009-05-11 22:31:58 -0700 (Mon, 11 May 2009) | 1 line added help screen ........ r17975 | kohsuke | 2009-05-11 22:41:39 -0700 (Mon, 11 May 2009) | 1 line form validation now works against the checkbox, too ........ r17976 | kohsuke | 2009-05-11 22:43:00 -0700 (Mon, 11 May 2009) | 1 line with auto installation, we expect users to specify a directory that doesn't exist yet, so don't report it as an error ........ r17977 | kohsuke | 2009-05-11 22:43:24 -0700 (Mon, 11 May 2009) | 1 line improving the text ........ git-svn-id: https://hudson.dev.java.net/svn/hudson/trunk/hudson/main@17985 71c3de6d-444a-0410-be80-ed276b4c234a
2009-05-12 21:59:10 +08:00
return e.checked;
return encode(e.value);
}
// find the nearest ancestor node that has the given tag name
function findAncestor(e, tagName) {
do {
e = e.parentNode;
} while (e != null && e.tagName != tagName);
return e;
}
function findFollowingTR(input, className) {
// identify the parent TR
var tr = input;
while (tr.tagName != "TR")
tr = tr.parentNode;
// then next TR that matches the CSS
do {
tr = tr.nextSibling;
} while (tr.tagName != "TR" || tr.className != className);
return tr;
}
Merged revisions 11754-11755,11763-11766,11770,11773-11777,11791-11797,11828-11829,11831-11839,11841-11843,11850,11854,11994,12774,12778-12793,12820-12822,12831-12841,12854-12855,12860-12882,12896-12905,12914-12920,12938-12941,12950,13045-13046,13048,13063-13064,13066,13072-13076,13111,13122-13147,13150,13153-13158,13487-13488,13851-13852,13854-13856,13859,13866-13867,13869,13872-13876,13878-13879,13883-13885,13887-13890,13896-13919 via svnmerge from https://www.dev.java.net/svn/hudson/branches/multiple-computer-per-node ................ r11754 | kohsuke | 2008-08-25 17:59:14 -0700 (Mon, 25 Aug 2008) | 3 lines Adding EphemeralNode for non-persisted dynamically-allocated expandable/shrinkable slave pool. Tweaked the serialization of Hudson.slaves accordingly. ................ r11755 | kohsuke | 2008-08-25 18:10:42 -0700 (Mon, 25 Aug 2008) | 1 line making a small improvements ................ r11763 | kohsuke | 2008-08-26 13:57:25 -0700 (Tue, 26 Aug 2008) | 1 line adding more convenience methods ................ r11764 | kohsuke | 2008-08-26 14:24:20 -0700 (Tue, 26 Aug 2008) | 1 line ported mask capability from the TFS plugin to the core. ................ r11765 | kohsuke | 2008-08-26 14:26:25 -0700 (Tue, 26 Aug 2008) | 1 line making it non-final to allow for subclassing ................ r11766 | kohsuke | 2008-08-26 14:35:20 -0700 (Tue, 26 Aug 2008) | 1 line test case for NodeList ................ r11770 | kohsuke | 2008-08-26 15:15:21 -0700 (Tue, 26 Aug 2008) | 3 lines Wrote a simple tool that monitors a file system change (in a poor way) and triggers a build. ................ r11773 | kohsuke | 2008-08-26 17:20:30 -0700 (Tue, 26 Aug 2008) | 1 line made more structured ................ r11774 | kohsuke | 2008-08-26 17:47:41 -0700 (Tue, 26 Aug 2008) | 1 line indentation fix ................ r11775 | kohsuke | 2008-08-26 17:48:22 -0700 (Tue, 26 Aug 2008) | 1 line remove the use of a deprecated feature. ................ r11776 | kohsuke | 2008-08-26 17:51:54 -0700 (Tue, 26 Aug 2008) | 1 line renamed to 'ALL' to be consistent with recent use of DescriptorList ................ r11777 | kohsuke | 2008-08-26 18:04:17 -0700 (Tue, 26 Aug 2008) | 1 line adding NodeFactory list and its configuration mechanism ................ r11791 | kohsuke | 2008-08-27 09:43:38 -0700 (Wed, 27 Aug 2008) | 1 line picked up the latest jelly with Iterable support in <j:forEach> ................ r11792 | kohsuke | 2008-08-27 09:44:08 -0700 (Wed, 27 Aug 2008) | 1 line Iterable support added in commons-jelly 1.1-hudson-20080826 ................ r11793 | kohsuke | 2008-08-27 10:15:14 -0700 (Wed, 27 Aug 2008) | 2 lines - added name to NodeFactory for binding NodeFactory to URL tree. - NodeFactory should be access controlled ................ r11794 | kohsuke | 2008-08-27 10:41:11 -0700 (Wed, 27 Aug 2008) | 1 line added a method to add one Node at a time ................ r11795 | kohsuke | 2008-08-27 10:41:37 -0700 (Wed, 27 Aug 2008) | 1 line added permission constatnt ................ r11796 | kohsuke | 2008-08-27 10:42:13 -0700 (Wed, 27 Aug 2008) | 1 line allowing the launch method to throw an exception. ................ r11797 | kohsuke | 2008-08-27 10:44:13 -0700 (Wed, 27 Aug 2008) | 1 line improving the handling ................ r11828 | kohsuke | 2008-08-29 11:07:16 -0700 (Fri, 29 Aug 2008) | 1 line added executor config to the sidebar. ................ r11829 | kohsuke | 2008-08-29 11:16:11 -0700 (Fri, 29 Aug 2008) | 1 line "it" should be assigned to NodeFactory ................ r11831 | kohsuke | 2008-08-29 11:44:41 -0700 (Fri, 29 Aug 2008) | 1 line formatting changes ................ r11832 | kohsuke | 2008-08-29 11:59:21 -0700 (Fri, 29 Aug 2008) | 1 line added a script to create a flashing image from any picture ................ r11833 | kohsuke | 2008-08-29 12:07:56 -0700 (Fri, 29 Aug 2008) | 1 line doc improvement. ................ r11834 | kohsuke | 2008-08-29 13:37:59 -0700 (Fri, 29 Aug 2008) | 1 line added new images to indicate that a slave is launching ................ r11835 | kohsuke | 2008-08-29 13:43:41 -0700 (Fri, 29 Aug 2008) | 1 line indicate a launching slave accordingly. ................ r11836 | kohsuke | 2008-08-29 14:02:28 -0700 (Fri, 29 Aug 2008) | 1 line added a method to remove a Node. ................ r11837 | kohsuke | 2008-08-29 14:02:38 -0700 (Fri, 29 Aug 2008) | 1 line disconnect ................ r11838 | kohsuke | 2008-08-29 14:03:22 -0700 (Fri, 29 Aug 2008) | 1 line formatting changes ................ r11839 | kohsuke | 2008-08-29 14:14:04 -0700 (Fri, 29 Aug 2008) | 1 line allowing subclasses. ................ r11841 | kohsuke | 2008-08-29 14:28:29 -0700 (Fri, 29 Aug 2008) | 1 line constructor should be the first in the definition. ................ r11842 | kohsuke | 2008-08-29 14:31:01 -0700 (Fri, 29 Aug 2008) | 1 line doc improvement. ................ r11843 | kohsuke | 2008-08-29 14:32:48 -0700 (Fri, 29 Aug 2008) | 1 line fixed a problem of using partially constructed object during launch(), because the setNode() method is called from the Computer constructor. ................ r11850 | kohsuke | 2008-08-29 14:50:36 -0700 (Fri, 29 Aug 2008) | 1 line serialize NodeFactory first so that references to them from NodeList will become references in XML. ................ r11854 | kohsuke | 2008-08-29 14:56:56 -0700 (Fri, 29 Aug 2008) | 1 line cleaning up a bit. ................ r11994 | kohsuke | 2008-09-03 14:42:11 -0700 (Wed, 03 Sep 2008) | 21 lines Fixed ArrayIndexOutOfBoundsException during replace(), when the title contains a '$' literal. The typical stack trace looks like: Caused by: java.lang.ArrayIndexOutOfBoundsException: 32 at hudson.MarkupText$SubText.start(MarkupText.java:95) at hudson.MarkupText$SubText.group(MarkupText.java:131) at hudson.MarkupText$SubText.replace(MarkupText.java:154) at hudson.MarkupText$SubText.surroundWith(MarkupText.java:83) at hudson.plugins.jira.JiraChangeLogAnnotator.annotate(JiraChangeLogAnnotator.java:37) at hudson.scm.ChangeLogSet$Entry.getMsgAnnotated(ChangeLogSet.java:117) ... 148 more Vijayan Jayaraman and I found this problem while we were looking at the server log of Hudson for OpenJFX. Adding a unit test to verify this behavior, too. ................ r12774 | kohsuke | 2008-10-27 15:03:36 -0700 (Mon, 27 Oct 2008) | 3 lines preparing for heterogenousness in Node, so that different Node can be configured with different UIs, much like how different Jobs can be configured. Creating a slave works also like creating a new job. ................ r12778 | kohsuke | 2008-10-27 15:06:51 -0700 (Mon, 27 Oct 2008) | 1 line We need to be able to create an emtpy Slave initially, so we have to do with the check in the form field validation. ................ r12779 | kohsuke | 2008-10-27 15:48:04 -0700 (Mon, 27 Oct 2008) | 1 line making the new slave page a two-step process ................ r12780 | kohsuke | 2008-10-27 15:48:24 -0700 (Mon, 27 Oct 2008) | 1 line fixed a compilation problem ................ r12781 | kohsuke | 2008-10-27 15:53:30 -0700 (Mon, 27 Oct 2008) | 1 line bug fixes ................ r12782 | kohsuke | 2008-10-27 15:58:20 -0700 (Mon, 27 Oct 2008) | 1 line bug fixes ................ r12783 | kohsuke | 2008-10-27 16:08:56 -0700 (Mon, 27 Oct 2008) | 1 line making the configuration page work for slaves ................ r12784 | kohsuke | 2008-10-27 16:35:17 -0700 (Mon, 27 Oct 2008) | 1 line added new-computer.svg ................ r12785 | kohsuke | 2008-10-27 16:37:26 -0700 (Mon, 27 Oct 2008) | 1 line hooking up the config/create pages to the UI ................ r12786 | kohsuke | 2008-10-27 16:44:40 -0700 (Mon, 27 Oct 2008) | 1 line fixed a copy method. ................ r12787 | kohsuke | 2008-10-27 16:47:33 -0700 (Mon, 27 Oct 2008) | 1 line code was broken when a slave was renamed ................ r12788 | kohsuke | 2008-10-27 16:58:04 -0700 (Mon, 27 Oct 2008) | 1 line moving out the commonality into a new tag ................ r12789 | kohsuke | 2008-10-27 17:01:21 -0700 (Mon, 27 Oct 2008) | 1 line consistent term usage ................ r12790 | kohsuke | 2008-10-27 17:03:19 -0700 (Mon, 27 Oct 2008) | 1 line retiring the configureExecutors. Slave configuration is now moved to individual slave page ................ r12791 | kohsuke | 2008-10-27 17:10:32 -0700 (Mon, 27 Oct 2008) | 1 line retired configureExecutors.jelly and completed moved its contents to somewhere else ................ r12792 | kohsuke | 2008-10-27 17:21:53 -0700 (Mon, 27 Oct 2008) | 1 line bug fix. request handling of "/descriptor/FQCN/..." was broken. ................ r12793 | kohsuke | 2008-10-27 17:27:08 -0700 (Mon, 27 Oct 2008) | 1 line NodeFactory -> Cloud to encourage consistent term usage between the code and the UI. ................ r12820 | kohsuke | 2008-10-29 10:58:20 -0700 (Wed, 29 Oct 2008) | 1 line formatting fix ................ r12821 | kohsuke | 2008-10-29 11:17:49 -0700 (Wed, 29 Oct 2008) | 1 line added classes for handling a secret and prevent accidental exposure of a secret in the persisted form ................ r12822 | kohsuke | 2008-10-29 11:32:39 -0700 (Wed, 29 Oct 2008) | 1 line added a base64 validator ................ r12831 | kohsuke | 2008-10-29 15:58:45 -0700 (Wed, 29 Oct 2008) | 1 line secret key needs to be persisted outside config.xml (and it is, already!) ................ r12832 | kohsuke | 2008-10-29 16:06:28 -0700 (Wed, 29 Oct 2008) | 1 line started working on Amazon EC2 plugin ................ r12833 | kohsuke | 2008-10-29 16:09:20 -0700 (Wed, 29 Oct 2008) | 1 line brought the same enhancement as in <textbox /> ................ r12834 | kohsuke | 2008-10-29 16:15:05 -0700 (Wed, 29 Oct 2008) | 1 line copy over the onclick handler from the original button element ................ r12835 | kohsuke | 2008-10-29 17:01:04 -0700 (Wed, 29 Oct 2008) | 1 line allow OK messages to be sent with some mark up. ................ r12836 | kohsuke | 2008-10-29 17:06:52 -0700 (Wed, 29 Oct 2008) | 1 line added connection testing. This pattern needs to be generalized since it happens often ................ r12837 | kohsuke | 2008-10-29 17:13:11 -0700 (Wed, 29 Oct 2008) | 1 line this is little better ................ r12838 | kohsuke | 2008-10-29 17:17:44 -0700 (Wed, 29 Oct 2008) | 1 line added spinner ................ r12839 | kohsuke | 2008-10-29 17:31:54 -0700 (Wed, 29 Oct 2008) | 1 line restructuring the validation button support in a form that can be readily moved to the core. ................ r12840 | kohsuke | 2008-10-29 18:01:41 -0700 (Wed, 29 Oct 2008) | 1 line added <f:validateButton/> for multi-field server-side validation ................ r12841 | kohsuke | 2008-10-29 18:03:12 -0700 (Wed, 29 Oct 2008) | 1 line logic moved to <f:validateButton/> in the core. ................ r12854 | kohsuke | 2008-10-30 13:32:58 -0700 (Thu, 30 Oct 2008) | 1 line @QueryParameter.value won't be necessary any more ................ r12855 | kohsuke | 2008-10-30 13:42:58 -0700 (Thu, 30 Oct 2008) | 1 line need a strongly-typed constructor. ................ r12860 | kohsuke | 2008-10-30 15:24:18 -0700 (Thu, 30 Oct 2008) | 1 line adding more reflection support, which in turn we use in taglibs to raise the level of abstraction. ................ r12861 | kohsuke | 2008-10-30 15:33:22 -0700 (Thu, 30 Oct 2008) | 1 line added a tag to create databinding to a<select> element from an enum property ................ r12862 | kohsuke | 2008-10-30 15:37:44 -0700 (Thu, 30 Oct 2008) | 1 line adding a smarter bi-directional binding through <f:repeatable field="..."/> ................ r12863 | kohsuke | 2008-10-30 15:47:48 -0700 (Thu, 30 Oct 2008) | 1 line making progress with the EC2 support ................ r12864 | kohsuke | 2008-10-30 16:12:34 -0700 (Thu, 30 Oct 2008) | 1 line added form field validation for AMI ID ................ r12865 | kohsuke | 2008-10-30 16:15:44 -0700 (Thu, 30 Oct 2008) | 1 line added simpler version ................ r12866 | kohsuke | 2008-10-30 16:17:15 -0700 (Thu, 30 Oct 2008) | 1 line doc improvement ................ r12867 | kohsuke | 2008-10-30 16:17:19 -0700 (Thu, 30 Oct 2008) | 1 line simplified a bit ................ r12868 | kohsuke | 2008-10-30 16:40:25 -0700 (Thu, 30 Oct 2008) | 1 line doc improvement ................ r12869 | kohsuke | 2008-10-30 17:00:57 -0700 (Thu, 30 Oct 2008) | 1 line adding the provisioning of the new slave ................ r12870 | kohsuke | 2008-10-30 17:07:27 -0700 (Thu, 30 Oct 2008) | 1 line /** {@inheritDoc} */ is the default behavior for javadoc, so there's no point in making that explicit. ................ r12871 | kohsuke | 2008-10-30 17:11:04 -0700 (Thu, 30 Oct 2008) | 1 line doc bug fix ................ r12872 | kohsuke | 2008-10-30 17:17:20 -0700 (Thu, 30 Oct 2008) | 1 line simplified a bit ................ r12873 | kohsuke | 2008-10-30 17:19:06 -0700 (Thu, 30 Oct 2008) | 1 line added RetentionStrategy for EC2 instances ................ r12874 | kohsuke | 2008-10-30 17:21:17 -0700 (Thu, 30 Oct 2008) | 1 line allowing subclasses to override the disconnect behavior. ................ r12875 | kohsuke | 2008-10-30 18:02:35 -0700 (Thu, 30 Oct 2008) | 1 line added termination ................ r12876 | kohsuke | 2008-10-30 18:05:30 -0700 (Thu, 30 Oct 2008) | 1 line forgot to rename when NodeFactory was renamed to Cloud ................ r12877 | kohsuke | 2008-10-30 18:06:08 -0700 (Thu, 30 Oct 2008) | 1 line using the console icon ................ r12878 | kohsuke | 2008-10-30 18:17:20 -0700 (Thu, 30 Oct 2008) | 1 line adding UI to remove a slave. ................ r12879 | kohsuke | 2008-10-30 18:48:57 -0700 (Thu, 30 Oct 2008) | 1 line commons-discovery now needed in stapler ................ r12880 | kohsuke | 2008-10-30 18:50:27 -0700 (Thu, 30 Oct 2008) | 1 line needs to use a newer version of stapler ................ r12881 | kohsuke | 2008-10-30 18:51:02 -0700 (Thu, 30 Oct 2008) | 1 line Bye bye CVS ................ r12882 | kohsuke | 2008-10-30 18:51:43 -0700 (Thu, 30 Oct 2008) | 1 line Bye bye CVS ................ r12896 | kohsuke | 2008-10-31 14:52:07 -0700 (Fri, 31 Oct 2008) | 1 line fixed the ordering between field and the mighty get(String) method. ................ r12897 | kohsuke | 2008-10-31 15:08:41 -0700 (Fri, 31 Oct 2008) | 1 line fixed test compilation problems ................ r12898 | kohsuke | 2008-10-31 15:11:25 -0700 (Fri, 31 Oct 2008) | 1 line marking this as a model object since it's always bound to URL. ................ r12899 | kohsuke | 2008-10-31 15:13:42 -0700 (Fri, 31 Oct 2008) | 1 line adding UI hook up to manually provision a new node ................ r12900 | kohsuke | 2008-10-31 15:14:00 -0700 (Fri, 31 Oct 2008) | 1 line after merging the trunk the version number is different ................ r12901 | kohsuke | 2008-10-31 15:21:54 -0700 (Fri, 31 Oct 2008) | 1 line adding UI hook up for provisioning a new slave ................ r12902 | kohsuke | 2008-10-31 15:45:10 -0700 (Fri, 31 Oct 2008) | 1 line adding a hook to decorate ComputerLauncher. ................ r12903 | kohsuke | 2008-10-31 15:48:21 -0700 (Fri, 31 Oct 2008) | 1 line added filtering support ................ r12904 | kohsuke | 2008-10-31 15:52:45 -0700 (Fri, 31 Oct 2008) | 1 line added view ................ r12905 | kohsuke | 2008-10-31 15:53:49 -0700 (Fri, 31 Oct 2008) | 1 line doc improvement ................ r12914 | kohsuke | 2008-11-01 17:45:57 -0700 (Sat, 01 Nov 2008) | 1 line adding code for connecting with SSH ................ r12915 | kohsuke | 2008-11-01 17:49:28 -0700 (Sat, 01 Nov 2008) | 1 line working on launchers ................ r12916 | kohsuke | 2008-11-01 18:33:12 -0700 (Sat, 01 Nov 2008) | 1 line added a method to fully read a stream ................ r12917 | kohsuke | 2008-11-01 18:33:45 -0700 (Sat, 01 Nov 2008) | 1 line bumped up stapler ................ r12918 | kohsuke | 2008-11-01 18:39:41 -0700 (Sat, 01 Nov 2008) | 1 line doc improvement. ................ r12919 | kohsuke | 2008-11-01 18:45:24 -0700 (Sat, 01 Nov 2008) | 1 line added a launcher ................ r12920 | kohsuke | 2008-11-01 18:55:02 -0700 (Sat, 01 Nov 2008) | 1 line implementing the actual ComputerLauncher ................ r12938 | kohsuke | 2008-11-02 08:56:05 -0800 (Sun, 02 Nov 2008) | 1 line support the field notation ................ r12939 | kohsuke | 2008-11-02 09:20:21 -0800 (Sun, 02 Nov 2008) | 1 line added the mechanism to execute the init script ................ r12940 | kohsuke | 2008-11-02 09:21:38 -0800 (Sun, 02 Nov 2008) | 1 line simplification ................ r12941 | kohsuke | 2008-11-02 09:36:21 -0800 (Sun, 02 Nov 2008) | 1 line adding key handling ................ r12950 | kohsuke | 2008-11-03 11:00:58 -0800 (Mon, 03 Nov 2008) | 1 line formatting changes ................ r13045 | kohsuke | 2008-11-06 15:24:32 -0800 (Thu, 06 Nov 2008) | 1 line adding time series datatype for retaining load average statistics in memory ................ r13046 | kohsuke | 2008-11-06 15:59:02 -0800 (Thu, 06 Nov 2008) | 1 line added a convenience method. ................ r13048 | kohsuke | 2008-11-06 16:21:54 -0800 (Thu, 06 Nov 2008) | 2 lines - started monitoring # of executor statistics. - exposed label to the remote API ................ r13063 | kohsuke | 2008-11-07 13:05:15 -0800 (Fri, 07 Nov 2008) | 1 line added a convenience method. ................ r13064 | kohsuke | 2008-11-07 13:11:08 -0800 (Fri, 07 Nov 2008) | 1 line monitor the length of the queue too ................ r13066 | kohsuke | 2008-11-07 14:15:56 -0800 (Fri, 07 Nov 2008) | 1 line moved the stats to its own class. ................ r13072 | kohsuke | 2008-11-07 15:40:29 -0800 (Fri, 07 Nov 2008) | 1 line adding provisioning logic based on load statistics ................ r13073 | kohsuke | 2008-11-07 15:46:00 -0800 (Fri, 07 Nov 2008) | 1 line for effective testing, we need sub-sec precision ................ r13074 | kohsuke | 2008-11-07 16:24:44 -0800 (Fri, 07 Nov 2008) | 1 line fixed a lie. ................ r13075 | kohsuke | 2008-11-07 16:25:12 -0800 (Fri, 07 Nov 2008) | 1 line bug fix ................ r13076 | kohsuke | 2008-11-07 16:30:55 -0800 (Fri, 07 Nov 2008) | 1 line avoid using deprecated methods ................ r13111 | kohsuke | 2008-11-09 11:54:23 -0800 (Sun, 09 Nov 2008) | 1 line added the Future<?> return parameter to Computer.launch(). To do this w/o breaking compatibility, renamed launch to connect. ................ r13122 | kohsuke | 2008-11-10 14:38:03 -0800 (Mon, 10 Nov 2008) | 1 line allow programmatic update of the assigned label ................ r13123 | kohsuke | 2008-11-10 14:38:40 -0800 (Mon, 10 Nov 2008) | 1 line Iterator not needed because CopyOnWriteArrayList doesn't support removal via iterator. ................ r13124 | kohsuke | 2008-11-10 14:39:24 -0800 (Mon, 10 Nov 2008) | 1 line added another Builder for tests ................ r13125 | kohsuke | 2008-11-10 14:39:48 -0800 (Mon, 10 Nov 2008) | 1 line simplified a bit. This TestEnvironment stuff needs some clearer story. ................ r13126 | kohsuke | 2008-11-10 14:46:40 -0800 (Mon, 10 Nov 2008) | 1 line IDEA complains about this. ................ r13127 | kohsuke | 2008-11-10 14:51:53 -0800 (Mon, 10 Nov 2008) | 1 line improved the error diagnostics by displaying why a provisioned node failed to launch ................ r13128 | kohsuke | 2008-11-10 14:52:12 -0800 (Mon, 10 Nov 2008) | 1 line Started a test case for NodeProvisioner ................ r13129 | kohsuke | 2008-11-10 14:52:27 -0800 (Mon, 10 Nov 2008) | 1 line formatting changes ................ r13130 | kohsuke | 2008-11-10 15:16:02 -0800 (Mon, 10 Nov 2008) | 1 line report the failure as a failure. ................ r13131 | kohsuke | 2008-11-10 16:34:23 -0800 (Mon, 10 Nov 2008) | 1 line adding a parameter to the connect method to support joining to the pending launch activity. ................ r13132 | kohsuke | 2008-11-10 16:38:31 -0800 (Mon, 10 Nov 2008) | 1 line making members public so that it can be accessed from other classes (DummyCloudImpl was the first to do this) ................ r13133 | kohsuke | 2008-11-10 16:38:58 -0800 (Mon, 10 Nov 2008) | 1 line split the cloud implementation to a separate class to allow reuse. ................ r13134 | kohsuke | 2008-11-10 16:56:27 -0800 (Mon, 10 Nov 2008) | 1 line assign unique names to support multiple jobs ................ r13135 | kohsuke | 2008-11-10 17:11:31 -0800 (Mon, 10 Nov 2008) | 1 line avoid unnecessary interruption ................ r13136 | kohsuke | 2008-11-10 17:11:41 -0800 (Mon, 10 Nov 2008) | 1 line adding another test case ................ r13137 | kohsuke | 2008-11-10 17:16:28 -0800 (Mon, 10 Nov 2008) | 1 line cleaned up a test case ................ r13138 | kohsuke | 2008-11-10 17:36:52 -0800 (Mon, 10 Nov 2008) | 1 line since the setNode method is called on every Computer just by adding a new node, don't force a new launch attempt. ................ r13139 | kohsuke | 2008-11-10 17:37:38 -0800 (Mon, 10 Nov 2008) | 1 line perform orderly shutdown by giving computers enough time to disconnect. ................ r13140 | kohsuke | 2008-11-10 17:38:08 -0800 (Mon, 10 Nov 2008) | 3 lines return Future for synchronization. This breaks binary compatibility, but I checked none of the plugins in Hudson SVN uses this, so I hope this is OK. ................ r13141 | kohsuke | 2008-11-10 17:38:46 -0800 (Mon, 10 Nov 2008) | 1 line improved diagnostics ................ r13142 | kohsuke | 2008-11-10 17:39:55 -0800 (Mon, 10 Nov 2008) | 1 line removed compiler warning ................ r13143 | kohsuke | 2008-11-10 18:02:56 -0800 (Mon, 10 Nov 2008) | 1 line hide the rounding related problem from Cloud by passing int instead of float. ................ r13144 | kohsuke | 2008-11-10 18:10:10 -0800 (Mon, 10 Nov 2008) | 1 line bug fix ................ r13145 | kohsuke | 2008-11-10 18:11:51 -0800 (Mon, 10 Nov 2008) | 1 line formatting changes ................ r13146 | kohsuke | 2008-11-10 18:15:08 -0800 (Mon, 10 Nov 2008) | 1 line moved the slave launch code to HudsonTestCase for reuse ................ r13147 | kohsuke | 2008-11-10 18:20:19 -0800 (Mon, 10 Nov 2008) | 1 line adding another test case ................ r13150 | kohsuke | 2008-11-11 07:28:53 -0800 (Tue, 11 Nov 2008) | 1 line bug fix ................ r13153 | kohsuke | 2008-11-11 14:04:21 -0800 (Tue, 11 Nov 2008) | 1 line cutting down the test size to 5 to increase the test speed ................ r13154 | kohsuke | 2008-11-11 14:04:37 -0800 (Tue, 11 Nov 2008) | 1 line improved debuggability ................ r13155 | kohsuke | 2008-11-11 14:10:04 -0800 (Tue, 11 Nov 2008) | 1 line added another convenience method ................ r13156 | kohsuke | 2008-11-11 14:10:21 -0800 (Tue, 11 Nov 2008) | 1 line further reduce the test turn around time ................ r13157 | kohsuke | 2008-11-11 14:22:03 -0800 (Tue, 11 Nov 2008) | 1 line doc improvement and clean up ................ r13158 | kohsuke | 2008-11-11 14:22:28 -0800 (Tue, 11 Nov 2008) | 1 line added a new metho ................ r13487 | kohsuke | 2008-12-09 17:17:30 -0800 (Tue, 09 Dec 2008) | 1 line SlaveTemplate needs to be able to computer # of executors. ................ r13488 | kohsuke | 2008-12-09 17:18:05 -0800 (Tue, 09 Dec 2008) | 1 line fixed a compilation problem with the latest head of the branch ................ r13851 | kohsuke | 2008-12-24 13:40:43 -0800 (Wed, 24 Dec 2008) | 82 lines fixed a dead lock reported by Jesse. Found one Java-level deadlock: ============================= "Executor #0 for master": waiting to lock monitor 0x09409bac (object 0x87474ca0, a hudson.util.CopyOnWriteMap$Hash), which is held by "main" "main": waiting to lock monitor 0x09409b48 (object 0x87474d48, a hudson.model.Hudson$MasterComputer), which is held by "Executor #0 for master" Java stack information for the threads listed above: =================================================== "Executor #0 for master": at hudson.util.CopyOnWriteMap.remove(CopyOnWriteMap.java:78) - waiting to lock <0x87474ca0> (a hudson.util.CopyOnWriteMap$Hash) at hudson.model.Hudson.removeComputer(Hudson.java:717) at hudson.model.Computer.removeExecutor(Computer.java:433) - locked <0x87474d48> (a hudson.model.Hudson$MasterComputer) at hudson.model.Executor.run(Executor.java:65) - locked <0x87474d48> (a hudson.model.Hudson$MasterComputer) "main": at hudson.model.Computer.setNumExecutors(Computer.java:338) - waiting to lock <0x87474d48> (a hudson.model.Hudson$MasterComputer) at hudson.model.Computer.setNode(Computer.java:327) at hudson.model.Hudson.updateComputer(Hudson.java:704) at hudson.model.Hudson.updateComputerList(Hudson.java:685) - locked <0x87474ca0> (a hudson.util.CopyOnWriteMap$Hash) at hudson.model.Hudson.setNodes(Hudson.java:1076) at hudson.model.Hudson.addNode(Hudson.java:1060) - locked <0x87474cb0> (a hudson.model.Hudson) at org.jvnet.hudson.test.HudsonTestCase.createSlave(HudsonTestCase.java:247) at hudson.slaves.NodeProvisionerTest.testBaselineSlaveUsage(NodeProvisionerTest.java:86) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at junit.framework.TestCase.runTest(TestCase.java:154) at org.jvnet.hudson.test.HudsonTestCase.runTest(HudsonTestCase.java:151) at junit.framework.TestCase.runBare(TestCase.java:127) at junit.framework.TestResult$1.protect(TestResult.java:106) at junit.framework.TestResult.runProtected(TestResult.java:124) at junit.framework.TestResult.run(TestResult.java:109) at junit.framework.TestCase.run(TestCase.java:118) at junit.framework.TestSuite.runTest(TestSuite.java:208) at junit.framework.TestSuite.run(TestSuite.java:203) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.apache.maven.surefire.junit.JUnitTestSet.execute(JUnitTestSet.java:213) at org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.executeTestSet(AbstractDirectoryTestSuite.java:140) at org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.execute(AbstractDirectoryTestSuite.java:127) at org.apache.maven.surefire.Surefire.run(Surefire.java:177) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.apache.maven.surefire.booter.SurefireBooter.runSuitesInProcess(SurefireBooter.java:345) at org.apache.maven.surefire.booter.SurefireBooter.run(SurefireBooter.java:241) at org.apache.maven.plugin.surefire.SurefirePlugin.execute(SurefirePlugin.java:537) at org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:447) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:539) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalWithLifecycle(DefaultLifecycleExecutor.java:480) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:459) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:311) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:278) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:143) at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:333) at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:126) at org.apache.maven.cli.MavenCli.main(MavenCli.java:282) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315) at org.codehaus.classworlds.Launcher.launch(Launcher.java:255) at org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430) at org.codehaus.classworlds.Launcher.main(Launcher.java:375) Found 1 deadlock. ................ r13852 | kohsuke | 2008-12-24 14:32:29 -0800 (Wed, 24 Dec 2008) | 1 line bug fix in the test case. ................ r13854 | kohsuke | 2008-12-24 15:20:22 -0800 (Wed, 24 Dec 2008) | 2 lines Using a new version of Rhino to get a proper exception chaining. ................ r13855 | kohsuke | 2008-12-24 15:22:13 -0800 (Wed, 24 Dec 2008) | 1 line typo ................ r13856 | kohsuke | 2008-12-24 15:37:56 -0800 (Wed, 24 Dec 2008) | 1 line CR shouldn't be in the repository ................ r13859 | kohsuke | 2008-12-24 15:50:32 -0800 (Wed, 24 Dec 2008) | 3 lines Fixed svn:eol-style. ................ r13866 | kohsuke | 2008-12-24 21:26:43 -0800 (Wed, 24 Dec 2008) | 3 lines Copying rev.13860 to retry a merge that now looks suspicious. ................ r13869 | kohsuke | 2008-12-24 22:03:46 -0800 (Wed, 24 Dec 2008) | 2 lines The 2nd merge was successful, so adopting the successful merge as the multiple-computer-per-node branch. ................ r13872 | kohsuke | 2008-12-25 07:28:37 -0800 (Thu, 25 Dec 2008) | 1 line fixed a test failure ................ r13873 | kohsuke | 2008-12-25 08:16:49 -0800 (Thu, 25 Dec 2008) | 1 line expanded NodeProvisioner to work on per-label basis ................ r13874 | kohsuke | 2008-12-25 08:27:32 -0800 (Thu, 25 Dec 2008) | 1 line bug fix ................ r13875 | kohsuke | 2008-12-25 08:33:17 -0800 (Thu, 25 Dec 2008) | 1 line bug fix ................ r13876 | kohsuke | 2008-12-25 08:45:03 -0800 (Thu, 25 Dec 2008) | 3 lines [HUDSON-2605] Strangely, I discovered that on some File, which is new File("./target/hudson-for-test"), file.exists()==false but file.getAbsoluteFile().exists()==true. It looks like this happens when $PWD of the process at the OS level is different from System.getProperty("user.dir") ................ r13878 | kohsuke | 2008-12-25 15:52:45 -0800 (Thu, 25 Dec 2008) | 1 line added a marker file ................ r13879 | kohsuke | 2008-12-25 15:53:13 -0800 (Thu, 25 Dec 2008) | 1 line use marker file to find the hudson main workspace. ................ r13883 | kohsuke | 2008-12-26 07:50:44 -0800 (Fri, 26 Dec 2008) | 1 line avoid using a deprecated method. ................ r13884 | kohsuke | 2008-12-26 07:50:59 -0800 (Fri, 26 Dec 2008) | 1 line adding more probes ................ r13885 | kohsuke | 2008-12-26 08:15:42 -0800 (Fri, 26 Dec 2008) | 1 line for analyzing test failures, capturing the output is crucial. ................ r13887 | kohsuke | 2008-12-26 11:25:12 -0800 (Fri, 26 Dec 2008) | 1 line allow sub-types to intercept mutation ................ r13888 | kohsuke | 2008-12-26 11:26:01 -0800 (Fri, 26 Dec 2008) | 1 line clouds need to be taken into account before marking a label as pointless. ................ r13889 | kohsuke | 2008-12-26 11:26:40 -0800 (Fri, 26 Dec 2008) | 3 lines fixing bugs in NodeProvisioner. Conservative estimate on idle executors have to be max, not min. ................ r13890 | kohsuke | 2008-12-26 11:42:53 -0800 (Fri, 26 Dec 2008) | 1 line turns out the problem was that we were adding multiple slaves under the same name, which confused Hudson to no end. ................ r13896 | kohsuke | 2008-12-27 07:44:20 -0800 (Sat, 27 Dec 2008) | 1 line formatting changes ................ r13897 | kohsuke | 2008-12-27 07:45:00 -0800 (Sat, 27 Dec 2008) | 1 line reprot the test name to stdout so that one can easily distinguish different tests in target/surefire-reports/xyz-output.txt ................ r13898 | kohsuke | 2008-12-27 07:54:53 -0800 (Sat, 27 Dec 2008) | 1 line doc improvement ................ r13899 | kohsuke | 2008-12-27 09:59:07 -0800 (Sat, 27 Dec 2008) | 1 line split the functionality into two classes ................ r13900 | kohsuke | 2008-12-27 10:00:29 -0800 (Sat, 27 Dec 2008) | 1 line doc improvement ................ r13901 | kohsuke | 2008-12-27 10:06:24 -0800 (Sat, 27 Dec 2008) | 1 line added 'tick' ................ r13902 | kohsuke | 2008-12-27 10:08:04 -0800 (Sat, 27 Dec 2008) | 1 line adding graph rendering of the load statistics ................ r13903 | kohsuke | 2008-12-27 10:19:41 -0800 (Sat, 27 Dec 2008) | 1 line improved graph layout ................ r13904 | kohsuke | 2008-12-27 10:21:05 -0800 (Sat, 27 Dec 2008) | 1 line Picker -> TimeScale to better reflect what it is. ................ r13905 | kohsuke | 2008-12-27 10:40:27 -0800 (Sat, 27 Dec 2008) | 1 line duplicate ................ r13906 | kohsuke | 2008-12-27 14:39:36 -0800 (Sat, 27 Dec 2008) | 1 line renamed to a shorter name ................ r13907 | kohsuke | 2008-12-27 15:03:25 -0800 (Sat, 27 Dec 2008) | 1 line added icons ................ r13908 | kohsuke | 2008-12-27 16:20:37 -0800 (Sat, 27 Dec 2008) | 1 line renamed to make 'loadStatistics' the URL binding. ................ r13909 | kohsuke | 2008-12-27 16:21:01 -0800 (Sat, 27 Dec 2008) | 1 line exposing loadStatistics for Computer for better URL binding ................ r13910 | kohsuke | 2008-12-27 16:21:16 -0800 (Sat, 27 Dec 2008) | 1 line adding UI support ................ r13911 | kohsuke | 2008-12-27 19:31:43 -0800 (Sat, 27 Dec 2008) | 1 line added some basic visualization ................ r13912 | kohsuke | 2008-12-27 19:35:10 -0800 (Sat, 27 Dec 2008) | 1 line if there's no description, don't even show it. ................ r13913 | kohsuke | 2008-12-27 19:39:26 -0800 (Sat, 27 Dec 2008) | 1 line added load statistics page for the label as well. ................ r13914 | kohsuke | 2008-12-27 19:48:55 -0800 (Sat, 27 Dec 2008) | 1 line added one more convenience method. ................ r13915 | kohsuke | 2008-12-27 19:54:29 -0800 (Sat, 27 Dec 2008) | 1 line refactored so that a different Dataset can be fed. ................ r13916 | kohsuke | 2008-12-27 19:59:20 -0800 (Sat, 27 Dec 2008) | 1 line added global load statistics lnk to the management screen. ................ r13917 | kohsuke | 2008-12-27 20:31:01 -0800 (Sat, 27 Dec 2008) | 1 line <dt>s should use the bold font to distinguish them from <dd>s ................ r13918 | kohsuke | 2008-12-27 20:35:10 -0800 (Sat, 27 Dec 2008) | 1 line added description of what the graph means. ................ r13919 | kohsuke | 2008-12-27 20:35:39 -0800 (Sat, 27 Dec 2008) | 1 line added description of what the graph means. ................ git-svn-id: https://hudson.dev.java.net/svn/hudson/trunk/hudson/main@14215 71c3de6d-444a-0410-be80-ed276b4c234a
2009-01-07 09:02:56 +08:00
/**
* Traverses a form in the reverse document order starting from the given element (but excluding it),
* until the given filter matches, or run out of an element.
*/
function findPrevious(src,filter) {
function prev(e) {
var p = e.previousSibling;
if(p==null) return e.parentNode;
while(p.lastChild!=null)
p = p.lastChild;
return p;
}
while(src!=null) {
src = prev(src);
if(src==null) break;
Merged revisions 11754-11755,11763-11766,11770,11773-11777,11791-11797,11828-11829,11831-11839,11841-11843,11850,11854,11994,12774,12778-12793,12820-12822,12831-12841,12854-12855,12860-12882,12896-12905,12914-12920,12938-12941,12950,13045-13046,13048,13063-13064,13066,13072-13076,13111,13122-13147,13150,13153-13158,13487-13488,13851-13852,13854-13856,13859,13866-13867,13869,13872-13876,13878-13879,13883-13885,13887-13890,13896-13919 via svnmerge from https://www.dev.java.net/svn/hudson/branches/multiple-computer-per-node ................ r11754 | kohsuke | 2008-08-25 17:59:14 -0700 (Mon, 25 Aug 2008) | 3 lines Adding EphemeralNode for non-persisted dynamically-allocated expandable/shrinkable slave pool. Tweaked the serialization of Hudson.slaves accordingly. ................ r11755 | kohsuke | 2008-08-25 18:10:42 -0700 (Mon, 25 Aug 2008) | 1 line making a small improvements ................ r11763 | kohsuke | 2008-08-26 13:57:25 -0700 (Tue, 26 Aug 2008) | 1 line adding more convenience methods ................ r11764 | kohsuke | 2008-08-26 14:24:20 -0700 (Tue, 26 Aug 2008) | 1 line ported mask capability from the TFS plugin to the core. ................ r11765 | kohsuke | 2008-08-26 14:26:25 -0700 (Tue, 26 Aug 2008) | 1 line making it non-final to allow for subclassing ................ r11766 | kohsuke | 2008-08-26 14:35:20 -0700 (Tue, 26 Aug 2008) | 1 line test case for NodeList ................ r11770 | kohsuke | 2008-08-26 15:15:21 -0700 (Tue, 26 Aug 2008) | 3 lines Wrote a simple tool that monitors a file system change (in a poor way) and triggers a build. ................ r11773 | kohsuke | 2008-08-26 17:20:30 -0700 (Tue, 26 Aug 2008) | 1 line made more structured ................ r11774 | kohsuke | 2008-08-26 17:47:41 -0700 (Tue, 26 Aug 2008) | 1 line indentation fix ................ r11775 | kohsuke | 2008-08-26 17:48:22 -0700 (Tue, 26 Aug 2008) | 1 line remove the use of a deprecated feature. ................ r11776 | kohsuke | 2008-08-26 17:51:54 -0700 (Tue, 26 Aug 2008) | 1 line renamed to 'ALL' to be consistent with recent use of DescriptorList ................ r11777 | kohsuke | 2008-08-26 18:04:17 -0700 (Tue, 26 Aug 2008) | 1 line adding NodeFactory list and its configuration mechanism ................ r11791 | kohsuke | 2008-08-27 09:43:38 -0700 (Wed, 27 Aug 2008) | 1 line picked up the latest jelly with Iterable support in <j:forEach> ................ r11792 | kohsuke | 2008-08-27 09:44:08 -0700 (Wed, 27 Aug 2008) | 1 line Iterable support added in commons-jelly 1.1-hudson-20080826 ................ r11793 | kohsuke | 2008-08-27 10:15:14 -0700 (Wed, 27 Aug 2008) | 2 lines - added name to NodeFactory for binding NodeFactory to URL tree. - NodeFactory should be access controlled ................ r11794 | kohsuke | 2008-08-27 10:41:11 -0700 (Wed, 27 Aug 2008) | 1 line added a method to add one Node at a time ................ r11795 | kohsuke | 2008-08-27 10:41:37 -0700 (Wed, 27 Aug 2008) | 1 line added permission constatnt ................ r11796 | kohsuke | 2008-08-27 10:42:13 -0700 (Wed, 27 Aug 2008) | 1 line allowing the launch method to throw an exception. ................ r11797 | kohsuke | 2008-08-27 10:44:13 -0700 (Wed, 27 Aug 2008) | 1 line improving the handling ................ r11828 | kohsuke | 2008-08-29 11:07:16 -0700 (Fri, 29 Aug 2008) | 1 line added executor config to the sidebar. ................ r11829 | kohsuke | 2008-08-29 11:16:11 -0700 (Fri, 29 Aug 2008) | 1 line "it" should be assigned to NodeFactory ................ r11831 | kohsuke | 2008-08-29 11:44:41 -0700 (Fri, 29 Aug 2008) | 1 line formatting changes ................ r11832 | kohsuke | 2008-08-29 11:59:21 -0700 (Fri, 29 Aug 2008) | 1 line added a script to create a flashing image from any picture ................ r11833 | kohsuke | 2008-08-29 12:07:56 -0700 (Fri, 29 Aug 2008) | 1 line doc improvement. ................ r11834 | kohsuke | 2008-08-29 13:37:59 -0700 (Fri, 29 Aug 2008) | 1 line added new images to indicate that a slave is launching ................ r11835 | kohsuke | 2008-08-29 13:43:41 -0700 (Fri, 29 Aug 2008) | 1 line indicate a launching slave accordingly. ................ r11836 | kohsuke | 2008-08-29 14:02:28 -0700 (Fri, 29 Aug 2008) | 1 line added a method to remove a Node. ................ r11837 | kohsuke | 2008-08-29 14:02:38 -0700 (Fri, 29 Aug 2008) | 1 line disconnect ................ r11838 | kohsuke | 2008-08-29 14:03:22 -0700 (Fri, 29 Aug 2008) | 1 line formatting changes ................ r11839 | kohsuke | 2008-08-29 14:14:04 -0700 (Fri, 29 Aug 2008) | 1 line allowing subclasses. ................ r11841 | kohsuke | 2008-08-29 14:28:29 -0700 (Fri, 29 Aug 2008) | 1 line constructor should be the first in the definition. ................ r11842 | kohsuke | 2008-08-29 14:31:01 -0700 (Fri, 29 Aug 2008) | 1 line doc improvement. ................ r11843 | kohsuke | 2008-08-29 14:32:48 -0700 (Fri, 29 Aug 2008) | 1 line fixed a problem of using partially constructed object during launch(), because the setNode() method is called from the Computer constructor. ................ r11850 | kohsuke | 2008-08-29 14:50:36 -0700 (Fri, 29 Aug 2008) | 1 line serialize NodeFactory first so that references to them from NodeList will become references in XML. ................ r11854 | kohsuke | 2008-08-29 14:56:56 -0700 (Fri, 29 Aug 2008) | 1 line cleaning up a bit. ................ r11994 | kohsuke | 2008-09-03 14:42:11 -0700 (Wed, 03 Sep 2008) | 21 lines Fixed ArrayIndexOutOfBoundsException during replace(), when the title contains a '$' literal. The typical stack trace looks like: Caused by: java.lang.ArrayIndexOutOfBoundsException: 32 at hudson.MarkupText$SubText.start(MarkupText.java:95) at hudson.MarkupText$SubText.group(MarkupText.java:131) at hudson.MarkupText$SubText.replace(MarkupText.java:154) at hudson.MarkupText$SubText.surroundWith(MarkupText.java:83) at hudson.plugins.jira.JiraChangeLogAnnotator.annotate(JiraChangeLogAnnotator.java:37) at hudson.scm.ChangeLogSet$Entry.getMsgAnnotated(ChangeLogSet.java:117) ... 148 more Vijayan Jayaraman and I found this problem while we were looking at the server log of Hudson for OpenJFX. Adding a unit test to verify this behavior, too. ................ r12774 | kohsuke | 2008-10-27 15:03:36 -0700 (Mon, 27 Oct 2008) | 3 lines preparing for heterogenousness in Node, so that different Node can be configured with different UIs, much like how different Jobs can be configured. Creating a slave works also like creating a new job. ................ r12778 | kohsuke | 2008-10-27 15:06:51 -0700 (Mon, 27 Oct 2008) | 1 line We need to be able to create an emtpy Slave initially, so we have to do with the check in the form field validation. ................ r12779 | kohsuke | 2008-10-27 15:48:04 -0700 (Mon, 27 Oct 2008) | 1 line making the new slave page a two-step process ................ r12780 | kohsuke | 2008-10-27 15:48:24 -0700 (Mon, 27 Oct 2008) | 1 line fixed a compilation problem ................ r12781 | kohsuke | 2008-10-27 15:53:30 -0700 (Mon, 27 Oct 2008) | 1 line bug fixes ................ r12782 | kohsuke | 2008-10-27 15:58:20 -0700 (Mon, 27 Oct 2008) | 1 line bug fixes ................ r12783 | kohsuke | 2008-10-27 16:08:56 -0700 (Mon, 27 Oct 2008) | 1 line making the configuration page work for slaves ................ r12784 | kohsuke | 2008-10-27 16:35:17 -0700 (Mon, 27 Oct 2008) | 1 line added new-computer.svg ................ r12785 | kohsuke | 2008-10-27 16:37:26 -0700 (Mon, 27 Oct 2008) | 1 line hooking up the config/create pages to the UI ................ r12786 | kohsuke | 2008-10-27 16:44:40 -0700 (Mon, 27 Oct 2008) | 1 line fixed a copy method. ................ r12787 | kohsuke | 2008-10-27 16:47:33 -0700 (Mon, 27 Oct 2008) | 1 line code was broken when a slave was renamed ................ r12788 | kohsuke | 2008-10-27 16:58:04 -0700 (Mon, 27 Oct 2008) | 1 line moving out the commonality into a new tag ................ r12789 | kohsuke | 2008-10-27 17:01:21 -0700 (Mon, 27 Oct 2008) | 1 line consistent term usage ................ r12790 | kohsuke | 2008-10-27 17:03:19 -0700 (Mon, 27 Oct 2008) | 1 line retiring the configureExecutors. Slave configuration is now moved to individual slave page ................ r12791 | kohsuke | 2008-10-27 17:10:32 -0700 (Mon, 27 Oct 2008) | 1 line retired configureExecutors.jelly and completed moved its contents to somewhere else ................ r12792 | kohsuke | 2008-10-27 17:21:53 -0700 (Mon, 27 Oct 2008) | 1 line bug fix. request handling of "/descriptor/FQCN/..." was broken. ................ r12793 | kohsuke | 2008-10-27 17:27:08 -0700 (Mon, 27 Oct 2008) | 1 line NodeFactory -> Cloud to encourage consistent term usage between the code and the UI. ................ r12820 | kohsuke | 2008-10-29 10:58:20 -0700 (Wed, 29 Oct 2008) | 1 line formatting fix ................ r12821 | kohsuke | 2008-10-29 11:17:49 -0700 (Wed, 29 Oct 2008) | 1 line added classes for handling a secret and prevent accidental exposure of a secret in the persisted form ................ r12822 | kohsuke | 2008-10-29 11:32:39 -0700 (Wed, 29 Oct 2008) | 1 line added a base64 validator ................ r12831 | kohsuke | 2008-10-29 15:58:45 -0700 (Wed, 29 Oct 2008) | 1 line secret key needs to be persisted outside config.xml (and it is, already!) ................ r12832 | kohsuke | 2008-10-29 16:06:28 -0700 (Wed, 29 Oct 2008) | 1 line started working on Amazon EC2 plugin ................ r12833 | kohsuke | 2008-10-29 16:09:20 -0700 (Wed, 29 Oct 2008) | 1 line brought the same enhancement as in <textbox /> ................ r12834 | kohsuke | 2008-10-29 16:15:05 -0700 (Wed, 29 Oct 2008) | 1 line copy over the onclick handler from the original button element ................ r12835 | kohsuke | 2008-10-29 17:01:04 -0700 (Wed, 29 Oct 2008) | 1 line allow OK messages to be sent with some mark up. ................ r12836 | kohsuke | 2008-10-29 17:06:52 -0700 (Wed, 29 Oct 2008) | 1 line added connection testing. This pattern needs to be generalized since it happens often ................ r12837 | kohsuke | 2008-10-29 17:13:11 -0700 (Wed, 29 Oct 2008) | 1 line this is little better ................ r12838 | kohsuke | 2008-10-29 17:17:44 -0700 (Wed, 29 Oct 2008) | 1 line added spinner ................ r12839 | kohsuke | 2008-10-29 17:31:54 -0700 (Wed, 29 Oct 2008) | 1 line restructuring the validation button support in a form that can be readily moved to the core. ................ r12840 | kohsuke | 2008-10-29 18:01:41 -0700 (Wed, 29 Oct 2008) | 1 line added <f:validateButton/> for multi-field server-side validation ................ r12841 | kohsuke | 2008-10-29 18:03:12 -0700 (Wed, 29 Oct 2008) | 1 line logic moved to <f:validateButton/> in the core. ................ r12854 | kohsuke | 2008-10-30 13:32:58 -0700 (Thu, 30 Oct 2008) | 1 line @QueryParameter.value won't be necessary any more ................ r12855 | kohsuke | 2008-10-30 13:42:58 -0700 (Thu, 30 Oct 2008) | 1 line need a strongly-typed constructor. ................ r12860 | kohsuke | 2008-10-30 15:24:18 -0700 (Thu, 30 Oct 2008) | 1 line adding more reflection support, which in turn we use in taglibs to raise the level of abstraction. ................ r12861 | kohsuke | 2008-10-30 15:33:22 -0700 (Thu, 30 Oct 2008) | 1 line added a tag to create databinding to a<select> element from an enum property ................ r12862 | kohsuke | 2008-10-30 15:37:44 -0700 (Thu, 30 Oct 2008) | 1 line adding a smarter bi-directional binding through <f:repeatable field="..."/> ................ r12863 | kohsuke | 2008-10-30 15:47:48 -0700 (Thu, 30 Oct 2008) | 1 line making progress with the EC2 support ................ r12864 | kohsuke | 2008-10-30 16:12:34 -0700 (Thu, 30 Oct 2008) | 1 line added form field validation for AMI ID ................ r12865 | kohsuke | 2008-10-30 16:15:44 -0700 (Thu, 30 Oct 2008) | 1 line added simpler version ................ r12866 | kohsuke | 2008-10-30 16:17:15 -0700 (Thu, 30 Oct 2008) | 1 line doc improvement ................ r12867 | kohsuke | 2008-10-30 16:17:19 -0700 (Thu, 30 Oct 2008) | 1 line simplified a bit ................ r12868 | kohsuke | 2008-10-30 16:40:25 -0700 (Thu, 30 Oct 2008) | 1 line doc improvement ................ r12869 | kohsuke | 2008-10-30 17:00:57 -0700 (Thu, 30 Oct 2008) | 1 line adding the provisioning of the new slave ................ r12870 | kohsuke | 2008-10-30 17:07:27 -0700 (Thu, 30 Oct 2008) | 1 line /** {@inheritDoc} */ is the default behavior for javadoc, so there's no point in making that explicit. ................ r12871 | kohsuke | 2008-10-30 17:11:04 -0700 (Thu, 30 Oct 2008) | 1 line doc bug fix ................ r12872 | kohsuke | 2008-10-30 17:17:20 -0700 (Thu, 30 Oct 2008) | 1 line simplified a bit ................ r12873 | kohsuke | 2008-10-30 17:19:06 -0700 (Thu, 30 Oct 2008) | 1 line added RetentionStrategy for EC2 instances ................ r12874 | kohsuke | 2008-10-30 17:21:17 -0700 (Thu, 30 Oct 2008) | 1 line allowing subclasses to override the disconnect behavior. ................ r12875 | kohsuke | 2008-10-30 18:02:35 -0700 (Thu, 30 Oct 2008) | 1 line added termination ................ r12876 | kohsuke | 2008-10-30 18:05:30 -0700 (Thu, 30 Oct 2008) | 1 line forgot to rename when NodeFactory was renamed to Cloud ................ r12877 | kohsuke | 2008-10-30 18:06:08 -0700 (Thu, 30 Oct 2008) | 1 line using the console icon ................ r12878 | kohsuke | 2008-10-30 18:17:20 -0700 (Thu, 30 Oct 2008) | 1 line adding UI to remove a slave. ................ r12879 | kohsuke | 2008-10-30 18:48:57 -0700 (Thu, 30 Oct 2008) | 1 line commons-discovery now needed in stapler ................ r12880 | kohsuke | 2008-10-30 18:50:27 -0700 (Thu, 30 Oct 2008) | 1 line needs to use a newer version of stapler ................ r12881 | kohsuke | 2008-10-30 18:51:02 -0700 (Thu, 30 Oct 2008) | 1 line Bye bye CVS ................ r12882 | kohsuke | 2008-10-30 18:51:43 -0700 (Thu, 30 Oct 2008) | 1 line Bye bye CVS ................ r12896 | kohsuke | 2008-10-31 14:52:07 -0700 (Fri, 31 Oct 2008) | 1 line fixed the ordering between field and the mighty get(String) method. ................ r12897 | kohsuke | 2008-10-31 15:08:41 -0700 (Fri, 31 Oct 2008) | 1 line fixed test compilation problems ................ r12898 | kohsuke | 2008-10-31 15:11:25 -0700 (Fri, 31 Oct 2008) | 1 line marking this as a model object since it's always bound to URL. ................ r12899 | kohsuke | 2008-10-31 15:13:42 -0700 (Fri, 31 Oct 2008) | 1 line adding UI hook up to manually provision a new node ................ r12900 | kohsuke | 2008-10-31 15:14:00 -0700 (Fri, 31 Oct 2008) | 1 line after merging the trunk the version number is different ................ r12901 | kohsuke | 2008-10-31 15:21:54 -0700 (Fri, 31 Oct 2008) | 1 line adding UI hook up for provisioning a new slave ................ r12902 | kohsuke | 2008-10-31 15:45:10 -0700 (Fri, 31 Oct 2008) | 1 line adding a hook to decorate ComputerLauncher. ................ r12903 | kohsuke | 2008-10-31 15:48:21 -0700 (Fri, 31 Oct 2008) | 1 line added filtering support ................ r12904 | kohsuke | 2008-10-31 15:52:45 -0700 (Fri, 31 Oct 2008) | 1 line added view ................ r12905 | kohsuke | 2008-10-31 15:53:49 -0700 (Fri, 31 Oct 2008) | 1 line doc improvement ................ r12914 | kohsuke | 2008-11-01 17:45:57 -0700 (Sat, 01 Nov 2008) | 1 line adding code for connecting with SSH ................ r12915 | kohsuke | 2008-11-01 17:49:28 -0700 (Sat, 01 Nov 2008) | 1 line working on launchers ................ r12916 | kohsuke | 2008-11-01 18:33:12 -0700 (Sat, 01 Nov 2008) | 1 line added a method to fully read a stream ................ r12917 | kohsuke | 2008-11-01 18:33:45 -0700 (Sat, 01 Nov 2008) | 1 line bumped up stapler ................ r12918 | kohsuke | 2008-11-01 18:39:41 -0700 (Sat, 01 Nov 2008) | 1 line doc improvement. ................ r12919 | kohsuke | 2008-11-01 18:45:24 -0700 (Sat, 01 Nov 2008) | 1 line added a launcher ................ r12920 | kohsuke | 2008-11-01 18:55:02 -0700 (Sat, 01 Nov 2008) | 1 line implementing the actual ComputerLauncher ................ r12938 | kohsuke | 2008-11-02 08:56:05 -0800 (Sun, 02 Nov 2008) | 1 line support the field notation ................ r12939 | kohsuke | 2008-11-02 09:20:21 -0800 (Sun, 02 Nov 2008) | 1 line added the mechanism to execute the init script ................ r12940 | kohsuke | 2008-11-02 09:21:38 -0800 (Sun, 02 Nov 2008) | 1 line simplification ................ r12941 | kohsuke | 2008-11-02 09:36:21 -0800 (Sun, 02 Nov 2008) | 1 line adding key handling ................ r12950 | kohsuke | 2008-11-03 11:00:58 -0800 (Mon, 03 Nov 2008) | 1 line formatting changes ................ r13045 | kohsuke | 2008-11-06 15:24:32 -0800 (Thu, 06 Nov 2008) | 1 line adding time series datatype for retaining load average statistics in memory ................ r13046 | kohsuke | 2008-11-06 15:59:02 -0800 (Thu, 06 Nov 2008) | 1 line added a convenience method. ................ r13048 | kohsuke | 2008-11-06 16:21:54 -0800 (Thu, 06 Nov 2008) | 2 lines - started monitoring # of executor statistics. - exposed label to the remote API ................ r13063 | kohsuke | 2008-11-07 13:05:15 -0800 (Fri, 07 Nov 2008) | 1 line added a convenience method. ................ r13064 | kohsuke | 2008-11-07 13:11:08 -0800 (Fri, 07 Nov 2008) | 1 line monitor the length of the queue too ................ r13066 | kohsuke | 2008-11-07 14:15:56 -0800 (Fri, 07 Nov 2008) | 1 line moved the stats to its own class. ................ r13072 | kohsuke | 2008-11-07 15:40:29 -0800 (Fri, 07 Nov 2008) | 1 line adding provisioning logic based on load statistics ................ r13073 | kohsuke | 2008-11-07 15:46:00 -0800 (Fri, 07 Nov 2008) | 1 line for effective testing, we need sub-sec precision ................ r13074 | kohsuke | 2008-11-07 16:24:44 -0800 (Fri, 07 Nov 2008) | 1 line fixed a lie. ................ r13075 | kohsuke | 2008-11-07 16:25:12 -0800 (Fri, 07 Nov 2008) | 1 line bug fix ................ r13076 | kohsuke | 2008-11-07 16:30:55 -0800 (Fri, 07 Nov 2008) | 1 line avoid using deprecated methods ................ r13111 | kohsuke | 2008-11-09 11:54:23 -0800 (Sun, 09 Nov 2008) | 1 line added the Future<?> return parameter to Computer.launch(). To do this w/o breaking compatibility, renamed launch to connect. ................ r13122 | kohsuke | 2008-11-10 14:38:03 -0800 (Mon, 10 Nov 2008) | 1 line allow programmatic update of the assigned label ................ r13123 | kohsuke | 2008-11-10 14:38:40 -0800 (Mon, 10 Nov 2008) | 1 line Iterator not needed because CopyOnWriteArrayList doesn't support removal via iterator. ................ r13124 | kohsuke | 2008-11-10 14:39:24 -0800 (Mon, 10 Nov 2008) | 1 line added another Builder for tests ................ r13125 | kohsuke | 2008-11-10 14:39:48 -0800 (Mon, 10 Nov 2008) | 1 line simplified a bit. This TestEnvironment stuff needs some clearer story. ................ r13126 | kohsuke | 2008-11-10 14:46:40 -0800 (Mon, 10 Nov 2008) | 1 line IDEA complains about this. ................ r13127 | kohsuke | 2008-11-10 14:51:53 -0800 (Mon, 10 Nov 2008) | 1 line improved the error diagnostics by displaying why a provisioned node failed to launch ................ r13128 | kohsuke | 2008-11-10 14:52:12 -0800 (Mon, 10 Nov 2008) | 1 line Started a test case for NodeProvisioner ................ r13129 | kohsuke | 2008-11-10 14:52:27 -0800 (Mon, 10 Nov 2008) | 1 line formatting changes ................ r13130 | kohsuke | 2008-11-10 15:16:02 -0800 (Mon, 10 Nov 2008) | 1 line report the failure as a failure. ................ r13131 | kohsuke | 2008-11-10 16:34:23 -0800 (Mon, 10 Nov 2008) | 1 line adding a parameter to the connect method to support joining to the pending launch activity. ................ r13132 | kohsuke | 2008-11-10 16:38:31 -0800 (Mon, 10 Nov 2008) | 1 line making members public so that it can be accessed from other classes (DummyCloudImpl was the first to do this) ................ r13133 | kohsuke | 2008-11-10 16:38:58 -0800 (Mon, 10 Nov 2008) | 1 line split the cloud implementation to a separate class to allow reuse. ................ r13134 | kohsuke | 2008-11-10 16:56:27 -0800 (Mon, 10 Nov 2008) | 1 line assign unique names to support multiple jobs ................ r13135 | kohsuke | 2008-11-10 17:11:31 -0800 (Mon, 10 Nov 2008) | 1 line avoid unnecessary interruption ................ r13136 | kohsuke | 2008-11-10 17:11:41 -0800 (Mon, 10 Nov 2008) | 1 line adding another test case ................ r13137 | kohsuke | 2008-11-10 17:16:28 -0800 (Mon, 10 Nov 2008) | 1 line cleaned up a test case ................ r13138 | kohsuke | 2008-11-10 17:36:52 -0800 (Mon, 10 Nov 2008) | 1 line since the setNode method is called on every Computer just by adding a new node, don't force a new launch attempt. ................ r13139 | kohsuke | 2008-11-10 17:37:38 -0800 (Mon, 10 Nov 2008) | 1 line perform orderly shutdown by giving computers enough time to disconnect. ................ r13140 | kohsuke | 2008-11-10 17:38:08 -0800 (Mon, 10 Nov 2008) | 3 lines return Future for synchronization. This breaks binary compatibility, but I checked none of the plugins in Hudson SVN uses this, so I hope this is OK. ................ r13141 | kohsuke | 2008-11-10 17:38:46 -0800 (Mon, 10 Nov 2008) | 1 line improved diagnostics ................ r13142 | kohsuke | 2008-11-10 17:39:55 -0800 (Mon, 10 Nov 2008) | 1 line removed compiler warning ................ r13143 | kohsuke | 2008-11-10 18:02:56 -0800 (Mon, 10 Nov 2008) | 1 line hide the rounding related problem from Cloud by passing int instead of float. ................ r13144 | kohsuke | 2008-11-10 18:10:10 -0800 (Mon, 10 Nov 2008) | 1 line bug fix ................ r13145 | kohsuke | 2008-11-10 18:11:51 -0800 (Mon, 10 Nov 2008) | 1 line formatting changes ................ r13146 | kohsuke | 2008-11-10 18:15:08 -0800 (Mon, 10 Nov 2008) | 1 line moved the slave launch code to HudsonTestCase for reuse ................ r13147 | kohsuke | 2008-11-10 18:20:19 -0800 (Mon, 10 Nov 2008) | 1 line adding another test case ................ r13150 | kohsuke | 2008-11-11 07:28:53 -0800 (Tue, 11 Nov 2008) | 1 line bug fix ................ r13153 | kohsuke | 2008-11-11 14:04:21 -0800 (Tue, 11 Nov 2008) | 1 line cutting down the test size to 5 to increase the test speed ................ r13154 | kohsuke | 2008-11-11 14:04:37 -0800 (Tue, 11 Nov 2008) | 1 line improved debuggability ................ r13155 | kohsuke | 2008-11-11 14:10:04 -0800 (Tue, 11 Nov 2008) | 1 line added another convenience method ................ r13156 | kohsuke | 2008-11-11 14:10:21 -0800 (Tue, 11 Nov 2008) | 1 line further reduce the test turn around time ................ r13157 | kohsuke | 2008-11-11 14:22:03 -0800 (Tue, 11 Nov 2008) | 1 line doc improvement and clean up ................ r13158 | kohsuke | 2008-11-11 14:22:28 -0800 (Tue, 11 Nov 2008) | 1 line added a new metho ................ r13487 | kohsuke | 2008-12-09 17:17:30 -0800 (Tue, 09 Dec 2008) | 1 line SlaveTemplate needs to be able to computer # of executors. ................ r13488 | kohsuke | 2008-12-09 17:18:05 -0800 (Tue, 09 Dec 2008) | 1 line fixed a compilation problem with the latest head of the branch ................ r13851 | kohsuke | 2008-12-24 13:40:43 -0800 (Wed, 24 Dec 2008) | 82 lines fixed a dead lock reported by Jesse. Found one Java-level deadlock: ============================= "Executor #0 for master": waiting to lock monitor 0x09409bac (object 0x87474ca0, a hudson.util.CopyOnWriteMap$Hash), which is held by "main" "main": waiting to lock monitor 0x09409b48 (object 0x87474d48, a hudson.model.Hudson$MasterComputer), which is held by "Executor #0 for master" Java stack information for the threads listed above: =================================================== "Executor #0 for master": at hudson.util.CopyOnWriteMap.remove(CopyOnWriteMap.java:78) - waiting to lock <0x87474ca0> (a hudson.util.CopyOnWriteMap$Hash) at hudson.model.Hudson.removeComputer(Hudson.java:717) at hudson.model.Computer.removeExecutor(Computer.java:433) - locked <0x87474d48> (a hudson.model.Hudson$MasterComputer) at hudson.model.Executor.run(Executor.java:65) - locked <0x87474d48> (a hudson.model.Hudson$MasterComputer) "main": at hudson.model.Computer.setNumExecutors(Computer.java:338) - waiting to lock <0x87474d48> (a hudson.model.Hudson$MasterComputer) at hudson.model.Computer.setNode(Computer.java:327) at hudson.model.Hudson.updateComputer(Hudson.java:704) at hudson.model.Hudson.updateComputerList(Hudson.java:685) - locked <0x87474ca0> (a hudson.util.CopyOnWriteMap$Hash) at hudson.model.Hudson.setNodes(Hudson.java:1076) at hudson.model.Hudson.addNode(Hudson.java:1060) - locked <0x87474cb0> (a hudson.model.Hudson) at org.jvnet.hudson.test.HudsonTestCase.createSlave(HudsonTestCase.java:247) at hudson.slaves.NodeProvisionerTest.testBaselineSlaveUsage(NodeProvisionerTest.java:86) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at junit.framework.TestCase.runTest(TestCase.java:154) at org.jvnet.hudson.test.HudsonTestCase.runTest(HudsonTestCase.java:151) at junit.framework.TestCase.runBare(TestCase.java:127) at junit.framework.TestResult$1.protect(TestResult.java:106) at junit.framework.TestResult.runProtected(TestResult.java:124) at junit.framework.TestResult.run(TestResult.java:109) at junit.framework.TestCase.run(TestCase.java:118) at junit.framework.TestSuite.runTest(TestSuite.java:208) at junit.framework.TestSuite.run(TestSuite.java:203) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.apache.maven.surefire.junit.JUnitTestSet.execute(JUnitTestSet.java:213) at org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.executeTestSet(AbstractDirectoryTestSuite.java:140) at org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.execute(AbstractDirectoryTestSuite.java:127) at org.apache.maven.surefire.Surefire.run(Surefire.java:177) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.apache.maven.surefire.booter.SurefireBooter.runSuitesInProcess(SurefireBooter.java:345) at org.apache.maven.surefire.booter.SurefireBooter.run(SurefireBooter.java:241) at org.apache.maven.plugin.surefire.SurefirePlugin.execute(SurefirePlugin.java:537) at org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:447) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:539) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalWithLifecycle(DefaultLifecycleExecutor.java:480) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:459) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:311) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:278) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:143) at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:333) at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:126) at org.apache.maven.cli.MavenCli.main(MavenCli.java:282) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315) at org.codehaus.classworlds.Launcher.launch(Launcher.java:255) at org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430) at org.codehaus.classworlds.Launcher.main(Launcher.java:375) Found 1 deadlock. ................ r13852 | kohsuke | 2008-12-24 14:32:29 -0800 (Wed, 24 Dec 2008) | 1 line bug fix in the test case. ................ r13854 | kohsuke | 2008-12-24 15:20:22 -0800 (Wed, 24 Dec 2008) | 2 lines Using a new version of Rhino to get a proper exception chaining. ................ r13855 | kohsuke | 2008-12-24 15:22:13 -0800 (Wed, 24 Dec 2008) | 1 line typo ................ r13856 | kohsuke | 2008-12-24 15:37:56 -0800 (Wed, 24 Dec 2008) | 1 line CR shouldn't be in the repository ................ r13859 | kohsuke | 2008-12-24 15:50:32 -0800 (Wed, 24 Dec 2008) | 3 lines Fixed svn:eol-style. ................ r13866 | kohsuke | 2008-12-24 21:26:43 -0800 (Wed, 24 Dec 2008) | 3 lines Copying rev.13860 to retry a merge that now looks suspicious. ................ r13869 | kohsuke | 2008-12-24 22:03:46 -0800 (Wed, 24 Dec 2008) | 2 lines The 2nd merge was successful, so adopting the successful merge as the multiple-computer-per-node branch. ................ r13872 | kohsuke | 2008-12-25 07:28:37 -0800 (Thu, 25 Dec 2008) | 1 line fixed a test failure ................ r13873 | kohsuke | 2008-12-25 08:16:49 -0800 (Thu, 25 Dec 2008) | 1 line expanded NodeProvisioner to work on per-label basis ................ r13874 | kohsuke | 2008-12-25 08:27:32 -0800 (Thu, 25 Dec 2008) | 1 line bug fix ................ r13875 | kohsuke | 2008-12-25 08:33:17 -0800 (Thu, 25 Dec 2008) | 1 line bug fix ................ r13876 | kohsuke | 2008-12-25 08:45:03 -0800 (Thu, 25 Dec 2008) | 3 lines [HUDSON-2605] Strangely, I discovered that on some File, which is new File("./target/hudson-for-test"), file.exists()==false but file.getAbsoluteFile().exists()==true. It looks like this happens when $PWD of the process at the OS level is different from System.getProperty("user.dir") ................ r13878 | kohsuke | 2008-12-25 15:52:45 -0800 (Thu, 25 Dec 2008) | 1 line added a marker file ................ r13879 | kohsuke | 2008-12-25 15:53:13 -0800 (Thu, 25 Dec 2008) | 1 line use marker file to find the hudson main workspace. ................ r13883 | kohsuke | 2008-12-26 07:50:44 -0800 (Fri, 26 Dec 2008) | 1 line avoid using a deprecated method. ................ r13884 | kohsuke | 2008-12-26 07:50:59 -0800 (Fri, 26 Dec 2008) | 1 line adding more probes ................ r13885 | kohsuke | 2008-12-26 08:15:42 -0800 (Fri, 26 Dec 2008) | 1 line for analyzing test failures, capturing the output is crucial. ................ r13887 | kohsuke | 2008-12-26 11:25:12 -0800 (Fri, 26 Dec 2008) | 1 line allow sub-types to intercept mutation ................ r13888 | kohsuke | 2008-12-26 11:26:01 -0800 (Fri, 26 Dec 2008) | 1 line clouds need to be taken into account before marking a label as pointless. ................ r13889 | kohsuke | 2008-12-26 11:26:40 -0800 (Fri, 26 Dec 2008) | 3 lines fixing bugs in NodeProvisioner. Conservative estimate on idle executors have to be max, not min. ................ r13890 | kohsuke | 2008-12-26 11:42:53 -0800 (Fri, 26 Dec 2008) | 1 line turns out the problem was that we were adding multiple slaves under the same name, which confused Hudson to no end. ................ r13896 | kohsuke | 2008-12-27 07:44:20 -0800 (Sat, 27 Dec 2008) | 1 line formatting changes ................ r13897 | kohsuke | 2008-12-27 07:45:00 -0800 (Sat, 27 Dec 2008) | 1 line reprot the test name to stdout so that one can easily distinguish different tests in target/surefire-reports/xyz-output.txt ................ r13898 | kohsuke | 2008-12-27 07:54:53 -0800 (Sat, 27 Dec 2008) | 1 line doc improvement ................ r13899 | kohsuke | 2008-12-27 09:59:07 -0800 (Sat, 27 Dec 2008) | 1 line split the functionality into two classes ................ r13900 | kohsuke | 2008-12-27 10:00:29 -0800 (Sat, 27 Dec 2008) | 1 line doc improvement ................ r13901 | kohsuke | 2008-12-27 10:06:24 -0800 (Sat, 27 Dec 2008) | 1 line added 'tick' ................ r13902 | kohsuke | 2008-12-27 10:08:04 -0800 (Sat, 27 Dec 2008) | 1 line adding graph rendering of the load statistics ................ r13903 | kohsuke | 2008-12-27 10:19:41 -0800 (Sat, 27 Dec 2008) | 1 line improved graph layout ................ r13904 | kohsuke | 2008-12-27 10:21:05 -0800 (Sat, 27 Dec 2008) | 1 line Picker -> TimeScale to better reflect what it is. ................ r13905 | kohsuke | 2008-12-27 10:40:27 -0800 (Sat, 27 Dec 2008) | 1 line duplicate ................ r13906 | kohsuke | 2008-12-27 14:39:36 -0800 (Sat, 27 Dec 2008) | 1 line renamed to a shorter name ................ r13907 | kohsuke | 2008-12-27 15:03:25 -0800 (Sat, 27 Dec 2008) | 1 line added icons ................ r13908 | kohsuke | 2008-12-27 16:20:37 -0800 (Sat, 27 Dec 2008) | 1 line renamed to make 'loadStatistics' the URL binding. ................ r13909 | kohsuke | 2008-12-27 16:21:01 -0800 (Sat, 27 Dec 2008) | 1 line exposing loadStatistics for Computer for better URL binding ................ r13910 | kohsuke | 2008-12-27 16:21:16 -0800 (Sat, 27 Dec 2008) | 1 line adding UI support ................ r13911 | kohsuke | 2008-12-27 19:31:43 -0800 (Sat, 27 Dec 2008) | 1 line added some basic visualization ................ r13912 | kohsuke | 2008-12-27 19:35:10 -0800 (Sat, 27 Dec 2008) | 1 line if there's no description, don't even show it. ................ r13913 | kohsuke | 2008-12-27 19:39:26 -0800 (Sat, 27 Dec 2008) | 1 line added load statistics page for the label as well. ................ r13914 | kohsuke | 2008-12-27 19:48:55 -0800 (Sat, 27 Dec 2008) | 1 line added one more convenience method. ................ r13915 | kohsuke | 2008-12-27 19:54:29 -0800 (Sat, 27 Dec 2008) | 1 line refactored so that a different Dataset can be fed. ................ r13916 | kohsuke | 2008-12-27 19:59:20 -0800 (Sat, 27 Dec 2008) | 1 line added global load statistics lnk to the management screen. ................ r13917 | kohsuke | 2008-12-27 20:31:01 -0800 (Sat, 27 Dec 2008) | 1 line <dt>s should use the bold font to distinguish them from <dd>s ................ r13918 | kohsuke | 2008-12-27 20:35:10 -0800 (Sat, 27 Dec 2008) | 1 line added description of what the graph means. ................ r13919 | kohsuke | 2008-12-27 20:35:39 -0800 (Sat, 27 Dec 2008) | 1 line added description of what the graph means. ................ git-svn-id: https://hudson.dev.java.net/svn/hudson/trunk/hudson/main@14215 71c3de6d-444a-0410-be80-ed276b4c234a
2009-01-07 09:02:56 +08:00
if(filter(src))
return src;
}
return null;
}
/**
* Traverses a form in the reverse document order and finds an INPUT element that matches the given name.
*/
function findPreviousFormItem(src,name) {
var name2 = "_."+name; // handles <textbox field="..." /> notation silently
return findPrevious(src,function(e){ return (e.tagName=="INPUT" || e.tagName=="TEXTAREA") && (e.name==name || e.name==name2); });
Merged revisions 11754-11755,11763-11766,11770,11773-11777,11791-11797,11828-11829,11831-11839,11841-11843,11850,11854,11994,12774,12778-12793,12820-12822,12831-12841,12854-12855,12860-12882,12896-12905,12914-12920,12938-12941,12950,13045-13046,13048,13063-13064,13066,13072-13076,13111,13122-13147,13150,13153-13158,13487-13488,13851-13852,13854-13856,13859,13866-13867,13869,13872-13876,13878-13879,13883-13885,13887-13890,13896-13919 via svnmerge from https://www.dev.java.net/svn/hudson/branches/multiple-computer-per-node ................ r11754 | kohsuke | 2008-08-25 17:59:14 -0700 (Mon, 25 Aug 2008) | 3 lines Adding EphemeralNode for non-persisted dynamically-allocated expandable/shrinkable slave pool. Tweaked the serialization of Hudson.slaves accordingly. ................ r11755 | kohsuke | 2008-08-25 18:10:42 -0700 (Mon, 25 Aug 2008) | 1 line making a small improvements ................ r11763 | kohsuke | 2008-08-26 13:57:25 -0700 (Tue, 26 Aug 2008) | 1 line adding more convenience methods ................ r11764 | kohsuke | 2008-08-26 14:24:20 -0700 (Tue, 26 Aug 2008) | 1 line ported mask capability from the TFS plugin to the core. ................ r11765 | kohsuke | 2008-08-26 14:26:25 -0700 (Tue, 26 Aug 2008) | 1 line making it non-final to allow for subclassing ................ r11766 | kohsuke | 2008-08-26 14:35:20 -0700 (Tue, 26 Aug 2008) | 1 line test case for NodeList ................ r11770 | kohsuke | 2008-08-26 15:15:21 -0700 (Tue, 26 Aug 2008) | 3 lines Wrote a simple tool that monitors a file system change (in a poor way) and triggers a build. ................ r11773 | kohsuke | 2008-08-26 17:20:30 -0700 (Tue, 26 Aug 2008) | 1 line made more structured ................ r11774 | kohsuke | 2008-08-26 17:47:41 -0700 (Tue, 26 Aug 2008) | 1 line indentation fix ................ r11775 | kohsuke | 2008-08-26 17:48:22 -0700 (Tue, 26 Aug 2008) | 1 line remove the use of a deprecated feature. ................ r11776 | kohsuke | 2008-08-26 17:51:54 -0700 (Tue, 26 Aug 2008) | 1 line renamed to 'ALL' to be consistent with recent use of DescriptorList ................ r11777 | kohsuke | 2008-08-26 18:04:17 -0700 (Tue, 26 Aug 2008) | 1 line adding NodeFactory list and its configuration mechanism ................ r11791 | kohsuke | 2008-08-27 09:43:38 -0700 (Wed, 27 Aug 2008) | 1 line picked up the latest jelly with Iterable support in <j:forEach> ................ r11792 | kohsuke | 2008-08-27 09:44:08 -0700 (Wed, 27 Aug 2008) | 1 line Iterable support added in commons-jelly 1.1-hudson-20080826 ................ r11793 | kohsuke | 2008-08-27 10:15:14 -0700 (Wed, 27 Aug 2008) | 2 lines - added name to NodeFactory for binding NodeFactory to URL tree. - NodeFactory should be access controlled ................ r11794 | kohsuke | 2008-08-27 10:41:11 -0700 (Wed, 27 Aug 2008) | 1 line added a method to add one Node at a time ................ r11795 | kohsuke | 2008-08-27 10:41:37 -0700 (Wed, 27 Aug 2008) | 1 line added permission constatnt ................ r11796 | kohsuke | 2008-08-27 10:42:13 -0700 (Wed, 27 Aug 2008) | 1 line allowing the launch method to throw an exception. ................ r11797 | kohsuke | 2008-08-27 10:44:13 -0700 (Wed, 27 Aug 2008) | 1 line improving the handling ................ r11828 | kohsuke | 2008-08-29 11:07:16 -0700 (Fri, 29 Aug 2008) | 1 line added executor config to the sidebar. ................ r11829 | kohsuke | 2008-08-29 11:16:11 -0700 (Fri, 29 Aug 2008) | 1 line "it" should be assigned to NodeFactory ................ r11831 | kohsuke | 2008-08-29 11:44:41 -0700 (Fri, 29 Aug 2008) | 1 line formatting changes ................ r11832 | kohsuke | 2008-08-29 11:59:21 -0700 (Fri, 29 Aug 2008) | 1 line added a script to create a flashing image from any picture ................ r11833 | kohsuke | 2008-08-29 12:07:56 -0700 (Fri, 29 Aug 2008) | 1 line doc improvement. ................ r11834 | kohsuke | 2008-08-29 13:37:59 -0700 (Fri, 29 Aug 2008) | 1 line added new images to indicate that a slave is launching ................ r11835 | kohsuke | 2008-08-29 13:43:41 -0700 (Fri, 29 Aug 2008) | 1 line indicate a launching slave accordingly. ................ r11836 | kohsuke | 2008-08-29 14:02:28 -0700 (Fri, 29 Aug 2008) | 1 line added a method to remove a Node. ................ r11837 | kohsuke | 2008-08-29 14:02:38 -0700 (Fri, 29 Aug 2008) | 1 line disconnect ................ r11838 | kohsuke | 2008-08-29 14:03:22 -0700 (Fri, 29 Aug 2008) | 1 line formatting changes ................ r11839 | kohsuke | 2008-08-29 14:14:04 -0700 (Fri, 29 Aug 2008) | 1 line allowing subclasses. ................ r11841 | kohsuke | 2008-08-29 14:28:29 -0700 (Fri, 29 Aug 2008) | 1 line constructor should be the first in the definition. ................ r11842 | kohsuke | 2008-08-29 14:31:01 -0700 (Fri, 29 Aug 2008) | 1 line doc improvement. ................ r11843 | kohsuke | 2008-08-29 14:32:48 -0700 (Fri, 29 Aug 2008) | 1 line fixed a problem of using partially constructed object during launch(), because the setNode() method is called from the Computer constructor. ................ r11850 | kohsuke | 2008-08-29 14:50:36 -0700 (Fri, 29 Aug 2008) | 1 line serialize NodeFactory first so that references to them from NodeList will become references in XML. ................ r11854 | kohsuke | 2008-08-29 14:56:56 -0700 (Fri, 29 Aug 2008) | 1 line cleaning up a bit. ................ r11994 | kohsuke | 2008-09-03 14:42:11 -0700 (Wed, 03 Sep 2008) | 21 lines Fixed ArrayIndexOutOfBoundsException during replace(), when the title contains a '$' literal. The typical stack trace looks like: Caused by: java.lang.ArrayIndexOutOfBoundsException: 32 at hudson.MarkupText$SubText.start(MarkupText.java:95) at hudson.MarkupText$SubText.group(MarkupText.java:131) at hudson.MarkupText$SubText.replace(MarkupText.java:154) at hudson.MarkupText$SubText.surroundWith(MarkupText.java:83) at hudson.plugins.jira.JiraChangeLogAnnotator.annotate(JiraChangeLogAnnotator.java:37) at hudson.scm.ChangeLogSet$Entry.getMsgAnnotated(ChangeLogSet.java:117) ... 148 more Vijayan Jayaraman and I found this problem while we were looking at the server log of Hudson for OpenJFX. Adding a unit test to verify this behavior, too. ................ r12774 | kohsuke | 2008-10-27 15:03:36 -0700 (Mon, 27 Oct 2008) | 3 lines preparing for heterogenousness in Node, so that different Node can be configured with different UIs, much like how different Jobs can be configured. Creating a slave works also like creating a new job. ................ r12778 | kohsuke | 2008-10-27 15:06:51 -0700 (Mon, 27 Oct 2008) | 1 line We need to be able to create an emtpy Slave initially, so we have to do with the check in the form field validation. ................ r12779 | kohsuke | 2008-10-27 15:48:04 -0700 (Mon, 27 Oct 2008) | 1 line making the new slave page a two-step process ................ r12780 | kohsuke | 2008-10-27 15:48:24 -0700 (Mon, 27 Oct 2008) | 1 line fixed a compilation problem ................ r12781 | kohsuke | 2008-10-27 15:53:30 -0700 (Mon, 27 Oct 2008) | 1 line bug fixes ................ r12782 | kohsuke | 2008-10-27 15:58:20 -0700 (Mon, 27 Oct 2008) | 1 line bug fixes ................ r12783 | kohsuke | 2008-10-27 16:08:56 -0700 (Mon, 27 Oct 2008) | 1 line making the configuration page work for slaves ................ r12784 | kohsuke | 2008-10-27 16:35:17 -0700 (Mon, 27 Oct 2008) | 1 line added new-computer.svg ................ r12785 | kohsuke | 2008-10-27 16:37:26 -0700 (Mon, 27 Oct 2008) | 1 line hooking up the config/create pages to the UI ................ r12786 | kohsuke | 2008-10-27 16:44:40 -0700 (Mon, 27 Oct 2008) | 1 line fixed a copy method. ................ r12787 | kohsuke | 2008-10-27 16:47:33 -0700 (Mon, 27 Oct 2008) | 1 line code was broken when a slave was renamed ................ r12788 | kohsuke | 2008-10-27 16:58:04 -0700 (Mon, 27 Oct 2008) | 1 line moving out the commonality into a new tag ................ r12789 | kohsuke | 2008-10-27 17:01:21 -0700 (Mon, 27 Oct 2008) | 1 line consistent term usage ................ r12790 | kohsuke | 2008-10-27 17:03:19 -0700 (Mon, 27 Oct 2008) | 1 line retiring the configureExecutors. Slave configuration is now moved to individual slave page ................ r12791 | kohsuke | 2008-10-27 17:10:32 -0700 (Mon, 27 Oct 2008) | 1 line retired configureExecutors.jelly and completed moved its contents to somewhere else ................ r12792 | kohsuke | 2008-10-27 17:21:53 -0700 (Mon, 27 Oct 2008) | 1 line bug fix. request handling of "/descriptor/FQCN/..." was broken. ................ r12793 | kohsuke | 2008-10-27 17:27:08 -0700 (Mon, 27 Oct 2008) | 1 line NodeFactory -> Cloud to encourage consistent term usage between the code and the UI. ................ r12820 | kohsuke | 2008-10-29 10:58:20 -0700 (Wed, 29 Oct 2008) | 1 line formatting fix ................ r12821 | kohsuke | 2008-10-29 11:17:49 -0700 (Wed, 29 Oct 2008) | 1 line added classes for handling a secret and prevent accidental exposure of a secret in the persisted form ................ r12822 | kohsuke | 2008-10-29 11:32:39 -0700 (Wed, 29 Oct 2008) | 1 line added a base64 validator ................ r12831 | kohsuke | 2008-10-29 15:58:45 -0700 (Wed, 29 Oct 2008) | 1 line secret key needs to be persisted outside config.xml (and it is, already!) ................ r12832 | kohsuke | 2008-10-29 16:06:28 -0700 (Wed, 29 Oct 2008) | 1 line started working on Amazon EC2 plugin ................ r12833 | kohsuke | 2008-10-29 16:09:20 -0700 (Wed, 29 Oct 2008) | 1 line brought the same enhancement as in <textbox /> ................ r12834 | kohsuke | 2008-10-29 16:15:05 -0700 (Wed, 29 Oct 2008) | 1 line copy over the onclick handler from the original button element ................ r12835 | kohsuke | 2008-10-29 17:01:04 -0700 (Wed, 29 Oct 2008) | 1 line allow OK messages to be sent with some mark up. ................ r12836 | kohsuke | 2008-10-29 17:06:52 -0700 (Wed, 29 Oct 2008) | 1 line added connection testing. This pattern needs to be generalized since it happens often ................ r12837 | kohsuke | 2008-10-29 17:13:11 -0700 (Wed, 29 Oct 2008) | 1 line this is little better ................ r12838 | kohsuke | 2008-10-29 17:17:44 -0700 (Wed, 29 Oct 2008) | 1 line added spinner ................ r12839 | kohsuke | 2008-10-29 17:31:54 -0700 (Wed, 29 Oct 2008) | 1 line restructuring the validation button support in a form that can be readily moved to the core. ................ r12840 | kohsuke | 2008-10-29 18:01:41 -0700 (Wed, 29 Oct 2008) | 1 line added <f:validateButton/> for multi-field server-side validation ................ r12841 | kohsuke | 2008-10-29 18:03:12 -0700 (Wed, 29 Oct 2008) | 1 line logic moved to <f:validateButton/> in the core. ................ r12854 | kohsuke | 2008-10-30 13:32:58 -0700 (Thu, 30 Oct 2008) | 1 line @QueryParameter.value won't be necessary any more ................ r12855 | kohsuke | 2008-10-30 13:42:58 -0700 (Thu, 30 Oct 2008) | 1 line need a strongly-typed constructor. ................ r12860 | kohsuke | 2008-10-30 15:24:18 -0700 (Thu, 30 Oct 2008) | 1 line adding more reflection support, which in turn we use in taglibs to raise the level of abstraction. ................ r12861 | kohsuke | 2008-10-30 15:33:22 -0700 (Thu, 30 Oct 2008) | 1 line added a tag to create databinding to a<select> element from an enum property ................ r12862 | kohsuke | 2008-10-30 15:37:44 -0700 (Thu, 30 Oct 2008) | 1 line adding a smarter bi-directional binding through <f:repeatable field="..."/> ................ r12863 | kohsuke | 2008-10-30 15:47:48 -0700 (Thu, 30 Oct 2008) | 1 line making progress with the EC2 support ................ r12864 | kohsuke | 2008-10-30 16:12:34 -0700 (Thu, 30 Oct 2008) | 1 line added form field validation for AMI ID ................ r12865 | kohsuke | 2008-10-30 16:15:44 -0700 (Thu, 30 Oct 2008) | 1 line added simpler version ................ r12866 | kohsuke | 2008-10-30 16:17:15 -0700 (Thu, 30 Oct 2008) | 1 line doc improvement ................ r12867 | kohsuke | 2008-10-30 16:17:19 -0700 (Thu, 30 Oct 2008) | 1 line simplified a bit ................ r12868 | kohsuke | 2008-10-30 16:40:25 -0700 (Thu, 30 Oct 2008) | 1 line doc improvement ................ r12869 | kohsuke | 2008-10-30 17:00:57 -0700 (Thu, 30 Oct 2008) | 1 line adding the provisioning of the new slave ................ r12870 | kohsuke | 2008-10-30 17:07:27 -0700 (Thu, 30 Oct 2008) | 1 line /** {@inheritDoc} */ is the default behavior for javadoc, so there's no point in making that explicit. ................ r12871 | kohsuke | 2008-10-30 17:11:04 -0700 (Thu, 30 Oct 2008) | 1 line doc bug fix ................ r12872 | kohsuke | 2008-10-30 17:17:20 -0700 (Thu, 30 Oct 2008) | 1 line simplified a bit ................ r12873 | kohsuke | 2008-10-30 17:19:06 -0700 (Thu, 30 Oct 2008) | 1 line added RetentionStrategy for EC2 instances ................ r12874 | kohsuke | 2008-10-30 17:21:17 -0700 (Thu, 30 Oct 2008) | 1 line allowing subclasses to override the disconnect behavior. ................ r12875 | kohsuke | 2008-10-30 18:02:35 -0700 (Thu, 30 Oct 2008) | 1 line added termination ................ r12876 | kohsuke | 2008-10-30 18:05:30 -0700 (Thu, 30 Oct 2008) | 1 line forgot to rename when NodeFactory was renamed to Cloud ................ r12877 | kohsuke | 2008-10-30 18:06:08 -0700 (Thu, 30 Oct 2008) | 1 line using the console icon ................ r12878 | kohsuke | 2008-10-30 18:17:20 -0700 (Thu, 30 Oct 2008) | 1 line adding UI to remove a slave. ................ r12879 | kohsuke | 2008-10-30 18:48:57 -0700 (Thu, 30 Oct 2008) | 1 line commons-discovery now needed in stapler ................ r12880 | kohsuke | 2008-10-30 18:50:27 -0700 (Thu, 30 Oct 2008) | 1 line needs to use a newer version of stapler ................ r12881 | kohsuke | 2008-10-30 18:51:02 -0700 (Thu, 30 Oct 2008) | 1 line Bye bye CVS ................ r12882 | kohsuke | 2008-10-30 18:51:43 -0700 (Thu, 30 Oct 2008) | 1 line Bye bye CVS ................ r12896 | kohsuke | 2008-10-31 14:52:07 -0700 (Fri, 31 Oct 2008) | 1 line fixed the ordering between field and the mighty get(String) method. ................ r12897 | kohsuke | 2008-10-31 15:08:41 -0700 (Fri, 31 Oct 2008) | 1 line fixed test compilation problems ................ r12898 | kohsuke | 2008-10-31 15:11:25 -0700 (Fri, 31 Oct 2008) | 1 line marking this as a model object since it's always bound to URL. ................ r12899 | kohsuke | 2008-10-31 15:13:42 -0700 (Fri, 31 Oct 2008) | 1 line adding UI hook up to manually provision a new node ................ r12900 | kohsuke | 2008-10-31 15:14:00 -0700 (Fri, 31 Oct 2008) | 1 line after merging the trunk the version number is different ................ r12901 | kohsuke | 2008-10-31 15:21:54 -0700 (Fri, 31 Oct 2008) | 1 line adding UI hook up for provisioning a new slave ................ r12902 | kohsuke | 2008-10-31 15:45:10 -0700 (Fri, 31 Oct 2008) | 1 line adding a hook to decorate ComputerLauncher. ................ r12903 | kohsuke | 2008-10-31 15:48:21 -0700 (Fri, 31 Oct 2008) | 1 line added filtering support ................ r12904 | kohsuke | 2008-10-31 15:52:45 -0700 (Fri, 31 Oct 2008) | 1 line added view ................ r12905 | kohsuke | 2008-10-31 15:53:49 -0700 (Fri, 31 Oct 2008) | 1 line doc improvement ................ r12914 | kohsuke | 2008-11-01 17:45:57 -0700 (Sat, 01 Nov 2008) | 1 line adding code for connecting with SSH ................ r12915 | kohsuke | 2008-11-01 17:49:28 -0700 (Sat, 01 Nov 2008) | 1 line working on launchers ................ r12916 | kohsuke | 2008-11-01 18:33:12 -0700 (Sat, 01 Nov 2008) | 1 line added a method to fully read a stream ................ r12917 | kohsuke | 2008-11-01 18:33:45 -0700 (Sat, 01 Nov 2008) | 1 line bumped up stapler ................ r12918 | kohsuke | 2008-11-01 18:39:41 -0700 (Sat, 01 Nov 2008) | 1 line doc improvement. ................ r12919 | kohsuke | 2008-11-01 18:45:24 -0700 (Sat, 01 Nov 2008) | 1 line added a launcher ................ r12920 | kohsuke | 2008-11-01 18:55:02 -0700 (Sat, 01 Nov 2008) | 1 line implementing the actual ComputerLauncher ................ r12938 | kohsuke | 2008-11-02 08:56:05 -0800 (Sun, 02 Nov 2008) | 1 line support the field notation ................ r12939 | kohsuke | 2008-11-02 09:20:21 -0800 (Sun, 02 Nov 2008) | 1 line added the mechanism to execute the init script ................ r12940 | kohsuke | 2008-11-02 09:21:38 -0800 (Sun, 02 Nov 2008) | 1 line simplification ................ r12941 | kohsuke | 2008-11-02 09:36:21 -0800 (Sun, 02 Nov 2008) | 1 line adding key handling ................ r12950 | kohsuke | 2008-11-03 11:00:58 -0800 (Mon, 03 Nov 2008) | 1 line formatting changes ................ r13045 | kohsuke | 2008-11-06 15:24:32 -0800 (Thu, 06 Nov 2008) | 1 line adding time series datatype for retaining load average statistics in memory ................ r13046 | kohsuke | 2008-11-06 15:59:02 -0800 (Thu, 06 Nov 2008) | 1 line added a convenience method. ................ r13048 | kohsuke | 2008-11-06 16:21:54 -0800 (Thu, 06 Nov 2008) | 2 lines - started monitoring # of executor statistics. - exposed label to the remote API ................ r13063 | kohsuke | 2008-11-07 13:05:15 -0800 (Fri, 07 Nov 2008) | 1 line added a convenience method. ................ r13064 | kohsuke | 2008-11-07 13:11:08 -0800 (Fri, 07 Nov 2008) | 1 line monitor the length of the queue too ................ r13066 | kohsuke | 2008-11-07 14:15:56 -0800 (Fri, 07 Nov 2008) | 1 line moved the stats to its own class. ................ r13072 | kohsuke | 2008-11-07 15:40:29 -0800 (Fri, 07 Nov 2008) | 1 line adding provisioning logic based on load statistics ................ r13073 | kohsuke | 2008-11-07 15:46:00 -0800 (Fri, 07 Nov 2008) | 1 line for effective testing, we need sub-sec precision ................ r13074 | kohsuke | 2008-11-07 16:24:44 -0800 (Fri, 07 Nov 2008) | 1 line fixed a lie. ................ r13075 | kohsuke | 2008-11-07 16:25:12 -0800 (Fri, 07 Nov 2008) | 1 line bug fix ................ r13076 | kohsuke | 2008-11-07 16:30:55 -0800 (Fri, 07 Nov 2008) | 1 line avoid using deprecated methods ................ r13111 | kohsuke | 2008-11-09 11:54:23 -0800 (Sun, 09 Nov 2008) | 1 line added the Future<?> return parameter to Computer.launch(). To do this w/o breaking compatibility, renamed launch to connect. ................ r13122 | kohsuke | 2008-11-10 14:38:03 -0800 (Mon, 10 Nov 2008) | 1 line allow programmatic update of the assigned label ................ r13123 | kohsuke | 2008-11-10 14:38:40 -0800 (Mon, 10 Nov 2008) | 1 line Iterator not needed because CopyOnWriteArrayList doesn't support removal via iterator. ................ r13124 | kohsuke | 2008-11-10 14:39:24 -0800 (Mon, 10 Nov 2008) | 1 line added another Builder for tests ................ r13125 | kohsuke | 2008-11-10 14:39:48 -0800 (Mon, 10 Nov 2008) | 1 line simplified a bit. This TestEnvironment stuff needs some clearer story. ................ r13126 | kohsuke | 2008-11-10 14:46:40 -0800 (Mon, 10 Nov 2008) | 1 line IDEA complains about this. ................ r13127 | kohsuke | 2008-11-10 14:51:53 -0800 (Mon, 10 Nov 2008) | 1 line improved the error diagnostics by displaying why a provisioned node failed to launch ................ r13128 | kohsuke | 2008-11-10 14:52:12 -0800 (Mon, 10 Nov 2008) | 1 line Started a test case for NodeProvisioner ................ r13129 | kohsuke | 2008-11-10 14:52:27 -0800 (Mon, 10 Nov 2008) | 1 line formatting changes ................ r13130 | kohsuke | 2008-11-10 15:16:02 -0800 (Mon, 10 Nov 2008) | 1 line report the failure as a failure. ................ r13131 | kohsuke | 2008-11-10 16:34:23 -0800 (Mon, 10 Nov 2008) | 1 line adding a parameter to the connect method to support joining to the pending launch activity. ................ r13132 | kohsuke | 2008-11-10 16:38:31 -0800 (Mon, 10 Nov 2008) | 1 line making members public so that it can be accessed from other classes (DummyCloudImpl was the first to do this) ................ r13133 | kohsuke | 2008-11-10 16:38:58 -0800 (Mon, 10 Nov 2008) | 1 line split the cloud implementation to a separate class to allow reuse. ................ r13134 | kohsuke | 2008-11-10 16:56:27 -0800 (Mon, 10 Nov 2008) | 1 line assign unique names to support multiple jobs ................ r13135 | kohsuke | 2008-11-10 17:11:31 -0800 (Mon, 10 Nov 2008) | 1 line avoid unnecessary interruption ................ r13136 | kohsuke | 2008-11-10 17:11:41 -0800 (Mon, 10 Nov 2008) | 1 line adding another test case ................ r13137 | kohsuke | 2008-11-10 17:16:28 -0800 (Mon, 10 Nov 2008) | 1 line cleaned up a test case ................ r13138 | kohsuke | 2008-11-10 17:36:52 -0800 (Mon, 10 Nov 2008) | 1 line since the setNode method is called on every Computer just by adding a new node, don't force a new launch attempt. ................ r13139 | kohsuke | 2008-11-10 17:37:38 -0800 (Mon, 10 Nov 2008) | 1 line perform orderly shutdown by giving computers enough time to disconnect. ................ r13140 | kohsuke | 2008-11-10 17:38:08 -0800 (Mon, 10 Nov 2008) | 3 lines return Future for synchronization. This breaks binary compatibility, but I checked none of the plugins in Hudson SVN uses this, so I hope this is OK. ................ r13141 | kohsuke | 2008-11-10 17:38:46 -0800 (Mon, 10 Nov 2008) | 1 line improved diagnostics ................ r13142 | kohsuke | 2008-11-10 17:39:55 -0800 (Mon, 10 Nov 2008) | 1 line removed compiler warning ................ r13143 | kohsuke | 2008-11-10 18:02:56 -0800 (Mon, 10 Nov 2008) | 1 line hide the rounding related problem from Cloud by passing int instead of float. ................ r13144 | kohsuke | 2008-11-10 18:10:10 -0800 (Mon, 10 Nov 2008) | 1 line bug fix ................ r13145 | kohsuke | 2008-11-10 18:11:51 -0800 (Mon, 10 Nov 2008) | 1 line formatting changes ................ r13146 | kohsuke | 2008-11-10 18:15:08 -0800 (Mon, 10 Nov 2008) | 1 line moved the slave launch code to HudsonTestCase for reuse ................ r13147 | kohsuke | 2008-11-10 18:20:19 -0800 (Mon, 10 Nov 2008) | 1 line adding another test case ................ r13150 | kohsuke | 2008-11-11 07:28:53 -0800 (Tue, 11 Nov 2008) | 1 line bug fix ................ r13153 | kohsuke | 2008-11-11 14:04:21 -0800 (Tue, 11 Nov 2008) | 1 line cutting down the test size to 5 to increase the test speed ................ r13154 | kohsuke | 2008-11-11 14:04:37 -0800 (Tue, 11 Nov 2008) | 1 line improved debuggability ................ r13155 | kohsuke | 2008-11-11 14:10:04 -0800 (Tue, 11 Nov 2008) | 1 line added another convenience method ................ r13156 | kohsuke | 2008-11-11 14:10:21 -0800 (Tue, 11 Nov 2008) | 1 line further reduce the test turn around time ................ r13157 | kohsuke | 2008-11-11 14:22:03 -0800 (Tue, 11 Nov 2008) | 1 line doc improvement and clean up ................ r13158 | kohsuke | 2008-11-11 14:22:28 -0800 (Tue, 11 Nov 2008) | 1 line added a new metho ................ r13487 | kohsuke | 2008-12-09 17:17:30 -0800 (Tue, 09 Dec 2008) | 1 line SlaveTemplate needs to be able to computer # of executors. ................ r13488 | kohsuke | 2008-12-09 17:18:05 -0800 (Tue, 09 Dec 2008) | 1 line fixed a compilation problem with the latest head of the branch ................ r13851 | kohsuke | 2008-12-24 13:40:43 -0800 (Wed, 24 Dec 2008) | 82 lines fixed a dead lock reported by Jesse. Found one Java-level deadlock: ============================= "Executor #0 for master": waiting to lock monitor 0x09409bac (object 0x87474ca0, a hudson.util.CopyOnWriteMap$Hash), which is held by "main" "main": waiting to lock monitor 0x09409b48 (object 0x87474d48, a hudson.model.Hudson$MasterComputer), which is held by "Executor #0 for master" Java stack information for the threads listed above: =================================================== "Executor #0 for master": at hudson.util.CopyOnWriteMap.remove(CopyOnWriteMap.java:78) - waiting to lock <0x87474ca0> (a hudson.util.CopyOnWriteMap$Hash) at hudson.model.Hudson.removeComputer(Hudson.java:717) at hudson.model.Computer.removeExecutor(Computer.java:433) - locked <0x87474d48> (a hudson.model.Hudson$MasterComputer) at hudson.model.Executor.run(Executor.java:65) - locked <0x87474d48> (a hudson.model.Hudson$MasterComputer) "main": at hudson.model.Computer.setNumExecutors(Computer.java:338) - waiting to lock <0x87474d48> (a hudson.model.Hudson$MasterComputer) at hudson.model.Computer.setNode(Computer.java:327) at hudson.model.Hudson.updateComputer(Hudson.java:704) at hudson.model.Hudson.updateComputerList(Hudson.java:685) - locked <0x87474ca0> (a hudson.util.CopyOnWriteMap$Hash) at hudson.model.Hudson.setNodes(Hudson.java:1076) at hudson.model.Hudson.addNode(Hudson.java:1060) - locked <0x87474cb0> (a hudson.model.Hudson) at org.jvnet.hudson.test.HudsonTestCase.createSlave(HudsonTestCase.java:247) at hudson.slaves.NodeProvisionerTest.testBaselineSlaveUsage(NodeProvisionerTest.java:86) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at junit.framework.TestCase.runTest(TestCase.java:154) at org.jvnet.hudson.test.HudsonTestCase.runTest(HudsonTestCase.java:151) at junit.framework.TestCase.runBare(TestCase.java:127) at junit.framework.TestResult$1.protect(TestResult.java:106) at junit.framework.TestResult.runProtected(TestResult.java:124) at junit.framework.TestResult.run(TestResult.java:109) at junit.framework.TestCase.run(TestCase.java:118) at junit.framework.TestSuite.runTest(TestSuite.java:208) at junit.framework.TestSuite.run(TestSuite.java:203) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.apache.maven.surefire.junit.JUnitTestSet.execute(JUnitTestSet.java:213) at org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.executeTestSet(AbstractDirectoryTestSuite.java:140) at org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.execute(AbstractDirectoryTestSuite.java:127) at org.apache.maven.surefire.Surefire.run(Surefire.java:177) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.apache.maven.surefire.booter.SurefireBooter.runSuitesInProcess(SurefireBooter.java:345) at org.apache.maven.surefire.booter.SurefireBooter.run(SurefireBooter.java:241) at org.apache.maven.plugin.surefire.SurefirePlugin.execute(SurefirePlugin.java:537) at org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:447) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:539) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalWithLifecycle(DefaultLifecycleExecutor.java:480) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:459) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:311) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:278) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:143) at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:333) at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:126) at org.apache.maven.cli.MavenCli.main(MavenCli.java:282) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315) at org.codehaus.classworlds.Launcher.launch(Launcher.java:255) at org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430) at org.codehaus.classworlds.Launcher.main(Launcher.java:375) Found 1 deadlock. ................ r13852 | kohsuke | 2008-12-24 14:32:29 -0800 (Wed, 24 Dec 2008) | 1 line bug fix in the test case. ................ r13854 | kohsuke | 2008-12-24 15:20:22 -0800 (Wed, 24 Dec 2008) | 2 lines Using a new version of Rhino to get a proper exception chaining. ................ r13855 | kohsuke | 2008-12-24 15:22:13 -0800 (Wed, 24 Dec 2008) | 1 line typo ................ r13856 | kohsuke | 2008-12-24 15:37:56 -0800 (Wed, 24 Dec 2008) | 1 line CR shouldn't be in the repository ................ r13859 | kohsuke | 2008-12-24 15:50:32 -0800 (Wed, 24 Dec 2008) | 3 lines Fixed svn:eol-style. ................ r13866 | kohsuke | 2008-12-24 21:26:43 -0800 (Wed, 24 Dec 2008) | 3 lines Copying rev.13860 to retry a merge that now looks suspicious. ................ r13869 | kohsuke | 2008-12-24 22:03:46 -0800 (Wed, 24 Dec 2008) | 2 lines The 2nd merge was successful, so adopting the successful merge as the multiple-computer-per-node branch. ................ r13872 | kohsuke | 2008-12-25 07:28:37 -0800 (Thu, 25 Dec 2008) | 1 line fixed a test failure ................ r13873 | kohsuke | 2008-12-25 08:16:49 -0800 (Thu, 25 Dec 2008) | 1 line expanded NodeProvisioner to work on per-label basis ................ r13874 | kohsuke | 2008-12-25 08:27:32 -0800 (Thu, 25 Dec 2008) | 1 line bug fix ................ r13875 | kohsuke | 2008-12-25 08:33:17 -0800 (Thu, 25 Dec 2008) | 1 line bug fix ................ r13876 | kohsuke | 2008-12-25 08:45:03 -0800 (Thu, 25 Dec 2008) | 3 lines [HUDSON-2605] Strangely, I discovered that on some File, which is new File("./target/hudson-for-test"), file.exists()==false but file.getAbsoluteFile().exists()==true. It looks like this happens when $PWD of the process at the OS level is different from System.getProperty("user.dir") ................ r13878 | kohsuke | 2008-12-25 15:52:45 -0800 (Thu, 25 Dec 2008) | 1 line added a marker file ................ r13879 | kohsuke | 2008-12-25 15:53:13 -0800 (Thu, 25 Dec 2008) | 1 line use marker file to find the hudson main workspace. ................ r13883 | kohsuke | 2008-12-26 07:50:44 -0800 (Fri, 26 Dec 2008) | 1 line avoid using a deprecated method. ................ r13884 | kohsuke | 2008-12-26 07:50:59 -0800 (Fri, 26 Dec 2008) | 1 line adding more probes ................ r13885 | kohsuke | 2008-12-26 08:15:42 -0800 (Fri, 26 Dec 2008) | 1 line for analyzing test failures, capturing the output is crucial. ................ r13887 | kohsuke | 2008-12-26 11:25:12 -0800 (Fri, 26 Dec 2008) | 1 line allow sub-types to intercept mutation ................ r13888 | kohsuke | 2008-12-26 11:26:01 -0800 (Fri, 26 Dec 2008) | 1 line clouds need to be taken into account before marking a label as pointless. ................ r13889 | kohsuke | 2008-12-26 11:26:40 -0800 (Fri, 26 Dec 2008) | 3 lines fixing bugs in NodeProvisioner. Conservative estimate on idle executors have to be max, not min. ................ r13890 | kohsuke | 2008-12-26 11:42:53 -0800 (Fri, 26 Dec 2008) | 1 line turns out the problem was that we were adding multiple slaves under the same name, which confused Hudson to no end. ................ r13896 | kohsuke | 2008-12-27 07:44:20 -0800 (Sat, 27 Dec 2008) | 1 line formatting changes ................ r13897 | kohsuke | 2008-12-27 07:45:00 -0800 (Sat, 27 Dec 2008) | 1 line reprot the test name to stdout so that one can easily distinguish different tests in target/surefire-reports/xyz-output.txt ................ r13898 | kohsuke | 2008-12-27 07:54:53 -0800 (Sat, 27 Dec 2008) | 1 line doc improvement ................ r13899 | kohsuke | 2008-12-27 09:59:07 -0800 (Sat, 27 Dec 2008) | 1 line split the functionality into two classes ................ r13900 | kohsuke | 2008-12-27 10:00:29 -0800 (Sat, 27 Dec 2008) | 1 line doc improvement ................ r13901 | kohsuke | 2008-12-27 10:06:24 -0800 (Sat, 27 Dec 2008) | 1 line added 'tick' ................ r13902 | kohsuke | 2008-12-27 10:08:04 -0800 (Sat, 27 Dec 2008) | 1 line adding graph rendering of the load statistics ................ r13903 | kohsuke | 2008-12-27 10:19:41 -0800 (Sat, 27 Dec 2008) | 1 line improved graph layout ................ r13904 | kohsuke | 2008-12-27 10:21:05 -0800 (Sat, 27 Dec 2008) | 1 line Picker -> TimeScale to better reflect what it is. ................ r13905 | kohsuke | 2008-12-27 10:40:27 -0800 (Sat, 27 Dec 2008) | 1 line duplicate ................ r13906 | kohsuke | 2008-12-27 14:39:36 -0800 (Sat, 27 Dec 2008) | 1 line renamed to a shorter name ................ r13907 | kohsuke | 2008-12-27 15:03:25 -0800 (Sat, 27 Dec 2008) | 1 line added icons ................ r13908 | kohsuke | 2008-12-27 16:20:37 -0800 (Sat, 27 Dec 2008) | 1 line renamed to make 'loadStatistics' the URL binding. ................ r13909 | kohsuke | 2008-12-27 16:21:01 -0800 (Sat, 27 Dec 2008) | 1 line exposing loadStatistics for Computer for better URL binding ................ r13910 | kohsuke | 2008-12-27 16:21:16 -0800 (Sat, 27 Dec 2008) | 1 line adding UI support ................ r13911 | kohsuke | 2008-12-27 19:31:43 -0800 (Sat, 27 Dec 2008) | 1 line added some basic visualization ................ r13912 | kohsuke | 2008-12-27 19:35:10 -0800 (Sat, 27 Dec 2008) | 1 line if there's no description, don't even show it. ................ r13913 | kohsuke | 2008-12-27 19:39:26 -0800 (Sat, 27 Dec 2008) | 1 line added load statistics page for the label as well. ................ r13914 | kohsuke | 2008-12-27 19:48:55 -0800 (Sat, 27 Dec 2008) | 1 line added one more convenience method. ................ r13915 | kohsuke | 2008-12-27 19:54:29 -0800 (Sat, 27 Dec 2008) | 1 line refactored so that a different Dataset can be fed. ................ r13916 | kohsuke | 2008-12-27 19:59:20 -0800 (Sat, 27 Dec 2008) | 1 line added global load statistics lnk to the management screen. ................ r13917 | kohsuke | 2008-12-27 20:31:01 -0800 (Sat, 27 Dec 2008) | 1 line <dt>s should use the bold font to distinguish them from <dd>s ................ r13918 | kohsuke | 2008-12-27 20:35:10 -0800 (Sat, 27 Dec 2008) | 1 line added description of what the graph means. ................ r13919 | kohsuke | 2008-12-27 20:35:39 -0800 (Sat, 27 Dec 2008) | 1 line added description of what the graph means. ................ git-svn-id: https://hudson.dev.java.net/svn/hudson/trunk/hudson/main@14215 71c3de6d-444a-0410-be80-ed276b4c234a
2009-01-07 09:02:56 +08:00
}
// shared tooltip object
var tooltip;
// Behavior rules
//========================================================
// using tag names in CSS selector makes the processing faster
function registerValidator(e) {
e.targetElement = findFollowingTR(e, "validation-error-area").firstChild.nextSibling;
e.targetUrl = function() {
return eval(this.getAttribute("checkUrl"));
};
var method = e.getAttribute("checkMethod");
if (!method) method = "get";
FormChecker.delayedCheck(e.targetUrl(), method, e.targetElement);
var checker = function() {
var target = this.targetElement;
FormChecker.sendRequest(this.targetUrl(), {
method : method,
onComplete : function(x) {
target.innerHTML = x.responseText;
}
});
}
var oldOnchange = e.onchange;
if(typeof oldOnchange=="function") {
e.onchange = function() { checker.call(this); oldOnchange.call(this); }
} else
e.onchange = checker;
e.onblur = checker;
e = null; // avoid memory leak
}
/**
* Wraps a <button> into YUI button.
*
* @param e
* button element
* @param onclick
* onclick handler
*/
function makeButton(e,onclick) {
Merged revisions 11754-11755,11763-11766,11770,11773-11777,11791-11797,11828-11829,11831-11839,11841-11843,11850,11854,11994,12774,12778-12793,12820-12822,12831-12841,12854-12855,12860-12882,12896-12905,12914-12920,12938-12941,12950,13045-13046,13048,13063-13064,13066,13072-13076,13111,13122-13147,13150,13153-13158,13487-13488,13851-13852,13854-13856,13859,13866-13867,13869,13872-13876,13878-13879,13883-13885,13887-13890,13896-13919 via svnmerge from https://www.dev.java.net/svn/hudson/branches/multiple-computer-per-node ................ r11754 | kohsuke | 2008-08-25 17:59:14 -0700 (Mon, 25 Aug 2008) | 3 lines Adding EphemeralNode for non-persisted dynamically-allocated expandable/shrinkable slave pool. Tweaked the serialization of Hudson.slaves accordingly. ................ r11755 | kohsuke | 2008-08-25 18:10:42 -0700 (Mon, 25 Aug 2008) | 1 line making a small improvements ................ r11763 | kohsuke | 2008-08-26 13:57:25 -0700 (Tue, 26 Aug 2008) | 1 line adding more convenience methods ................ r11764 | kohsuke | 2008-08-26 14:24:20 -0700 (Tue, 26 Aug 2008) | 1 line ported mask capability from the TFS plugin to the core. ................ r11765 | kohsuke | 2008-08-26 14:26:25 -0700 (Tue, 26 Aug 2008) | 1 line making it non-final to allow for subclassing ................ r11766 | kohsuke | 2008-08-26 14:35:20 -0700 (Tue, 26 Aug 2008) | 1 line test case for NodeList ................ r11770 | kohsuke | 2008-08-26 15:15:21 -0700 (Tue, 26 Aug 2008) | 3 lines Wrote a simple tool that monitors a file system change (in a poor way) and triggers a build. ................ r11773 | kohsuke | 2008-08-26 17:20:30 -0700 (Tue, 26 Aug 2008) | 1 line made more structured ................ r11774 | kohsuke | 2008-08-26 17:47:41 -0700 (Tue, 26 Aug 2008) | 1 line indentation fix ................ r11775 | kohsuke | 2008-08-26 17:48:22 -0700 (Tue, 26 Aug 2008) | 1 line remove the use of a deprecated feature. ................ r11776 | kohsuke | 2008-08-26 17:51:54 -0700 (Tue, 26 Aug 2008) | 1 line renamed to 'ALL' to be consistent with recent use of DescriptorList ................ r11777 | kohsuke | 2008-08-26 18:04:17 -0700 (Tue, 26 Aug 2008) | 1 line adding NodeFactory list and its configuration mechanism ................ r11791 | kohsuke | 2008-08-27 09:43:38 -0700 (Wed, 27 Aug 2008) | 1 line picked up the latest jelly with Iterable support in <j:forEach> ................ r11792 | kohsuke | 2008-08-27 09:44:08 -0700 (Wed, 27 Aug 2008) | 1 line Iterable support added in commons-jelly 1.1-hudson-20080826 ................ r11793 | kohsuke | 2008-08-27 10:15:14 -0700 (Wed, 27 Aug 2008) | 2 lines - added name to NodeFactory for binding NodeFactory to URL tree. - NodeFactory should be access controlled ................ r11794 | kohsuke | 2008-08-27 10:41:11 -0700 (Wed, 27 Aug 2008) | 1 line added a method to add one Node at a time ................ r11795 | kohsuke | 2008-08-27 10:41:37 -0700 (Wed, 27 Aug 2008) | 1 line added permission constatnt ................ r11796 | kohsuke | 2008-08-27 10:42:13 -0700 (Wed, 27 Aug 2008) | 1 line allowing the launch method to throw an exception. ................ r11797 | kohsuke | 2008-08-27 10:44:13 -0700 (Wed, 27 Aug 2008) | 1 line improving the handling ................ r11828 | kohsuke | 2008-08-29 11:07:16 -0700 (Fri, 29 Aug 2008) | 1 line added executor config to the sidebar. ................ r11829 | kohsuke | 2008-08-29 11:16:11 -0700 (Fri, 29 Aug 2008) | 1 line "it" should be assigned to NodeFactory ................ r11831 | kohsuke | 2008-08-29 11:44:41 -0700 (Fri, 29 Aug 2008) | 1 line formatting changes ................ r11832 | kohsuke | 2008-08-29 11:59:21 -0700 (Fri, 29 Aug 2008) | 1 line added a script to create a flashing image from any picture ................ r11833 | kohsuke | 2008-08-29 12:07:56 -0700 (Fri, 29 Aug 2008) | 1 line doc improvement. ................ r11834 | kohsuke | 2008-08-29 13:37:59 -0700 (Fri, 29 Aug 2008) | 1 line added new images to indicate that a slave is launching ................ r11835 | kohsuke | 2008-08-29 13:43:41 -0700 (Fri, 29 Aug 2008) | 1 line indicate a launching slave accordingly. ................ r11836 | kohsuke | 2008-08-29 14:02:28 -0700 (Fri, 29 Aug 2008) | 1 line added a method to remove a Node. ................ r11837 | kohsuke | 2008-08-29 14:02:38 -0700 (Fri, 29 Aug 2008) | 1 line disconnect ................ r11838 | kohsuke | 2008-08-29 14:03:22 -0700 (Fri, 29 Aug 2008) | 1 line formatting changes ................ r11839 | kohsuke | 2008-08-29 14:14:04 -0700 (Fri, 29 Aug 2008) | 1 line allowing subclasses. ................ r11841 | kohsuke | 2008-08-29 14:28:29 -0700 (Fri, 29 Aug 2008) | 1 line constructor should be the first in the definition. ................ r11842 | kohsuke | 2008-08-29 14:31:01 -0700 (Fri, 29 Aug 2008) | 1 line doc improvement. ................ r11843 | kohsuke | 2008-08-29 14:32:48 -0700 (Fri, 29 Aug 2008) | 1 line fixed a problem of using partially constructed object during launch(), because the setNode() method is called from the Computer constructor. ................ r11850 | kohsuke | 2008-08-29 14:50:36 -0700 (Fri, 29 Aug 2008) | 1 line serialize NodeFactory first so that references to them from NodeList will become references in XML. ................ r11854 | kohsuke | 2008-08-29 14:56:56 -0700 (Fri, 29 Aug 2008) | 1 line cleaning up a bit. ................ r11994 | kohsuke | 2008-09-03 14:42:11 -0700 (Wed, 03 Sep 2008) | 21 lines Fixed ArrayIndexOutOfBoundsException during replace(), when the title contains a '$' literal. The typical stack trace looks like: Caused by: java.lang.ArrayIndexOutOfBoundsException: 32 at hudson.MarkupText$SubText.start(MarkupText.java:95) at hudson.MarkupText$SubText.group(MarkupText.java:131) at hudson.MarkupText$SubText.replace(MarkupText.java:154) at hudson.MarkupText$SubText.surroundWith(MarkupText.java:83) at hudson.plugins.jira.JiraChangeLogAnnotator.annotate(JiraChangeLogAnnotator.java:37) at hudson.scm.ChangeLogSet$Entry.getMsgAnnotated(ChangeLogSet.java:117) ... 148 more Vijayan Jayaraman and I found this problem while we were looking at the server log of Hudson for OpenJFX. Adding a unit test to verify this behavior, too. ................ r12774 | kohsuke | 2008-10-27 15:03:36 -0700 (Mon, 27 Oct 2008) | 3 lines preparing for heterogenousness in Node, so that different Node can be configured with different UIs, much like how different Jobs can be configured. Creating a slave works also like creating a new job. ................ r12778 | kohsuke | 2008-10-27 15:06:51 -0700 (Mon, 27 Oct 2008) | 1 line We need to be able to create an emtpy Slave initially, so we have to do with the check in the form field validation. ................ r12779 | kohsuke | 2008-10-27 15:48:04 -0700 (Mon, 27 Oct 2008) | 1 line making the new slave page a two-step process ................ r12780 | kohsuke | 2008-10-27 15:48:24 -0700 (Mon, 27 Oct 2008) | 1 line fixed a compilation problem ................ r12781 | kohsuke | 2008-10-27 15:53:30 -0700 (Mon, 27 Oct 2008) | 1 line bug fixes ................ r12782 | kohsuke | 2008-10-27 15:58:20 -0700 (Mon, 27 Oct 2008) | 1 line bug fixes ................ r12783 | kohsuke | 2008-10-27 16:08:56 -0700 (Mon, 27 Oct 2008) | 1 line making the configuration page work for slaves ................ r12784 | kohsuke | 2008-10-27 16:35:17 -0700 (Mon, 27 Oct 2008) | 1 line added new-computer.svg ................ r12785 | kohsuke | 2008-10-27 16:37:26 -0700 (Mon, 27 Oct 2008) | 1 line hooking up the config/create pages to the UI ................ r12786 | kohsuke | 2008-10-27 16:44:40 -0700 (Mon, 27 Oct 2008) | 1 line fixed a copy method. ................ r12787 | kohsuke | 2008-10-27 16:47:33 -0700 (Mon, 27 Oct 2008) | 1 line code was broken when a slave was renamed ................ r12788 | kohsuke | 2008-10-27 16:58:04 -0700 (Mon, 27 Oct 2008) | 1 line moving out the commonality into a new tag ................ r12789 | kohsuke | 2008-10-27 17:01:21 -0700 (Mon, 27 Oct 2008) | 1 line consistent term usage ................ r12790 | kohsuke | 2008-10-27 17:03:19 -0700 (Mon, 27 Oct 2008) | 1 line retiring the configureExecutors. Slave configuration is now moved to individual slave page ................ r12791 | kohsuke | 2008-10-27 17:10:32 -0700 (Mon, 27 Oct 2008) | 1 line retired configureExecutors.jelly and completed moved its contents to somewhere else ................ r12792 | kohsuke | 2008-10-27 17:21:53 -0700 (Mon, 27 Oct 2008) | 1 line bug fix. request handling of "/descriptor/FQCN/..." was broken. ................ r12793 | kohsuke | 2008-10-27 17:27:08 -0700 (Mon, 27 Oct 2008) | 1 line NodeFactory -> Cloud to encourage consistent term usage between the code and the UI. ................ r12820 | kohsuke | 2008-10-29 10:58:20 -0700 (Wed, 29 Oct 2008) | 1 line formatting fix ................ r12821 | kohsuke | 2008-10-29 11:17:49 -0700 (Wed, 29 Oct 2008) | 1 line added classes for handling a secret and prevent accidental exposure of a secret in the persisted form ................ r12822 | kohsuke | 2008-10-29 11:32:39 -0700 (Wed, 29 Oct 2008) | 1 line added a base64 validator ................ r12831 | kohsuke | 2008-10-29 15:58:45 -0700 (Wed, 29 Oct 2008) | 1 line secret key needs to be persisted outside config.xml (and it is, already!) ................ r12832 | kohsuke | 2008-10-29 16:06:28 -0700 (Wed, 29 Oct 2008) | 1 line started working on Amazon EC2 plugin ................ r12833 | kohsuke | 2008-10-29 16:09:20 -0700 (Wed, 29 Oct 2008) | 1 line brought the same enhancement as in <textbox /> ................ r12834 | kohsuke | 2008-10-29 16:15:05 -0700 (Wed, 29 Oct 2008) | 1 line copy over the onclick handler from the original button element ................ r12835 | kohsuke | 2008-10-29 17:01:04 -0700 (Wed, 29 Oct 2008) | 1 line allow OK messages to be sent with some mark up. ................ r12836 | kohsuke | 2008-10-29 17:06:52 -0700 (Wed, 29 Oct 2008) | 1 line added connection testing. This pattern needs to be generalized since it happens often ................ r12837 | kohsuke | 2008-10-29 17:13:11 -0700 (Wed, 29 Oct 2008) | 1 line this is little better ................ r12838 | kohsuke | 2008-10-29 17:17:44 -0700 (Wed, 29 Oct 2008) | 1 line added spinner ................ r12839 | kohsuke | 2008-10-29 17:31:54 -0700 (Wed, 29 Oct 2008) | 1 line restructuring the validation button support in a form that can be readily moved to the core. ................ r12840 | kohsuke | 2008-10-29 18:01:41 -0700 (Wed, 29 Oct 2008) | 1 line added <f:validateButton/> for multi-field server-side validation ................ r12841 | kohsuke | 2008-10-29 18:03:12 -0700 (Wed, 29 Oct 2008) | 1 line logic moved to <f:validateButton/> in the core. ................ r12854 | kohsuke | 2008-10-30 13:32:58 -0700 (Thu, 30 Oct 2008) | 1 line @QueryParameter.value won't be necessary any more ................ r12855 | kohsuke | 2008-10-30 13:42:58 -0700 (Thu, 30 Oct 2008) | 1 line need a strongly-typed constructor. ................ r12860 | kohsuke | 2008-10-30 15:24:18 -0700 (Thu, 30 Oct 2008) | 1 line adding more reflection support, which in turn we use in taglibs to raise the level of abstraction. ................ r12861 | kohsuke | 2008-10-30 15:33:22 -0700 (Thu, 30 Oct 2008) | 1 line added a tag to create databinding to a<select> element from an enum property ................ r12862 | kohsuke | 2008-10-30 15:37:44 -0700 (Thu, 30 Oct 2008) | 1 line adding a smarter bi-directional binding through <f:repeatable field="..."/> ................ r12863 | kohsuke | 2008-10-30 15:47:48 -0700 (Thu, 30 Oct 2008) | 1 line making progress with the EC2 support ................ r12864 | kohsuke | 2008-10-30 16:12:34 -0700 (Thu, 30 Oct 2008) | 1 line added form field validation for AMI ID ................ r12865 | kohsuke | 2008-10-30 16:15:44 -0700 (Thu, 30 Oct 2008) | 1 line added simpler version ................ r12866 | kohsuke | 2008-10-30 16:17:15 -0700 (Thu, 30 Oct 2008) | 1 line doc improvement ................ r12867 | kohsuke | 2008-10-30 16:17:19 -0700 (Thu, 30 Oct 2008) | 1 line simplified a bit ................ r12868 | kohsuke | 2008-10-30 16:40:25 -0700 (Thu, 30 Oct 2008) | 1 line doc improvement ................ r12869 | kohsuke | 2008-10-30 17:00:57 -0700 (Thu, 30 Oct 2008) | 1 line adding the provisioning of the new slave ................ r12870 | kohsuke | 2008-10-30 17:07:27 -0700 (Thu, 30 Oct 2008) | 1 line /** {@inheritDoc} */ is the default behavior for javadoc, so there's no point in making that explicit. ................ r12871 | kohsuke | 2008-10-30 17:11:04 -0700 (Thu, 30 Oct 2008) | 1 line doc bug fix ................ r12872 | kohsuke | 2008-10-30 17:17:20 -0700 (Thu, 30 Oct 2008) | 1 line simplified a bit ................ r12873 | kohsuke | 2008-10-30 17:19:06 -0700 (Thu, 30 Oct 2008) | 1 line added RetentionStrategy for EC2 instances ................ r12874 | kohsuke | 2008-10-30 17:21:17 -0700 (Thu, 30 Oct 2008) | 1 line allowing subclasses to override the disconnect behavior. ................ r12875 | kohsuke | 2008-10-30 18:02:35 -0700 (Thu, 30 Oct 2008) | 1 line added termination ................ r12876 | kohsuke | 2008-10-30 18:05:30 -0700 (Thu, 30 Oct 2008) | 1 line forgot to rename when NodeFactory was renamed to Cloud ................ r12877 | kohsuke | 2008-10-30 18:06:08 -0700 (Thu, 30 Oct 2008) | 1 line using the console icon ................ r12878 | kohsuke | 2008-10-30 18:17:20 -0700 (Thu, 30 Oct 2008) | 1 line adding UI to remove a slave. ................ r12879 | kohsuke | 2008-10-30 18:48:57 -0700 (Thu, 30 Oct 2008) | 1 line commons-discovery now needed in stapler ................ r12880 | kohsuke | 2008-10-30 18:50:27 -0700 (Thu, 30 Oct 2008) | 1 line needs to use a newer version of stapler ................ r12881 | kohsuke | 2008-10-30 18:51:02 -0700 (Thu, 30 Oct 2008) | 1 line Bye bye CVS ................ r12882 | kohsuke | 2008-10-30 18:51:43 -0700 (Thu, 30 Oct 2008) | 1 line Bye bye CVS ................ r12896 | kohsuke | 2008-10-31 14:52:07 -0700 (Fri, 31 Oct 2008) | 1 line fixed the ordering between field and the mighty get(String) method. ................ r12897 | kohsuke | 2008-10-31 15:08:41 -0700 (Fri, 31 Oct 2008) | 1 line fixed test compilation problems ................ r12898 | kohsuke | 2008-10-31 15:11:25 -0700 (Fri, 31 Oct 2008) | 1 line marking this as a model object since it's always bound to URL. ................ r12899 | kohsuke | 2008-10-31 15:13:42 -0700 (Fri, 31 Oct 2008) | 1 line adding UI hook up to manually provision a new node ................ r12900 | kohsuke | 2008-10-31 15:14:00 -0700 (Fri, 31 Oct 2008) | 1 line after merging the trunk the version number is different ................ r12901 | kohsuke | 2008-10-31 15:21:54 -0700 (Fri, 31 Oct 2008) | 1 line adding UI hook up for provisioning a new slave ................ r12902 | kohsuke | 2008-10-31 15:45:10 -0700 (Fri, 31 Oct 2008) | 1 line adding a hook to decorate ComputerLauncher. ................ r12903 | kohsuke | 2008-10-31 15:48:21 -0700 (Fri, 31 Oct 2008) | 1 line added filtering support ................ r12904 | kohsuke | 2008-10-31 15:52:45 -0700 (Fri, 31 Oct 2008) | 1 line added view ................ r12905 | kohsuke | 2008-10-31 15:53:49 -0700 (Fri, 31 Oct 2008) | 1 line doc improvement ................ r12914 | kohsuke | 2008-11-01 17:45:57 -0700 (Sat, 01 Nov 2008) | 1 line adding code for connecting with SSH ................ r12915 | kohsuke | 2008-11-01 17:49:28 -0700 (Sat, 01 Nov 2008) | 1 line working on launchers ................ r12916 | kohsuke | 2008-11-01 18:33:12 -0700 (Sat, 01 Nov 2008) | 1 line added a method to fully read a stream ................ r12917 | kohsuke | 2008-11-01 18:33:45 -0700 (Sat, 01 Nov 2008) | 1 line bumped up stapler ................ r12918 | kohsuke | 2008-11-01 18:39:41 -0700 (Sat, 01 Nov 2008) | 1 line doc improvement. ................ r12919 | kohsuke | 2008-11-01 18:45:24 -0700 (Sat, 01 Nov 2008) | 1 line added a launcher ................ r12920 | kohsuke | 2008-11-01 18:55:02 -0700 (Sat, 01 Nov 2008) | 1 line implementing the actual ComputerLauncher ................ r12938 | kohsuke | 2008-11-02 08:56:05 -0800 (Sun, 02 Nov 2008) | 1 line support the field notation ................ r12939 | kohsuke | 2008-11-02 09:20:21 -0800 (Sun, 02 Nov 2008) | 1 line added the mechanism to execute the init script ................ r12940 | kohsuke | 2008-11-02 09:21:38 -0800 (Sun, 02 Nov 2008) | 1 line simplification ................ r12941 | kohsuke | 2008-11-02 09:36:21 -0800 (Sun, 02 Nov 2008) | 1 line adding key handling ................ r12950 | kohsuke | 2008-11-03 11:00:58 -0800 (Mon, 03 Nov 2008) | 1 line formatting changes ................ r13045 | kohsuke | 2008-11-06 15:24:32 -0800 (Thu, 06 Nov 2008) | 1 line adding time series datatype for retaining load average statistics in memory ................ r13046 | kohsuke | 2008-11-06 15:59:02 -0800 (Thu, 06 Nov 2008) | 1 line added a convenience method. ................ r13048 | kohsuke | 2008-11-06 16:21:54 -0800 (Thu, 06 Nov 2008) | 2 lines - started monitoring # of executor statistics. - exposed label to the remote API ................ r13063 | kohsuke | 2008-11-07 13:05:15 -0800 (Fri, 07 Nov 2008) | 1 line added a convenience method. ................ r13064 | kohsuke | 2008-11-07 13:11:08 -0800 (Fri, 07 Nov 2008) | 1 line monitor the length of the queue too ................ r13066 | kohsuke | 2008-11-07 14:15:56 -0800 (Fri, 07 Nov 2008) | 1 line moved the stats to its own class. ................ r13072 | kohsuke | 2008-11-07 15:40:29 -0800 (Fri, 07 Nov 2008) | 1 line adding provisioning logic based on load statistics ................ r13073 | kohsuke | 2008-11-07 15:46:00 -0800 (Fri, 07 Nov 2008) | 1 line for effective testing, we need sub-sec precision ................ r13074 | kohsuke | 2008-11-07 16:24:44 -0800 (Fri, 07 Nov 2008) | 1 line fixed a lie. ................ r13075 | kohsuke | 2008-11-07 16:25:12 -0800 (Fri, 07 Nov 2008) | 1 line bug fix ................ r13076 | kohsuke | 2008-11-07 16:30:55 -0800 (Fri, 07 Nov 2008) | 1 line avoid using deprecated methods ................ r13111 | kohsuke | 2008-11-09 11:54:23 -0800 (Sun, 09 Nov 2008) | 1 line added the Future<?> return parameter to Computer.launch(). To do this w/o breaking compatibility, renamed launch to connect. ................ r13122 | kohsuke | 2008-11-10 14:38:03 -0800 (Mon, 10 Nov 2008) | 1 line allow programmatic update of the assigned label ................ r13123 | kohsuke | 2008-11-10 14:38:40 -0800 (Mon, 10 Nov 2008) | 1 line Iterator not needed because CopyOnWriteArrayList doesn't support removal via iterator. ................ r13124 | kohsuke | 2008-11-10 14:39:24 -0800 (Mon, 10 Nov 2008) | 1 line added another Builder for tests ................ r13125 | kohsuke | 2008-11-10 14:39:48 -0800 (Mon, 10 Nov 2008) | 1 line simplified a bit. This TestEnvironment stuff needs some clearer story. ................ r13126 | kohsuke | 2008-11-10 14:46:40 -0800 (Mon, 10 Nov 2008) | 1 line IDEA complains about this. ................ r13127 | kohsuke | 2008-11-10 14:51:53 -0800 (Mon, 10 Nov 2008) | 1 line improved the error diagnostics by displaying why a provisioned node failed to launch ................ r13128 | kohsuke | 2008-11-10 14:52:12 -0800 (Mon, 10 Nov 2008) | 1 line Started a test case for NodeProvisioner ................ r13129 | kohsuke | 2008-11-10 14:52:27 -0800 (Mon, 10 Nov 2008) | 1 line formatting changes ................ r13130 | kohsuke | 2008-11-10 15:16:02 -0800 (Mon, 10 Nov 2008) | 1 line report the failure as a failure. ................ r13131 | kohsuke | 2008-11-10 16:34:23 -0800 (Mon, 10 Nov 2008) | 1 line adding a parameter to the connect method to support joining to the pending launch activity. ................ r13132 | kohsuke | 2008-11-10 16:38:31 -0800 (Mon, 10 Nov 2008) | 1 line making members public so that it can be accessed from other classes (DummyCloudImpl was the first to do this) ................ r13133 | kohsuke | 2008-11-10 16:38:58 -0800 (Mon, 10 Nov 2008) | 1 line split the cloud implementation to a separate class to allow reuse. ................ r13134 | kohsuke | 2008-11-10 16:56:27 -0800 (Mon, 10 Nov 2008) | 1 line assign unique names to support multiple jobs ................ r13135 | kohsuke | 2008-11-10 17:11:31 -0800 (Mon, 10 Nov 2008) | 1 line avoid unnecessary interruption ................ r13136 | kohsuke | 2008-11-10 17:11:41 -0800 (Mon, 10 Nov 2008) | 1 line adding another test case ................ r13137 | kohsuke | 2008-11-10 17:16:28 -0800 (Mon, 10 Nov 2008) | 1 line cleaned up a test case ................ r13138 | kohsuke | 2008-11-10 17:36:52 -0800 (Mon, 10 Nov 2008) | 1 line since the setNode method is called on every Computer just by adding a new node, don't force a new launch attempt. ................ r13139 | kohsuke | 2008-11-10 17:37:38 -0800 (Mon, 10 Nov 2008) | 1 line perform orderly shutdown by giving computers enough time to disconnect. ................ r13140 | kohsuke | 2008-11-10 17:38:08 -0800 (Mon, 10 Nov 2008) | 3 lines return Future for synchronization. This breaks binary compatibility, but I checked none of the plugins in Hudson SVN uses this, so I hope this is OK. ................ r13141 | kohsuke | 2008-11-10 17:38:46 -0800 (Mon, 10 Nov 2008) | 1 line improved diagnostics ................ r13142 | kohsuke | 2008-11-10 17:39:55 -0800 (Mon, 10 Nov 2008) | 1 line removed compiler warning ................ r13143 | kohsuke | 2008-11-10 18:02:56 -0800 (Mon, 10 Nov 2008) | 1 line hide the rounding related problem from Cloud by passing int instead of float. ................ r13144 | kohsuke | 2008-11-10 18:10:10 -0800 (Mon, 10 Nov 2008) | 1 line bug fix ................ r13145 | kohsuke | 2008-11-10 18:11:51 -0800 (Mon, 10 Nov 2008) | 1 line formatting changes ................ r13146 | kohsuke | 2008-11-10 18:15:08 -0800 (Mon, 10 Nov 2008) | 1 line moved the slave launch code to HudsonTestCase for reuse ................ r13147 | kohsuke | 2008-11-10 18:20:19 -0800 (Mon, 10 Nov 2008) | 1 line adding another test case ................ r13150 | kohsuke | 2008-11-11 07:28:53 -0800 (Tue, 11 Nov 2008) | 1 line bug fix ................ r13153 | kohsuke | 2008-11-11 14:04:21 -0800 (Tue, 11 Nov 2008) | 1 line cutting down the test size to 5 to increase the test speed ................ r13154 | kohsuke | 2008-11-11 14:04:37 -0800 (Tue, 11 Nov 2008) | 1 line improved debuggability ................ r13155 | kohsuke | 2008-11-11 14:10:04 -0800 (Tue, 11 Nov 2008) | 1 line added another convenience method ................ r13156 | kohsuke | 2008-11-11 14:10:21 -0800 (Tue, 11 Nov 2008) | 1 line further reduce the test turn around time ................ r13157 | kohsuke | 2008-11-11 14:22:03 -0800 (Tue, 11 Nov 2008) | 1 line doc improvement and clean up ................ r13158 | kohsuke | 2008-11-11 14:22:28 -0800 (Tue, 11 Nov 2008) | 1 line added a new metho ................ r13487 | kohsuke | 2008-12-09 17:17:30 -0800 (Tue, 09 Dec 2008) | 1 line SlaveTemplate needs to be able to computer # of executors. ................ r13488 | kohsuke | 2008-12-09 17:18:05 -0800 (Tue, 09 Dec 2008) | 1 line fixed a compilation problem with the latest head of the branch ................ r13851 | kohsuke | 2008-12-24 13:40:43 -0800 (Wed, 24 Dec 2008) | 82 lines fixed a dead lock reported by Jesse. Found one Java-level deadlock: ============================= "Executor #0 for master": waiting to lock monitor 0x09409bac (object 0x87474ca0, a hudson.util.CopyOnWriteMap$Hash), which is held by "main" "main": waiting to lock monitor 0x09409b48 (object 0x87474d48, a hudson.model.Hudson$MasterComputer), which is held by "Executor #0 for master" Java stack information for the threads listed above: =================================================== "Executor #0 for master": at hudson.util.CopyOnWriteMap.remove(CopyOnWriteMap.java:78) - waiting to lock <0x87474ca0> (a hudson.util.CopyOnWriteMap$Hash) at hudson.model.Hudson.removeComputer(Hudson.java:717) at hudson.model.Computer.removeExecutor(Computer.java:433) - locked <0x87474d48> (a hudson.model.Hudson$MasterComputer) at hudson.model.Executor.run(Executor.java:65) - locked <0x87474d48> (a hudson.model.Hudson$MasterComputer) "main": at hudson.model.Computer.setNumExecutors(Computer.java:338) - waiting to lock <0x87474d48> (a hudson.model.Hudson$MasterComputer) at hudson.model.Computer.setNode(Computer.java:327) at hudson.model.Hudson.updateComputer(Hudson.java:704) at hudson.model.Hudson.updateComputerList(Hudson.java:685) - locked <0x87474ca0> (a hudson.util.CopyOnWriteMap$Hash) at hudson.model.Hudson.setNodes(Hudson.java:1076) at hudson.model.Hudson.addNode(Hudson.java:1060) - locked <0x87474cb0> (a hudson.model.Hudson) at org.jvnet.hudson.test.HudsonTestCase.createSlave(HudsonTestCase.java:247) at hudson.slaves.NodeProvisionerTest.testBaselineSlaveUsage(NodeProvisionerTest.java:86) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at junit.framework.TestCase.runTest(TestCase.java:154) at org.jvnet.hudson.test.HudsonTestCase.runTest(HudsonTestCase.java:151) at junit.framework.TestCase.runBare(TestCase.java:127) at junit.framework.TestResult$1.protect(TestResult.java:106) at junit.framework.TestResult.runProtected(TestResult.java:124) at junit.framework.TestResult.run(TestResult.java:109) at junit.framework.TestCase.run(TestCase.java:118) at junit.framework.TestSuite.runTest(TestSuite.java:208) at junit.framework.TestSuite.run(TestSuite.java:203) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.apache.maven.surefire.junit.JUnitTestSet.execute(JUnitTestSet.java:213) at org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.executeTestSet(AbstractDirectoryTestSuite.java:140) at org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.execute(AbstractDirectoryTestSuite.java:127) at org.apache.maven.surefire.Surefire.run(Surefire.java:177) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.apache.maven.surefire.booter.SurefireBooter.runSuitesInProcess(SurefireBooter.java:345) at org.apache.maven.surefire.booter.SurefireBooter.run(SurefireBooter.java:241) at org.apache.maven.plugin.surefire.SurefirePlugin.execute(SurefirePlugin.java:537) at org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:447) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:539) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalWithLifecycle(DefaultLifecycleExecutor.java:480) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:459) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:311) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:278) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:143) at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:333) at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:126) at org.apache.maven.cli.MavenCli.main(MavenCli.java:282) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315) at org.codehaus.classworlds.Launcher.launch(Launcher.java:255) at org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430) at org.codehaus.classworlds.Launcher.main(Launcher.java:375) Found 1 deadlock. ................ r13852 | kohsuke | 2008-12-24 14:32:29 -0800 (Wed, 24 Dec 2008) | 1 line bug fix in the test case. ................ r13854 | kohsuke | 2008-12-24 15:20:22 -0800 (Wed, 24 Dec 2008) | 2 lines Using a new version of Rhino to get a proper exception chaining. ................ r13855 | kohsuke | 2008-12-24 15:22:13 -0800 (Wed, 24 Dec 2008) | 1 line typo ................ r13856 | kohsuke | 2008-12-24 15:37:56 -0800 (Wed, 24 Dec 2008) | 1 line CR shouldn't be in the repository ................ r13859 | kohsuke | 2008-12-24 15:50:32 -0800 (Wed, 24 Dec 2008) | 3 lines Fixed svn:eol-style. ................ r13866 | kohsuke | 2008-12-24 21:26:43 -0800 (Wed, 24 Dec 2008) | 3 lines Copying rev.13860 to retry a merge that now looks suspicious. ................ r13869 | kohsuke | 2008-12-24 22:03:46 -0800 (Wed, 24 Dec 2008) | 2 lines The 2nd merge was successful, so adopting the successful merge as the multiple-computer-per-node branch. ................ r13872 | kohsuke | 2008-12-25 07:28:37 -0800 (Thu, 25 Dec 2008) | 1 line fixed a test failure ................ r13873 | kohsuke | 2008-12-25 08:16:49 -0800 (Thu, 25 Dec 2008) | 1 line expanded NodeProvisioner to work on per-label basis ................ r13874 | kohsuke | 2008-12-25 08:27:32 -0800 (Thu, 25 Dec 2008) | 1 line bug fix ................ r13875 | kohsuke | 2008-12-25 08:33:17 -0800 (Thu, 25 Dec 2008) | 1 line bug fix ................ r13876 | kohsuke | 2008-12-25 08:45:03 -0800 (Thu, 25 Dec 2008) | 3 lines [HUDSON-2605] Strangely, I discovered that on some File, which is new File("./target/hudson-for-test"), file.exists()==false but file.getAbsoluteFile().exists()==true. It looks like this happens when $PWD of the process at the OS level is different from System.getProperty("user.dir") ................ r13878 | kohsuke | 2008-12-25 15:52:45 -0800 (Thu, 25 Dec 2008) | 1 line added a marker file ................ r13879 | kohsuke | 2008-12-25 15:53:13 -0800 (Thu, 25 Dec 2008) | 1 line use marker file to find the hudson main workspace. ................ r13883 | kohsuke | 2008-12-26 07:50:44 -0800 (Fri, 26 Dec 2008) | 1 line avoid using a deprecated method. ................ r13884 | kohsuke | 2008-12-26 07:50:59 -0800 (Fri, 26 Dec 2008) | 1 line adding more probes ................ r13885 | kohsuke | 2008-12-26 08:15:42 -0800 (Fri, 26 Dec 2008) | 1 line for analyzing test failures, capturing the output is crucial. ................ r13887 | kohsuke | 2008-12-26 11:25:12 -0800 (Fri, 26 Dec 2008) | 1 line allow sub-types to intercept mutation ................ r13888 | kohsuke | 2008-12-26 11:26:01 -0800 (Fri, 26 Dec 2008) | 1 line clouds need to be taken into account before marking a label as pointless. ................ r13889 | kohsuke | 2008-12-26 11:26:40 -0800 (Fri, 26 Dec 2008) | 3 lines fixing bugs in NodeProvisioner. Conservative estimate on idle executors have to be max, not min. ................ r13890 | kohsuke | 2008-12-26 11:42:53 -0800 (Fri, 26 Dec 2008) | 1 line turns out the problem was that we were adding multiple slaves under the same name, which confused Hudson to no end. ................ r13896 | kohsuke | 2008-12-27 07:44:20 -0800 (Sat, 27 Dec 2008) | 1 line formatting changes ................ r13897 | kohsuke | 2008-12-27 07:45:00 -0800 (Sat, 27 Dec 2008) | 1 line reprot the test name to stdout so that one can easily distinguish different tests in target/surefire-reports/xyz-output.txt ................ r13898 | kohsuke | 2008-12-27 07:54:53 -0800 (Sat, 27 Dec 2008) | 1 line doc improvement ................ r13899 | kohsuke | 2008-12-27 09:59:07 -0800 (Sat, 27 Dec 2008) | 1 line split the functionality into two classes ................ r13900 | kohsuke | 2008-12-27 10:00:29 -0800 (Sat, 27 Dec 2008) | 1 line doc improvement ................ r13901 | kohsuke | 2008-12-27 10:06:24 -0800 (Sat, 27 Dec 2008) | 1 line added 'tick' ................ r13902 | kohsuke | 2008-12-27 10:08:04 -0800 (Sat, 27 Dec 2008) | 1 line adding graph rendering of the load statistics ................ r13903 | kohsuke | 2008-12-27 10:19:41 -0800 (Sat, 27 Dec 2008) | 1 line improved graph layout ................ r13904 | kohsuke | 2008-12-27 10:21:05 -0800 (Sat, 27 Dec 2008) | 1 line Picker -> TimeScale to better reflect what it is. ................ r13905 | kohsuke | 2008-12-27 10:40:27 -0800 (Sat, 27 Dec 2008) | 1 line duplicate ................ r13906 | kohsuke | 2008-12-27 14:39:36 -0800 (Sat, 27 Dec 2008) | 1 line renamed to a shorter name ................ r13907 | kohsuke | 2008-12-27 15:03:25 -0800 (Sat, 27 Dec 2008) | 1 line added icons ................ r13908 | kohsuke | 2008-12-27 16:20:37 -0800 (Sat, 27 Dec 2008) | 1 line renamed to make 'loadStatistics' the URL binding. ................ r13909 | kohsuke | 2008-12-27 16:21:01 -0800 (Sat, 27 Dec 2008) | 1 line exposing loadStatistics for Computer for better URL binding ................ r13910 | kohsuke | 2008-12-27 16:21:16 -0800 (Sat, 27 Dec 2008) | 1 line adding UI support ................ r13911 | kohsuke | 2008-12-27 19:31:43 -0800 (Sat, 27 Dec 2008) | 1 line added some basic visualization ................ r13912 | kohsuke | 2008-12-27 19:35:10 -0800 (Sat, 27 Dec 2008) | 1 line if there's no description, don't even show it. ................ r13913 | kohsuke | 2008-12-27 19:39:26 -0800 (Sat, 27 Dec 2008) | 1 line added load statistics page for the label as well. ................ r13914 | kohsuke | 2008-12-27 19:48:55 -0800 (Sat, 27 Dec 2008) | 1 line added one more convenience method. ................ r13915 | kohsuke | 2008-12-27 19:54:29 -0800 (Sat, 27 Dec 2008) | 1 line refactored so that a different Dataset can be fed. ................ r13916 | kohsuke | 2008-12-27 19:59:20 -0800 (Sat, 27 Dec 2008) | 1 line added global load statistics lnk to the management screen. ................ r13917 | kohsuke | 2008-12-27 20:31:01 -0800 (Sat, 27 Dec 2008) | 1 line <dt>s should use the bold font to distinguish them from <dd>s ................ r13918 | kohsuke | 2008-12-27 20:35:10 -0800 (Sat, 27 Dec 2008) | 1 line added description of what the graph means. ................ r13919 | kohsuke | 2008-12-27 20:35:39 -0800 (Sat, 27 Dec 2008) | 1 line added description of what the graph means. ................ git-svn-id: https://hudson.dev.java.net/svn/hudson/trunk/hudson/main@14215 71c3de6d-444a-0410-be80-ed276b4c234a
2009-01-07 09:02:56 +08:00
var h = e.onclick;
var clsName = e.className;
var n = e.name;
var btn = new YAHOO.widget.Button(e,{});
if(onclick!=null)
btn.addListener("click",onclick);
Merged revisions 11754-11755,11763-11766,11770,11773-11777,11791-11797,11828-11829,11831-11839,11841-11843,11850,11854,11994,12774,12778-12793,12820-12822,12831-12841,12854-12855,12860-12882,12896-12905,12914-12920,12938-12941,12950,13045-13046,13048,13063-13064,13066,13072-13076,13111,13122-13147,13150,13153-13158,13487-13488,13851-13852,13854-13856,13859,13866-13867,13869,13872-13876,13878-13879,13883-13885,13887-13890,13896-13919 via svnmerge from https://www.dev.java.net/svn/hudson/branches/multiple-computer-per-node ................ r11754 | kohsuke | 2008-08-25 17:59:14 -0700 (Mon, 25 Aug 2008) | 3 lines Adding EphemeralNode for non-persisted dynamically-allocated expandable/shrinkable slave pool. Tweaked the serialization of Hudson.slaves accordingly. ................ r11755 | kohsuke | 2008-08-25 18:10:42 -0700 (Mon, 25 Aug 2008) | 1 line making a small improvements ................ r11763 | kohsuke | 2008-08-26 13:57:25 -0700 (Tue, 26 Aug 2008) | 1 line adding more convenience methods ................ r11764 | kohsuke | 2008-08-26 14:24:20 -0700 (Tue, 26 Aug 2008) | 1 line ported mask capability from the TFS plugin to the core. ................ r11765 | kohsuke | 2008-08-26 14:26:25 -0700 (Tue, 26 Aug 2008) | 1 line making it non-final to allow for subclassing ................ r11766 | kohsuke | 2008-08-26 14:35:20 -0700 (Tue, 26 Aug 2008) | 1 line test case for NodeList ................ r11770 | kohsuke | 2008-08-26 15:15:21 -0700 (Tue, 26 Aug 2008) | 3 lines Wrote a simple tool that monitors a file system change (in a poor way) and triggers a build. ................ r11773 | kohsuke | 2008-08-26 17:20:30 -0700 (Tue, 26 Aug 2008) | 1 line made more structured ................ r11774 | kohsuke | 2008-08-26 17:47:41 -0700 (Tue, 26 Aug 2008) | 1 line indentation fix ................ r11775 | kohsuke | 2008-08-26 17:48:22 -0700 (Tue, 26 Aug 2008) | 1 line remove the use of a deprecated feature. ................ r11776 | kohsuke | 2008-08-26 17:51:54 -0700 (Tue, 26 Aug 2008) | 1 line renamed to 'ALL' to be consistent with recent use of DescriptorList ................ r11777 | kohsuke | 2008-08-26 18:04:17 -0700 (Tue, 26 Aug 2008) | 1 line adding NodeFactory list and its configuration mechanism ................ r11791 | kohsuke | 2008-08-27 09:43:38 -0700 (Wed, 27 Aug 2008) | 1 line picked up the latest jelly with Iterable support in <j:forEach> ................ r11792 | kohsuke | 2008-08-27 09:44:08 -0700 (Wed, 27 Aug 2008) | 1 line Iterable support added in commons-jelly 1.1-hudson-20080826 ................ r11793 | kohsuke | 2008-08-27 10:15:14 -0700 (Wed, 27 Aug 2008) | 2 lines - added name to NodeFactory for binding NodeFactory to URL tree. - NodeFactory should be access controlled ................ r11794 | kohsuke | 2008-08-27 10:41:11 -0700 (Wed, 27 Aug 2008) | 1 line added a method to add one Node at a time ................ r11795 | kohsuke | 2008-08-27 10:41:37 -0700 (Wed, 27 Aug 2008) | 1 line added permission constatnt ................ r11796 | kohsuke | 2008-08-27 10:42:13 -0700 (Wed, 27 Aug 2008) | 1 line allowing the launch method to throw an exception. ................ r11797 | kohsuke | 2008-08-27 10:44:13 -0700 (Wed, 27 Aug 2008) | 1 line improving the handling ................ r11828 | kohsuke | 2008-08-29 11:07:16 -0700 (Fri, 29 Aug 2008) | 1 line added executor config to the sidebar. ................ r11829 | kohsuke | 2008-08-29 11:16:11 -0700 (Fri, 29 Aug 2008) | 1 line "it" should be assigned to NodeFactory ................ r11831 | kohsuke | 2008-08-29 11:44:41 -0700 (Fri, 29 Aug 2008) | 1 line formatting changes ................ r11832 | kohsuke | 2008-08-29 11:59:21 -0700 (Fri, 29 Aug 2008) | 1 line added a script to create a flashing image from any picture ................ r11833 | kohsuke | 2008-08-29 12:07:56 -0700 (Fri, 29 Aug 2008) | 1 line doc improvement. ................ r11834 | kohsuke | 2008-08-29 13:37:59 -0700 (Fri, 29 Aug 2008) | 1 line added new images to indicate that a slave is launching ................ r11835 | kohsuke | 2008-08-29 13:43:41 -0700 (Fri, 29 Aug 2008) | 1 line indicate a launching slave accordingly. ................ r11836 | kohsuke | 2008-08-29 14:02:28 -0700 (Fri, 29 Aug 2008) | 1 line added a method to remove a Node. ................ r11837 | kohsuke | 2008-08-29 14:02:38 -0700 (Fri, 29 Aug 2008) | 1 line disconnect ................ r11838 | kohsuke | 2008-08-29 14:03:22 -0700 (Fri, 29 Aug 2008) | 1 line formatting changes ................ r11839 | kohsuke | 2008-08-29 14:14:04 -0700 (Fri, 29 Aug 2008) | 1 line allowing subclasses. ................ r11841 | kohsuke | 2008-08-29 14:28:29 -0700 (Fri, 29 Aug 2008) | 1 line constructor should be the first in the definition. ................ r11842 | kohsuke | 2008-08-29 14:31:01 -0700 (Fri, 29 Aug 2008) | 1 line doc improvement. ................ r11843 | kohsuke | 2008-08-29 14:32:48 -0700 (Fri, 29 Aug 2008) | 1 line fixed a problem of using partially constructed object during launch(), because the setNode() method is called from the Computer constructor. ................ r11850 | kohsuke | 2008-08-29 14:50:36 -0700 (Fri, 29 Aug 2008) | 1 line serialize NodeFactory first so that references to them from NodeList will become references in XML. ................ r11854 | kohsuke | 2008-08-29 14:56:56 -0700 (Fri, 29 Aug 2008) | 1 line cleaning up a bit. ................ r11994 | kohsuke | 2008-09-03 14:42:11 -0700 (Wed, 03 Sep 2008) | 21 lines Fixed ArrayIndexOutOfBoundsException during replace(), when the title contains a '$' literal. The typical stack trace looks like: Caused by: java.lang.ArrayIndexOutOfBoundsException: 32 at hudson.MarkupText$SubText.start(MarkupText.java:95) at hudson.MarkupText$SubText.group(MarkupText.java:131) at hudson.MarkupText$SubText.replace(MarkupText.java:154) at hudson.MarkupText$SubText.surroundWith(MarkupText.java:83) at hudson.plugins.jira.JiraChangeLogAnnotator.annotate(JiraChangeLogAnnotator.java:37) at hudson.scm.ChangeLogSet$Entry.getMsgAnnotated(ChangeLogSet.java:117) ... 148 more Vijayan Jayaraman and I found this problem while we were looking at the server log of Hudson for OpenJFX. Adding a unit test to verify this behavior, too. ................ r12774 | kohsuke | 2008-10-27 15:03:36 -0700 (Mon, 27 Oct 2008) | 3 lines preparing for heterogenousness in Node, so that different Node can be configured with different UIs, much like how different Jobs can be configured. Creating a slave works also like creating a new job. ................ r12778 | kohsuke | 2008-10-27 15:06:51 -0700 (Mon, 27 Oct 2008) | 1 line We need to be able to create an emtpy Slave initially, so we have to do with the check in the form field validation. ................ r12779 | kohsuke | 2008-10-27 15:48:04 -0700 (Mon, 27 Oct 2008) | 1 line making the new slave page a two-step process ................ r12780 | kohsuke | 2008-10-27 15:48:24 -0700 (Mon, 27 Oct 2008) | 1 line fixed a compilation problem ................ r12781 | kohsuke | 2008-10-27 15:53:30 -0700 (Mon, 27 Oct 2008) | 1 line bug fixes ................ r12782 | kohsuke | 2008-10-27 15:58:20 -0700 (Mon, 27 Oct 2008) | 1 line bug fixes ................ r12783 | kohsuke | 2008-10-27 16:08:56 -0700 (Mon, 27 Oct 2008) | 1 line making the configuration page work for slaves ................ r12784 | kohsuke | 2008-10-27 16:35:17 -0700 (Mon, 27 Oct 2008) | 1 line added new-computer.svg ................ r12785 | kohsuke | 2008-10-27 16:37:26 -0700 (Mon, 27 Oct 2008) | 1 line hooking up the config/create pages to the UI ................ r12786 | kohsuke | 2008-10-27 16:44:40 -0700 (Mon, 27 Oct 2008) | 1 line fixed a copy method. ................ r12787 | kohsuke | 2008-10-27 16:47:33 -0700 (Mon, 27 Oct 2008) | 1 line code was broken when a slave was renamed ................ r12788 | kohsuke | 2008-10-27 16:58:04 -0700 (Mon, 27 Oct 2008) | 1 line moving out the commonality into a new tag ................ r12789 | kohsuke | 2008-10-27 17:01:21 -0700 (Mon, 27 Oct 2008) | 1 line consistent term usage ................ r12790 | kohsuke | 2008-10-27 17:03:19 -0700 (Mon, 27 Oct 2008) | 1 line retiring the configureExecutors. Slave configuration is now moved to individual slave page ................ r12791 | kohsuke | 2008-10-27 17:10:32 -0700 (Mon, 27 Oct 2008) | 1 line retired configureExecutors.jelly and completed moved its contents to somewhere else ................ r12792 | kohsuke | 2008-10-27 17:21:53 -0700 (Mon, 27 Oct 2008) | 1 line bug fix. request handling of "/descriptor/FQCN/..." was broken. ................ r12793 | kohsuke | 2008-10-27 17:27:08 -0700 (Mon, 27 Oct 2008) | 1 line NodeFactory -> Cloud to encourage consistent term usage between the code and the UI. ................ r12820 | kohsuke | 2008-10-29 10:58:20 -0700 (Wed, 29 Oct 2008) | 1 line formatting fix ................ r12821 | kohsuke | 2008-10-29 11:17:49 -0700 (Wed, 29 Oct 2008) | 1 line added classes for handling a secret and prevent accidental exposure of a secret in the persisted form ................ r12822 | kohsuke | 2008-10-29 11:32:39 -0700 (Wed, 29 Oct 2008) | 1 line added a base64 validator ................ r12831 | kohsuke | 2008-10-29 15:58:45 -0700 (Wed, 29 Oct 2008) | 1 line secret key needs to be persisted outside config.xml (and it is, already!) ................ r12832 | kohsuke | 2008-10-29 16:06:28 -0700 (Wed, 29 Oct 2008) | 1 line started working on Amazon EC2 plugin ................ r12833 | kohsuke | 2008-10-29 16:09:20 -0700 (Wed, 29 Oct 2008) | 1 line brought the same enhancement as in <textbox /> ................ r12834 | kohsuke | 2008-10-29 16:15:05 -0700 (Wed, 29 Oct 2008) | 1 line copy over the onclick handler from the original button element ................ r12835 | kohsuke | 2008-10-29 17:01:04 -0700 (Wed, 29 Oct 2008) | 1 line allow OK messages to be sent with some mark up. ................ r12836 | kohsuke | 2008-10-29 17:06:52 -0700 (Wed, 29 Oct 2008) | 1 line added connection testing. This pattern needs to be generalized since it happens often ................ r12837 | kohsuke | 2008-10-29 17:13:11 -0700 (Wed, 29 Oct 2008) | 1 line this is little better ................ r12838 | kohsuke | 2008-10-29 17:17:44 -0700 (Wed, 29 Oct 2008) | 1 line added spinner ................ r12839 | kohsuke | 2008-10-29 17:31:54 -0700 (Wed, 29 Oct 2008) | 1 line restructuring the validation button support in a form that can be readily moved to the core. ................ r12840 | kohsuke | 2008-10-29 18:01:41 -0700 (Wed, 29 Oct 2008) | 1 line added <f:validateButton/> for multi-field server-side validation ................ r12841 | kohsuke | 2008-10-29 18:03:12 -0700 (Wed, 29 Oct 2008) | 1 line logic moved to <f:validateButton/> in the core. ................ r12854 | kohsuke | 2008-10-30 13:32:58 -0700 (Thu, 30 Oct 2008) | 1 line @QueryParameter.value won't be necessary any more ................ r12855 | kohsuke | 2008-10-30 13:42:58 -0700 (Thu, 30 Oct 2008) | 1 line need a strongly-typed constructor. ................ r12860 | kohsuke | 2008-10-30 15:24:18 -0700 (Thu, 30 Oct 2008) | 1 line adding more reflection support, which in turn we use in taglibs to raise the level of abstraction. ................ r12861 | kohsuke | 2008-10-30 15:33:22 -0700 (Thu, 30 Oct 2008) | 1 line added a tag to create databinding to a<select> element from an enum property ................ r12862 | kohsuke | 2008-10-30 15:37:44 -0700 (Thu, 30 Oct 2008) | 1 line adding a smarter bi-directional binding through <f:repeatable field="..."/> ................ r12863 | kohsuke | 2008-10-30 15:47:48 -0700 (Thu, 30 Oct 2008) | 1 line making progress with the EC2 support ................ r12864 | kohsuke | 2008-10-30 16:12:34 -0700 (Thu, 30 Oct 2008) | 1 line added form field validation for AMI ID ................ r12865 | kohsuke | 2008-10-30 16:15:44 -0700 (Thu, 30 Oct 2008) | 1 line added simpler version ................ r12866 | kohsuke | 2008-10-30 16:17:15 -0700 (Thu, 30 Oct 2008) | 1 line doc improvement ................ r12867 | kohsuke | 2008-10-30 16:17:19 -0700 (Thu, 30 Oct 2008) | 1 line simplified a bit ................ r12868 | kohsuke | 2008-10-30 16:40:25 -0700 (Thu, 30 Oct 2008) | 1 line doc improvement ................ r12869 | kohsuke | 2008-10-30 17:00:57 -0700 (Thu, 30 Oct 2008) | 1 line adding the provisioning of the new slave ................ r12870 | kohsuke | 2008-10-30 17:07:27 -0700 (Thu, 30 Oct 2008) | 1 line /** {@inheritDoc} */ is the default behavior for javadoc, so there's no point in making that explicit. ................ r12871 | kohsuke | 2008-10-30 17:11:04 -0700 (Thu, 30 Oct 2008) | 1 line doc bug fix ................ r12872 | kohsuke | 2008-10-30 17:17:20 -0700 (Thu, 30 Oct 2008) | 1 line simplified a bit ................ r12873 | kohsuke | 2008-10-30 17:19:06 -0700 (Thu, 30 Oct 2008) | 1 line added RetentionStrategy for EC2 instances ................ r12874 | kohsuke | 2008-10-30 17:21:17 -0700 (Thu, 30 Oct 2008) | 1 line allowing subclasses to override the disconnect behavior. ................ r12875 | kohsuke | 2008-10-30 18:02:35 -0700 (Thu, 30 Oct 2008) | 1 line added termination ................ r12876 | kohsuke | 2008-10-30 18:05:30 -0700 (Thu, 30 Oct 2008) | 1 line forgot to rename when NodeFactory was renamed to Cloud ................ r12877 | kohsuke | 2008-10-30 18:06:08 -0700 (Thu, 30 Oct 2008) | 1 line using the console icon ................ r12878 | kohsuke | 2008-10-30 18:17:20 -0700 (Thu, 30 Oct 2008) | 1 line adding UI to remove a slave. ................ r12879 | kohsuke | 2008-10-30 18:48:57 -0700 (Thu, 30 Oct 2008) | 1 line commons-discovery now needed in stapler ................ r12880 | kohsuke | 2008-10-30 18:50:27 -0700 (Thu, 30 Oct 2008) | 1 line needs to use a newer version of stapler ................ r12881 | kohsuke | 2008-10-30 18:51:02 -0700 (Thu, 30 Oct 2008) | 1 line Bye bye CVS ................ r12882 | kohsuke | 2008-10-30 18:51:43 -0700 (Thu, 30 Oct 2008) | 1 line Bye bye CVS ................ r12896 | kohsuke | 2008-10-31 14:52:07 -0700 (Fri, 31 Oct 2008) | 1 line fixed the ordering between field and the mighty get(String) method. ................ r12897 | kohsuke | 2008-10-31 15:08:41 -0700 (Fri, 31 Oct 2008) | 1 line fixed test compilation problems ................ r12898 | kohsuke | 2008-10-31 15:11:25 -0700 (Fri, 31 Oct 2008) | 1 line marking this as a model object since it's always bound to URL. ................ r12899 | kohsuke | 2008-10-31 15:13:42 -0700 (Fri, 31 Oct 2008) | 1 line adding UI hook up to manually provision a new node ................ r12900 | kohsuke | 2008-10-31 15:14:00 -0700 (Fri, 31 Oct 2008) | 1 line after merging the trunk the version number is different ................ r12901 | kohsuke | 2008-10-31 15:21:54 -0700 (Fri, 31 Oct 2008) | 1 line adding UI hook up for provisioning a new slave ................ r12902 | kohsuke | 2008-10-31 15:45:10 -0700 (Fri, 31 Oct 2008) | 1 line adding a hook to decorate ComputerLauncher. ................ r12903 | kohsuke | 2008-10-31 15:48:21 -0700 (Fri, 31 Oct 2008) | 1 line added filtering support ................ r12904 | kohsuke | 2008-10-31 15:52:45 -0700 (Fri, 31 Oct 2008) | 1 line added view ................ r12905 | kohsuke | 2008-10-31 15:53:49 -0700 (Fri, 31 Oct 2008) | 1 line doc improvement ................ r12914 | kohsuke | 2008-11-01 17:45:57 -0700 (Sat, 01 Nov 2008) | 1 line adding code for connecting with SSH ................ r12915 | kohsuke | 2008-11-01 17:49:28 -0700 (Sat, 01 Nov 2008) | 1 line working on launchers ................ r12916 | kohsuke | 2008-11-01 18:33:12 -0700 (Sat, 01 Nov 2008) | 1 line added a method to fully read a stream ................ r12917 | kohsuke | 2008-11-01 18:33:45 -0700 (Sat, 01 Nov 2008) | 1 line bumped up stapler ................ r12918 | kohsuke | 2008-11-01 18:39:41 -0700 (Sat, 01 Nov 2008) | 1 line doc improvement. ................ r12919 | kohsuke | 2008-11-01 18:45:24 -0700 (Sat, 01 Nov 2008) | 1 line added a launcher ................ r12920 | kohsuke | 2008-11-01 18:55:02 -0700 (Sat, 01 Nov 2008) | 1 line implementing the actual ComputerLauncher ................ r12938 | kohsuke | 2008-11-02 08:56:05 -0800 (Sun, 02 Nov 2008) | 1 line support the field notation ................ r12939 | kohsuke | 2008-11-02 09:20:21 -0800 (Sun, 02 Nov 2008) | 1 line added the mechanism to execute the init script ................ r12940 | kohsuke | 2008-11-02 09:21:38 -0800 (Sun, 02 Nov 2008) | 1 line simplification ................ r12941 | kohsuke | 2008-11-02 09:36:21 -0800 (Sun, 02 Nov 2008) | 1 line adding key handling ................ r12950 | kohsuke | 2008-11-03 11:00:58 -0800 (Mon, 03 Nov 2008) | 1 line formatting changes ................ r13045 | kohsuke | 2008-11-06 15:24:32 -0800 (Thu, 06 Nov 2008) | 1 line adding time series datatype for retaining load average statistics in memory ................ r13046 | kohsuke | 2008-11-06 15:59:02 -0800 (Thu, 06 Nov 2008) | 1 line added a convenience method. ................ r13048 | kohsuke | 2008-11-06 16:21:54 -0800 (Thu, 06 Nov 2008) | 2 lines - started monitoring # of executor statistics. - exposed label to the remote API ................ r13063 | kohsuke | 2008-11-07 13:05:15 -0800 (Fri, 07 Nov 2008) | 1 line added a convenience method. ................ r13064 | kohsuke | 2008-11-07 13:11:08 -0800 (Fri, 07 Nov 2008) | 1 line monitor the length of the queue too ................ r13066 | kohsuke | 2008-11-07 14:15:56 -0800 (Fri, 07 Nov 2008) | 1 line moved the stats to its own class. ................ r13072 | kohsuke | 2008-11-07 15:40:29 -0800 (Fri, 07 Nov 2008) | 1 line adding provisioning logic based on load statistics ................ r13073 | kohsuke | 2008-11-07 15:46:00 -0800 (Fri, 07 Nov 2008) | 1 line for effective testing, we need sub-sec precision ................ r13074 | kohsuke | 2008-11-07 16:24:44 -0800 (Fri, 07 Nov 2008) | 1 line fixed a lie. ................ r13075 | kohsuke | 2008-11-07 16:25:12 -0800 (Fri, 07 Nov 2008) | 1 line bug fix ................ r13076 | kohsuke | 2008-11-07 16:30:55 -0800 (Fri, 07 Nov 2008) | 1 line avoid using deprecated methods ................ r13111 | kohsuke | 2008-11-09 11:54:23 -0800 (Sun, 09 Nov 2008) | 1 line added the Future<?> return parameter to Computer.launch(). To do this w/o breaking compatibility, renamed launch to connect. ................ r13122 | kohsuke | 2008-11-10 14:38:03 -0800 (Mon, 10 Nov 2008) | 1 line allow programmatic update of the assigned label ................ r13123 | kohsuke | 2008-11-10 14:38:40 -0800 (Mon, 10 Nov 2008) | 1 line Iterator not needed because CopyOnWriteArrayList doesn't support removal via iterator. ................ r13124 | kohsuke | 2008-11-10 14:39:24 -0800 (Mon, 10 Nov 2008) | 1 line added another Builder for tests ................ r13125 | kohsuke | 2008-11-10 14:39:48 -0800 (Mon, 10 Nov 2008) | 1 line simplified a bit. This TestEnvironment stuff needs some clearer story. ................ r13126 | kohsuke | 2008-11-10 14:46:40 -0800 (Mon, 10 Nov 2008) | 1 line IDEA complains about this. ................ r13127 | kohsuke | 2008-11-10 14:51:53 -0800 (Mon, 10 Nov 2008) | 1 line improved the error diagnostics by displaying why a provisioned node failed to launch ................ r13128 | kohsuke | 2008-11-10 14:52:12 -0800 (Mon, 10 Nov 2008) | 1 line Started a test case for NodeProvisioner ................ r13129 | kohsuke | 2008-11-10 14:52:27 -0800 (Mon, 10 Nov 2008) | 1 line formatting changes ................ r13130 | kohsuke | 2008-11-10 15:16:02 -0800 (Mon, 10 Nov 2008) | 1 line report the failure as a failure. ................ r13131 | kohsuke | 2008-11-10 16:34:23 -0800 (Mon, 10 Nov 2008) | 1 line adding a parameter to the connect method to support joining to the pending launch activity. ................ r13132 | kohsuke | 2008-11-10 16:38:31 -0800 (Mon, 10 Nov 2008) | 1 line making members public so that it can be accessed from other classes (DummyCloudImpl was the first to do this) ................ r13133 | kohsuke | 2008-11-10 16:38:58 -0800 (Mon, 10 Nov 2008) | 1 line split the cloud implementation to a separate class to allow reuse. ................ r13134 | kohsuke | 2008-11-10 16:56:27 -0800 (Mon, 10 Nov 2008) | 1 line assign unique names to support multiple jobs ................ r13135 | kohsuke | 2008-11-10 17:11:31 -0800 (Mon, 10 Nov 2008) | 1 line avoid unnecessary interruption ................ r13136 | kohsuke | 2008-11-10 17:11:41 -0800 (Mon, 10 Nov 2008) | 1 line adding another test case ................ r13137 | kohsuke | 2008-11-10 17:16:28 -0800 (Mon, 10 Nov 2008) | 1 line cleaned up a test case ................ r13138 | kohsuke | 2008-11-10 17:36:52 -0800 (Mon, 10 Nov 2008) | 1 line since the setNode method is called on every Computer just by adding a new node, don't force a new launch attempt. ................ r13139 | kohsuke | 2008-11-10 17:37:38 -0800 (Mon, 10 Nov 2008) | 1 line perform orderly shutdown by giving computers enough time to disconnect. ................ r13140 | kohsuke | 2008-11-10 17:38:08 -0800 (Mon, 10 Nov 2008) | 3 lines return Future for synchronization. This breaks binary compatibility, but I checked none of the plugins in Hudson SVN uses this, so I hope this is OK. ................ r13141 | kohsuke | 2008-11-10 17:38:46 -0800 (Mon, 10 Nov 2008) | 1 line improved diagnostics ................ r13142 | kohsuke | 2008-11-10 17:39:55 -0800 (Mon, 10 Nov 2008) | 1 line removed compiler warning ................ r13143 | kohsuke | 2008-11-10 18:02:56 -0800 (Mon, 10 Nov 2008) | 1 line hide the rounding related problem from Cloud by passing int instead of float. ................ r13144 | kohsuke | 2008-11-10 18:10:10 -0800 (Mon, 10 Nov 2008) | 1 line bug fix ................ r13145 | kohsuke | 2008-11-10 18:11:51 -0800 (Mon, 10 Nov 2008) | 1 line formatting changes ................ r13146 | kohsuke | 2008-11-10 18:15:08 -0800 (Mon, 10 Nov 2008) | 1 line moved the slave launch code to HudsonTestCase for reuse ................ r13147 | kohsuke | 2008-11-10 18:20:19 -0800 (Mon, 10 Nov 2008) | 1 line adding another test case ................ r13150 | kohsuke | 2008-11-11 07:28:53 -0800 (Tue, 11 Nov 2008) | 1 line bug fix ................ r13153 | kohsuke | 2008-11-11 14:04:21 -0800 (Tue, 11 Nov 2008) | 1 line cutting down the test size to 5 to increase the test speed ................ r13154 | kohsuke | 2008-11-11 14:04:37 -0800 (Tue, 11 Nov 2008) | 1 line improved debuggability ................ r13155 | kohsuke | 2008-11-11 14:10:04 -0800 (Tue, 11 Nov 2008) | 1 line added another convenience method ................ r13156 | kohsuke | 2008-11-11 14:10:21 -0800 (Tue, 11 Nov 2008) | 1 line further reduce the test turn around time ................ r13157 | kohsuke | 2008-11-11 14:22:03 -0800 (Tue, 11 Nov 2008) | 1 line doc improvement and clean up ................ r13158 | kohsuke | 2008-11-11 14:22:28 -0800 (Tue, 11 Nov 2008) | 1 line added a new metho ................ r13487 | kohsuke | 2008-12-09 17:17:30 -0800 (Tue, 09 Dec 2008) | 1 line SlaveTemplate needs to be able to computer # of executors. ................ r13488 | kohsuke | 2008-12-09 17:18:05 -0800 (Tue, 09 Dec 2008) | 1 line fixed a compilation problem with the latest head of the branch ................ r13851 | kohsuke | 2008-12-24 13:40:43 -0800 (Wed, 24 Dec 2008) | 82 lines fixed a dead lock reported by Jesse. Found one Java-level deadlock: ============================= "Executor #0 for master": waiting to lock monitor 0x09409bac (object 0x87474ca0, a hudson.util.CopyOnWriteMap$Hash), which is held by "main" "main": waiting to lock monitor 0x09409b48 (object 0x87474d48, a hudson.model.Hudson$MasterComputer), which is held by "Executor #0 for master" Java stack information for the threads listed above: =================================================== "Executor #0 for master": at hudson.util.CopyOnWriteMap.remove(CopyOnWriteMap.java:78) - waiting to lock <0x87474ca0> (a hudson.util.CopyOnWriteMap$Hash) at hudson.model.Hudson.removeComputer(Hudson.java:717) at hudson.model.Computer.removeExecutor(Computer.java:433) - locked <0x87474d48> (a hudson.model.Hudson$MasterComputer) at hudson.model.Executor.run(Executor.java:65) - locked <0x87474d48> (a hudson.model.Hudson$MasterComputer) "main": at hudson.model.Computer.setNumExecutors(Computer.java:338) - waiting to lock <0x87474d48> (a hudson.model.Hudson$MasterComputer) at hudson.model.Computer.setNode(Computer.java:327) at hudson.model.Hudson.updateComputer(Hudson.java:704) at hudson.model.Hudson.updateComputerList(Hudson.java:685) - locked <0x87474ca0> (a hudson.util.CopyOnWriteMap$Hash) at hudson.model.Hudson.setNodes(Hudson.java:1076) at hudson.model.Hudson.addNode(Hudson.java:1060) - locked <0x87474cb0> (a hudson.model.Hudson) at org.jvnet.hudson.test.HudsonTestCase.createSlave(HudsonTestCase.java:247) at hudson.slaves.NodeProvisionerTest.testBaselineSlaveUsage(NodeProvisionerTest.java:86) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at junit.framework.TestCase.runTest(TestCase.java:154) at org.jvnet.hudson.test.HudsonTestCase.runTest(HudsonTestCase.java:151) at junit.framework.TestCase.runBare(TestCase.java:127) at junit.framework.TestResult$1.protect(TestResult.java:106) at junit.framework.TestResult.runProtected(TestResult.java:124) at junit.framework.TestResult.run(TestResult.java:109) at junit.framework.TestCase.run(TestCase.java:118) at junit.framework.TestSuite.runTest(TestSuite.java:208) at junit.framework.TestSuite.run(TestSuite.java:203) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.apache.maven.surefire.junit.JUnitTestSet.execute(JUnitTestSet.java:213) at org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.executeTestSet(AbstractDirectoryTestSuite.java:140) at org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.execute(AbstractDirectoryTestSuite.java:127) at org.apache.maven.surefire.Surefire.run(Surefire.java:177) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.apache.maven.surefire.booter.SurefireBooter.runSuitesInProcess(SurefireBooter.java:345) at org.apache.maven.surefire.booter.SurefireBooter.run(SurefireBooter.java:241) at org.apache.maven.plugin.surefire.SurefirePlugin.execute(SurefirePlugin.java:537) at org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:447) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:539) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalWithLifecycle(DefaultLifecycleExecutor.java:480) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:459) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:311) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:278) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:143) at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:333) at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:126) at org.apache.maven.cli.MavenCli.main(MavenCli.java:282) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315) at org.codehaus.classworlds.Launcher.launch(Launcher.java:255) at org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430) at org.codehaus.classworlds.Launcher.main(Launcher.java:375) Found 1 deadlock. ................ r13852 | kohsuke | 2008-12-24 14:32:29 -0800 (Wed, 24 Dec 2008) | 1 line bug fix in the test case. ................ r13854 | kohsuke | 2008-12-24 15:20:22 -0800 (Wed, 24 Dec 2008) | 2 lines Using a new version of Rhino to get a proper exception chaining. ................ r13855 | kohsuke | 2008-12-24 15:22:13 -0800 (Wed, 24 Dec 2008) | 1 line typo ................ r13856 | kohsuke | 2008-12-24 15:37:56 -0800 (Wed, 24 Dec 2008) | 1 line CR shouldn't be in the repository ................ r13859 | kohsuke | 2008-12-24 15:50:32 -0800 (Wed, 24 Dec 2008) | 3 lines Fixed svn:eol-style. ................ r13866 | kohsuke | 2008-12-24 21:26:43 -0800 (Wed, 24 Dec 2008) | 3 lines Copying rev.13860 to retry a merge that now looks suspicious. ................ r13869 | kohsuke | 2008-12-24 22:03:46 -0800 (Wed, 24 Dec 2008) | 2 lines The 2nd merge was successful, so adopting the successful merge as the multiple-computer-per-node branch. ................ r13872 | kohsuke | 2008-12-25 07:28:37 -0800 (Thu, 25 Dec 2008) | 1 line fixed a test failure ................ r13873 | kohsuke | 2008-12-25 08:16:49 -0800 (Thu, 25 Dec 2008) | 1 line expanded NodeProvisioner to work on per-label basis ................ r13874 | kohsuke | 2008-12-25 08:27:32 -0800 (Thu, 25 Dec 2008) | 1 line bug fix ................ r13875 | kohsuke | 2008-12-25 08:33:17 -0800 (Thu, 25 Dec 2008) | 1 line bug fix ................ r13876 | kohsuke | 2008-12-25 08:45:03 -0800 (Thu, 25 Dec 2008) | 3 lines [HUDSON-2605] Strangely, I discovered that on some File, which is new File("./target/hudson-for-test"), file.exists()==false but file.getAbsoluteFile().exists()==true. It looks like this happens when $PWD of the process at the OS level is different from System.getProperty("user.dir") ................ r13878 | kohsuke | 2008-12-25 15:52:45 -0800 (Thu, 25 Dec 2008) | 1 line added a marker file ................ r13879 | kohsuke | 2008-12-25 15:53:13 -0800 (Thu, 25 Dec 2008) | 1 line use marker file to find the hudson main workspace. ................ r13883 | kohsuke | 2008-12-26 07:50:44 -0800 (Fri, 26 Dec 2008) | 1 line avoid using a deprecated method. ................ r13884 | kohsuke | 2008-12-26 07:50:59 -0800 (Fri, 26 Dec 2008) | 1 line adding more probes ................ r13885 | kohsuke | 2008-12-26 08:15:42 -0800 (Fri, 26 Dec 2008) | 1 line for analyzing test failures, capturing the output is crucial. ................ r13887 | kohsuke | 2008-12-26 11:25:12 -0800 (Fri, 26 Dec 2008) | 1 line allow sub-types to intercept mutation ................ r13888 | kohsuke | 2008-12-26 11:26:01 -0800 (Fri, 26 Dec 2008) | 1 line clouds need to be taken into account before marking a label as pointless. ................ r13889 | kohsuke | 2008-12-26 11:26:40 -0800 (Fri, 26 Dec 2008) | 3 lines fixing bugs in NodeProvisioner. Conservative estimate on idle executors have to be max, not min. ................ r13890 | kohsuke | 2008-12-26 11:42:53 -0800 (Fri, 26 Dec 2008) | 1 line turns out the problem was that we were adding multiple slaves under the same name, which confused Hudson to no end. ................ r13896 | kohsuke | 2008-12-27 07:44:20 -0800 (Sat, 27 Dec 2008) | 1 line formatting changes ................ r13897 | kohsuke | 2008-12-27 07:45:00 -0800 (Sat, 27 Dec 2008) | 1 line reprot the test name to stdout so that one can easily distinguish different tests in target/surefire-reports/xyz-output.txt ................ r13898 | kohsuke | 2008-12-27 07:54:53 -0800 (Sat, 27 Dec 2008) | 1 line doc improvement ................ r13899 | kohsuke | 2008-12-27 09:59:07 -0800 (Sat, 27 Dec 2008) | 1 line split the functionality into two classes ................ r13900 | kohsuke | 2008-12-27 10:00:29 -0800 (Sat, 27 Dec 2008) | 1 line doc improvement ................ r13901 | kohsuke | 2008-12-27 10:06:24 -0800 (Sat, 27 Dec 2008) | 1 line added 'tick' ................ r13902 | kohsuke | 2008-12-27 10:08:04 -0800 (Sat, 27 Dec 2008) | 1 line adding graph rendering of the load statistics ................ r13903 | kohsuke | 2008-12-27 10:19:41 -0800 (Sat, 27 Dec 2008) | 1 line improved graph layout ................ r13904 | kohsuke | 2008-12-27 10:21:05 -0800 (Sat, 27 Dec 2008) | 1 line Picker -> TimeScale to better reflect what it is. ................ r13905 | kohsuke | 2008-12-27 10:40:27 -0800 (Sat, 27 Dec 2008) | 1 line duplicate ................ r13906 | kohsuke | 2008-12-27 14:39:36 -0800 (Sat, 27 Dec 2008) | 1 line renamed to a shorter name ................ r13907 | kohsuke | 2008-12-27 15:03:25 -0800 (Sat, 27 Dec 2008) | 1 line added icons ................ r13908 | kohsuke | 2008-12-27 16:20:37 -0800 (Sat, 27 Dec 2008) | 1 line renamed to make 'loadStatistics' the URL binding. ................ r13909 | kohsuke | 2008-12-27 16:21:01 -0800 (Sat, 27 Dec 2008) | 1 line exposing loadStatistics for Computer for better URL binding ................ r13910 | kohsuke | 2008-12-27 16:21:16 -0800 (Sat, 27 Dec 2008) | 1 line adding UI support ................ r13911 | kohsuke | 2008-12-27 19:31:43 -0800 (Sat, 27 Dec 2008) | 1 line added some basic visualization ................ r13912 | kohsuke | 2008-12-27 19:35:10 -0800 (Sat, 27 Dec 2008) | 1 line if there's no description, don't even show it. ................ r13913 | kohsuke | 2008-12-27 19:39:26 -0800 (Sat, 27 Dec 2008) | 1 line added load statistics page for the label as well. ................ r13914 | kohsuke | 2008-12-27 19:48:55 -0800 (Sat, 27 Dec 2008) | 1 line added one more convenience method. ................ r13915 | kohsuke | 2008-12-27 19:54:29 -0800 (Sat, 27 Dec 2008) | 1 line refactored so that a different Dataset can be fed. ................ r13916 | kohsuke | 2008-12-27 19:59:20 -0800 (Sat, 27 Dec 2008) | 1 line added global load statistics lnk to the management screen. ................ r13917 | kohsuke | 2008-12-27 20:31:01 -0800 (Sat, 27 Dec 2008) | 1 line <dt>s should use the bold font to distinguish them from <dd>s ................ r13918 | kohsuke | 2008-12-27 20:35:10 -0800 (Sat, 27 Dec 2008) | 1 line added description of what the graph means. ................ r13919 | kohsuke | 2008-12-27 20:35:39 -0800 (Sat, 27 Dec 2008) | 1 line added description of what the graph means. ................ git-svn-id: https://hudson.dev.java.net/svn/hudson/trunk/hudson/main@14215 71c3de6d-444a-0410-be80-ed276b4c234a
2009-01-07 09:02:56 +08:00
if(h!=null)
btn.addListener("click",h);
var be = btn.get("element");
Element.addClassName(be,clsName);
if(n!=null) // copy the name
be.setAttribute("name",n);
return btn;
}
Merged revisions 17324-17325,17428,17430,17473-17475,17481-17482,17555-17563,17571,17593-17595,17619-17620,17637-17644,17656-17657,17663-17665,17667-17670,17730,17753,17755-17758,17763-17768,17770-17771,17901,17906,17911-17912,17958,17961-17962,17970-17977 via svnmerge from https://www.dev.java.net/svn/hudson/branches/tool-autoinstallation ........ r17324 | jglick | 2009-04-20 18:24:32 -0700 (Mon, 20 Apr 2009) | 2 lines Defensive cloning and Javadoc corrections. (Though it seems no one is using the default impls of these methods yet anyway.) ........ r17325 | jglick | 2009-04-20 18:29:06 -0700 (Mon, 20 Apr 2009) | 1 line Deprecation of delegate method is intentional. ........ r17428 | jglick | 2009-04-23 08:07:14 -0700 (Thu, 23 Apr 2009) | 1 line Noting ToolLocationTranslator more prominently. ........ r17430 | jglick | 2009-04-23 09:16:40 -0700 (Thu, 23 Apr 2009) | 1 line Unused imports. ........ r17473 | jglick | 2009-04-23 19:21:11 -0700 (Thu, 23 Apr 2009) | 1 line Allow Plugin.configure to see the StaplerRequest, needed for some kinds of calls. ........ r17474 | jglick | 2009-04-23 19:25:54 -0700 (Thu, 23 Apr 2009) | 3 lines Initial sketch of plugin to manage tool installations across slaves. (Should really be under ../plugins/ but that was not branched, so putting here for the moment.) ........ r17475 | jglick | 2009-04-23 20:29:36 -0700 (Thu, 23 Apr 2009) | 1 line Typo in Javadoc. ........ r17481 | jglick | 2009-04-23 22:46:26 -0700 (Thu, 23 Apr 2009) | 1 line Unzip of an unbuffered stream is painfully slow. ........ r17482 | jglick | 2009-04-23 22:48:01 -0700 (Thu, 23 Apr 2009) | 1 line ZIP-based tool installer now functional. ........ r17555 | jglick | 2009-04-27 17:50:38 -0700 (Mon, 27 Apr 2009) | 1 line Build against newest trunk. ........ r17556 | jglick | 2009-04-27 18:38:28 -0700 (Mon, 27 Apr 2009) | 1 line Adding help. ........ r17557 | jglick | 2009-04-27 18:57:46 -0700 (Mon, 27 Apr 2009) | 1 line Moving toolName & label config GUI into generic files. ........ r17558 | jglick | 2009-04-27 19:37:30 -0700 (Mon, 27 Apr 2009) | 1 line Typo. ........ r17559 | jglick | 2009-04-27 20:07:47 -0700 (Mon, 27 Apr 2009) | 1 line Second tool installer type based on a freeform command. ........ r17560 | jglick | 2009-04-27 20:24:36 -0700 (Mon, 27 Apr 2009) | 1 line installIfNecessaryFrom will now just return false in case the target dir exists but the URL cannot be opened. ........ r17561 | jglick | 2009-04-27 20:25:22 -0700 (Mon, 27 Apr 2009) | 2 lines chmod only if something was actually installed. Use a+x, not o+x. ........ r17562 | jglick | 2009-04-27 20:26:46 -0700 (Mon, 27 Apr 2009) | 1 line Comment only. ........ r17563 | jglick | 2009-04-27 20:41:12 -0700 (Mon, 27 Apr 2009) | 1 line I18N. ........ r17571 | jglick | 2009-04-28 08:15:31 -0700 (Tue, 28 Apr 2009) | 2 lines Wiki link. ........ r17593 | jglick | 2009-04-28 15:38:33 -0700 (Tue, 28 Apr 2009) | 1 line Turn off echo mode, it's just noise. ........ r17594 | jglick | 2009-04-28 15:39:29 -0700 (Tue, 28 Apr 2009) | 2 lines Synchronizing access to installers for a given node/tool combo. Sending log messages to Hudson log in real time. ........ r17595 | jglick | 2009-04-28 15:46:29 -0700 (Tue, 28 Apr 2009) | 1 line Copyrights. ........ r17619 | jglick | 2009-04-29 06:25:23 -0700 (Wed, 29 Apr 2009) | 1 line Improved Javadoc. ........ r17620 | jglick | 2009-04-29 06:51:11 -0700 (Wed, 29 Apr 2009) | 1 line Demonstraing how to use DLJ to mechanically install official JDK releases on supported operating systems. ........ r17637 | kohsuke | 2009-04-30 16:15:24 -0700 (Thu, 30 Apr 2009) | 1 line fixed what appears to be a C&P mistake ........ r17638 | kohsuke | 2009-04-30 16:16:21 -0700 (Thu, 30 Apr 2009) | 1 line show YUI logger if YUI debugging mode is set. ........ r17639 | kohsuke | 2009-04-30 16:52:28 -0700 (Thu, 30 Apr 2009) | 7 lines Fixed a UI script problem when <hetero-list> nests inside <repeatable>. The cause of the problem was that the behavior for inner <hetero-list> kicks in first, altering HTML (by removing "prototypes"), before behavior for outer <repetable> kicks in and removes the master copy from DOM tree. So <repeatable> ends up computing a master copy after some elements are removed, and hence when we try to reinsert them later by clicking "Add", it'll get incorrect copy, and re-execution of the <hetero-list> behavior bombs out. I fixed this by skipping those HTML-altering behaviors if they show up in the part of DOM tree that's supposed to be snapshotted and removed. ........ r17640 | kohsuke | 2009-04-30 16:57:58 -0700 (Thu, 30 Apr 2009) | 7 lines Added ToolProperty to ToolInstallation (which acts like NodeProperty to Node --- basically decorates the base object with additional properties.) The original motivation is to implement ToolInstaller this way, if Jesse is OK. But decorating tools seem to have some other interesting use, such as a plugin for configuring $M2_HOME/conf/settings.xml, or a plugin to insert unlimited cryptography extension to JDK, or a plugin to add a few more jars into $ANT_HOME/lib. For this to work, ToolInstallations that want properties needs to be modified to use a new constructor. For a starter, I modified the JDK class to do this. I also took the opportunity to modernize JDK/config.jelly. ........ r17641 | kohsuke | 2009-04-30 17:02:04 -0700 (Thu, 30 Apr 2009) | 1 line this appears to be a left-over from early days when we didn't have a means to do form validation ........ r17642 | kohsuke | 2009-04-30 17:02:35 -0700 (Thu, 30 Apr 2009) | 1 line we don't need no.such.JDK but we need name. rebranching ........ r17643 | kohsuke | 2009-04-30 17:03:22 -0700 (Thu, 30 Apr 2009) | 1 line rebranched from Hudson's configure.properties ........ r17644 | kohsuke | 2009-04-30 17:05:31 -0700 (Thu, 30 Apr 2009) | 1 line removed unnecessary translations ........ r17656 | kohsuke | 2009-05-01 11:27:36 -0700 (Fri, 01 May 2009) | 1 line Less hack for improved type safety. Asking people to write more code is not necessarily bad as long as what they need to do is obvious to them. ........ r17657 | kohsuke | 2009-05-01 12:07:20 -0700 (Fri, 01 May 2009) | 5 lines The toolautoinst part of the change that corresponds to rev.17640. ToolInstallers are now hooked under ToolInstallation through InstallSourceProperty as a ToolProperty. This allows the relevant UIs to be shown in one place. Still pending Jesse's feedback. Making it a single commit to simplify a revert if necessary ........ r17663 | kohsuke | 2009-05-01 13:23:51 -0700 (Fri, 01 May 2009) | 1 line doc improvement ........ r17664 | kohsuke | 2009-05-01 13:24:10 -0700 (Fri, 01 May 2009) | 1 line needs this to allow Stapler to databind hetero-list automatically ........ r17665 | jglick | 2009-05-01 13:31:27 -0700 (Fri, 01 May 2009) | 1 line Warnings. ........ r17667 | kohsuke | 2009-05-01 14:20:53 -0700 (Fri, 01 May 2009) | 1 line added a method to do chmod ........ r17668 | kohsuke | 2009-05-01 14:30:35 -0700 (Fri, 01 May 2009) | 1 line prefer JDK6 version to avoid unnecessary JNA loading ........ r17669 | kohsuke | 2009-05-01 14:33:09 -0700 (Fri, 01 May 2009) | 1 line no, I must have confused this. ........ r17670 | kohsuke | 2009-05-01 15:57:11 -0700 (Fri, 01 May 2009) | 2 lines - Automated JDK installer and its test. - Minor update to the signature of ToolInstaller for supplying the expected default location. ........ r17730 | kohsuke | 2009-05-04 11:27:34 -0700 (Mon, 04 May 2009) | 1 line avoid NPE as reported in HUDSON-3608 ........ r17753 | jglick | 2009-05-04 19:34:08 -0700 (Mon, 04 May 2009) | 2 lines Moved toolautoinst functionality into core. ........ r17755 | jglick | 2009-05-04 20:28:34 -0700 (Mon, 04 May 2009) | 8 lines Added TaskListener parameter and IOException and InterruptedException to several methods: Run.getEnvironment NodeSpecific.forNode ToolLocationTranslator.getToolHome ToolLocationNodeProperty.getToolHome ToolInstallation.translateFor ProcessCache.Factory.getMavenInstallation ProcessCache.Factory.getJava ........ r17756 | jglick | 2009-05-04 20:36:56 -0700 (Mon, 04 May 2009) | 1 line expectedLocation was never strictly necessary, and will soon no longer be used even by JDKInstaller. ........ r17757 | jglick | 2009-05-04 20:40:41 -0700 (Mon, 04 May 2009) | 1 line Not sure yet what @since should be. ........ r17758 | jglick | 2009-05-04 20:41:51 -0700 (Mon, 04 May 2009) | 1 line getDefaultInstallers method added. Not yet in use. ........ r17763 | kohsuke | 2009-05-05 10:50:36 -0700 (Tue, 05 May 2009) | 1 line deprecated redundant getJavaHome method ........ r17764 | kohsuke | 2009-05-05 12:10:45 -0700 (Tue, 05 May 2009) | 1 line added general-purpose property defaulting mechanism, and added default tool installer for JDK ........ r17765 | jglick | 2009-05-05 12:35:56 -0700 (Tue, 05 May 2009) | 1 line capitalize("") -> "" ........ r17766 | jglick | 2009-05-05 12:49:52 -0700 (Tue, 05 May 2009) | 1 line Missing @since. ........ r17767 | jglick | 2009-05-05 13:01:41 -0700 (Tue, 05 May 2009) | 1 line Unchecked warning. ........ r17768 | jglick | 2009-05-05 13:19:49 -0700 (Tue, 05 May 2009) | 2 lines Two unsuccessful attempts at form validation. ........ r17770 | jglick | 2009-05-05 13:48:37 -0700 (Tue, 05 May 2009) | 1 line Better class names. ........ r17771 | kohsuke | 2009-05-05 14:12:21 -0700 (Tue, 05 May 2009) | 5 lines brought the form validation check back. The trick is to use the 'value' parameter. In the end we'd expect this check to go away anyway, as we change input field to drop-down list, but in the mean time, this is why it didn't work. Maybe we probably need more static code checkers? Like FindBugs rules? ........ r17901 | kohsuke | 2009-05-09 19:15:40 -0700 (Sat, 09 May 2009) | 1 line having two toolHome is odd. ........ r17906 | kohsuke | 2009-05-10 11:09:13 -0700 (Sun, 10 May 2009) | 1 line adding the generalization of UpdateCenter, but for compatibility reasons, we are leaving UpdateCenter as-is. ........ r17911 | kohsuke | 2009-05-10 17:02:53 -0700 (Sun, 10 May 2009) | 1 line integrated json-lib with a bit of bug fix ........ r17912 | kohsuke | 2009-05-10 17:13:05 -0700 (Sun, 10 May 2009) | 1 line JDK list is now fetched from hudson.dev.java.net ........ r17958 | kohsuke | 2009-05-11 13:44:25 -0700 (Mon, 11 May 2009) | 48 lines Handle AbortException better to avoid error like this: [INFO] ------------------------------------------------------------------------ [ERROR] BUILD ERROR [INFO] ------------------------------------------------------------------------ [INFO] Failed to delete directory: C:\files\hudson\workspace\hudson\hudson\main\remoting\target. Reason: Unable to delete file C:\files\hudson\workspace\hudson\hudson\main\remoting\target\remoting-1.304-SNAPSHOT.jar [INFO] ------------------------------------------------------------------------ [INFO] For more information, run Maven with the -e switch [INFO] ------------------------------------------------------------------------ [INFO] Total time: 31 seconds [INFO] Finished at: Sun May 10 18:15:33 PDT 2009 [INFO] Final Memory: 25M/48M [INFO] ------------------------------------------------------------------------ Recording fingerprints Archiving artifacts Recording test results ERROR: Failed to archive JUnit reports hudson.util.IOException2: remote file operation failed at hudson.FilePath.act(FilePath.java:596) at hudson.tasks.junit.JUnitResultArchiver.perform(JUnitResultArchiver.java:82) at hudson.model.AbstractBuild$AbstractRunner.performAllBuildStep(AbstractBuild.java:372) at hudson.model.AbstractBuild$AbstractRunner.performAllBuildStep(AbstractBuild.java:360) at hudson.model.Build$RunnerImpl.post2(Build.java:183) at hudson.model.AbstractBuild$AbstractRunner.post(AbstractBuild.java:345) at hudson.model.Run.run(Run.java:943) at hudson.model.Build.run(Build.java:112) at hudson.model.ResourceController.execute(ResourceController.java:93) at hudson.model.Executor.run(Executor.java:119) Caused by: hudson.AbortException: Test reports were found but none of them are new. Did tests run? For example, \files\hudson\workspace\hudson\hudson\main\core\target\surefire-reports\TEST-hudson.BulkChangeTest.xml is 2 days 23 hr old at hudson.tasks.junit.TestResult.parse(TestResult.java:134) at hudson.tasks.junit.TestResult.<init>(TestResult.java:95) at hudson.tasks.junit.JUnitResultArchiver$1.invoke(JUnitResultArchiver.java:95) at hudson.tasks.junit.JUnitResultArchiver$1.invoke(JUnitResultArchiver.java:82) at hudson.FilePath$FileCallableWrapper.call(FilePath.java:1583) at hudson.remoting.UserRequest.perform(UserRequest.java:92) at hudson.remoting.UserRequest.perform(UserRequest.java:46) at hudson.remoting.Request$2.run(Request.java:236) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) at java.util.concurrent.FutureTask.run(FutureTask.java:138) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) at java.lang.Thread.run(Thread.java:619) ........ r17961 | kohsuke | 2009-05-11 15:16:39 -0700 (Mon, 11 May 2009) | 1 line adding Windows JDK silent installation ........ r17962 | kohsuke | 2009-05-11 16:08:13 -0700 (Mon, 11 May 2009) | 1 line Fixing JDK offline installatino for Windows ........ r17970 | kohsuke | 2009-05-11 19:37:59 -0700 (Mon, 11 May 2009) | 1 line Fixing a problem that prevents the usage of this tag in <repeatable> block, which reinserts the same fragment over and over. So statically assigning IDs won't work ........ r17971 | kohsuke | 2009-05-11 22:17:09 -0700 (Mon, 11 May 2009) | 1 line continuing to remove static ID generation, which breaks the tag when used inside <repetable> tag. ........ r17972 | kohsuke | 2009-05-11 22:19:11 -0700 (Mon, 11 May 2009) | 1 line I don't know when this started, but even in the hudson-dev:run mode, the versionis no longer '?', so we need a different way to force reload ........ r17973 | kohsuke | 2009-05-11 22:26:34 -0700 (Mon, 11 May 2009) | 1 line adjusted the text a bit since multiple "add" and "delete"s were rather confusing ........ r17974 | kohsuke | 2009-05-11 22:31:58 -0700 (Mon, 11 May 2009) | 1 line added help screen ........ r17975 | kohsuke | 2009-05-11 22:41:39 -0700 (Mon, 11 May 2009) | 1 line form validation now works against the checkbox, too ........ r17976 | kohsuke | 2009-05-11 22:43:00 -0700 (Mon, 11 May 2009) | 1 line with auto installation, we expect users to specify a directory that doesn't exist yet, so don't report it as an error ........ r17977 | kohsuke | 2009-05-11 22:43:24 -0700 (Mon, 11 May 2009) | 1 line improving the text ........ git-svn-id: https://hudson.dev.java.net/svn/hudson/trunk/hudson/main@17985 71c3de6d-444a-0410-be80-ed276b4c234a
2009-05-12 21:59:10 +08:00
/*
If we are inside 'to-be-removed' class, some HTML altering behaviors interact badly, because
the behavior re-executes when the removed master copy gets reinserted later.
*/
function isInsideRemovable(e) {
return Element.ancestors(e).find(function(f){return f.hasClassName("to-be-removed");});
}
var hudsonRules = {
"BODY" : function() {
tooltip = new YAHOO.widget.Tooltip("tt", {context:[], zindex:999});
},
// do the ones that extract innerHTML so that they can get their original HTML before
// other behavior rules change them (like YUI buttons.)
"DIV.hetero-list-container" : function(e) {
Merged revisions 17324-17325,17428,17430,17473-17475,17481-17482,17555-17563,17571,17593-17595,17619-17620,17637-17644,17656-17657,17663-17665,17667-17670,17730,17753,17755-17758,17763-17768,17770-17771,17901,17906,17911-17912,17958,17961-17962,17970-17977 via svnmerge from https://www.dev.java.net/svn/hudson/branches/tool-autoinstallation ........ r17324 | jglick | 2009-04-20 18:24:32 -0700 (Mon, 20 Apr 2009) | 2 lines Defensive cloning and Javadoc corrections. (Though it seems no one is using the default impls of these methods yet anyway.) ........ r17325 | jglick | 2009-04-20 18:29:06 -0700 (Mon, 20 Apr 2009) | 1 line Deprecation of delegate method is intentional. ........ r17428 | jglick | 2009-04-23 08:07:14 -0700 (Thu, 23 Apr 2009) | 1 line Noting ToolLocationTranslator more prominently. ........ r17430 | jglick | 2009-04-23 09:16:40 -0700 (Thu, 23 Apr 2009) | 1 line Unused imports. ........ r17473 | jglick | 2009-04-23 19:21:11 -0700 (Thu, 23 Apr 2009) | 1 line Allow Plugin.configure to see the StaplerRequest, needed for some kinds of calls. ........ r17474 | jglick | 2009-04-23 19:25:54 -0700 (Thu, 23 Apr 2009) | 3 lines Initial sketch of plugin to manage tool installations across slaves. (Should really be under ../plugins/ but that was not branched, so putting here for the moment.) ........ r17475 | jglick | 2009-04-23 20:29:36 -0700 (Thu, 23 Apr 2009) | 1 line Typo in Javadoc. ........ r17481 | jglick | 2009-04-23 22:46:26 -0700 (Thu, 23 Apr 2009) | 1 line Unzip of an unbuffered stream is painfully slow. ........ r17482 | jglick | 2009-04-23 22:48:01 -0700 (Thu, 23 Apr 2009) | 1 line ZIP-based tool installer now functional. ........ r17555 | jglick | 2009-04-27 17:50:38 -0700 (Mon, 27 Apr 2009) | 1 line Build against newest trunk. ........ r17556 | jglick | 2009-04-27 18:38:28 -0700 (Mon, 27 Apr 2009) | 1 line Adding help. ........ r17557 | jglick | 2009-04-27 18:57:46 -0700 (Mon, 27 Apr 2009) | 1 line Moving toolName & label config GUI into generic files. ........ r17558 | jglick | 2009-04-27 19:37:30 -0700 (Mon, 27 Apr 2009) | 1 line Typo. ........ r17559 | jglick | 2009-04-27 20:07:47 -0700 (Mon, 27 Apr 2009) | 1 line Second tool installer type based on a freeform command. ........ r17560 | jglick | 2009-04-27 20:24:36 -0700 (Mon, 27 Apr 2009) | 1 line installIfNecessaryFrom will now just return false in case the target dir exists but the URL cannot be opened. ........ r17561 | jglick | 2009-04-27 20:25:22 -0700 (Mon, 27 Apr 2009) | 2 lines chmod only if something was actually installed. Use a+x, not o+x. ........ r17562 | jglick | 2009-04-27 20:26:46 -0700 (Mon, 27 Apr 2009) | 1 line Comment only. ........ r17563 | jglick | 2009-04-27 20:41:12 -0700 (Mon, 27 Apr 2009) | 1 line I18N. ........ r17571 | jglick | 2009-04-28 08:15:31 -0700 (Tue, 28 Apr 2009) | 2 lines Wiki link. ........ r17593 | jglick | 2009-04-28 15:38:33 -0700 (Tue, 28 Apr 2009) | 1 line Turn off echo mode, it's just noise. ........ r17594 | jglick | 2009-04-28 15:39:29 -0700 (Tue, 28 Apr 2009) | 2 lines Synchronizing access to installers for a given node/tool combo. Sending log messages to Hudson log in real time. ........ r17595 | jglick | 2009-04-28 15:46:29 -0700 (Tue, 28 Apr 2009) | 1 line Copyrights. ........ r17619 | jglick | 2009-04-29 06:25:23 -0700 (Wed, 29 Apr 2009) | 1 line Improved Javadoc. ........ r17620 | jglick | 2009-04-29 06:51:11 -0700 (Wed, 29 Apr 2009) | 1 line Demonstraing how to use DLJ to mechanically install official JDK releases on supported operating systems. ........ r17637 | kohsuke | 2009-04-30 16:15:24 -0700 (Thu, 30 Apr 2009) | 1 line fixed what appears to be a C&P mistake ........ r17638 | kohsuke | 2009-04-30 16:16:21 -0700 (Thu, 30 Apr 2009) | 1 line show YUI logger if YUI debugging mode is set. ........ r17639 | kohsuke | 2009-04-30 16:52:28 -0700 (Thu, 30 Apr 2009) | 7 lines Fixed a UI script problem when <hetero-list> nests inside <repeatable>. The cause of the problem was that the behavior for inner <hetero-list> kicks in first, altering HTML (by removing "prototypes"), before behavior for outer <repetable> kicks in and removes the master copy from DOM tree. So <repeatable> ends up computing a master copy after some elements are removed, and hence when we try to reinsert them later by clicking "Add", it'll get incorrect copy, and re-execution of the <hetero-list> behavior bombs out. I fixed this by skipping those HTML-altering behaviors if they show up in the part of DOM tree that's supposed to be snapshotted and removed. ........ r17640 | kohsuke | 2009-04-30 16:57:58 -0700 (Thu, 30 Apr 2009) | 7 lines Added ToolProperty to ToolInstallation (which acts like NodeProperty to Node --- basically decorates the base object with additional properties.) The original motivation is to implement ToolInstaller this way, if Jesse is OK. But decorating tools seem to have some other interesting use, such as a plugin for configuring $M2_HOME/conf/settings.xml, or a plugin to insert unlimited cryptography extension to JDK, or a plugin to add a few more jars into $ANT_HOME/lib. For this to work, ToolInstallations that want properties needs to be modified to use a new constructor. For a starter, I modified the JDK class to do this. I also took the opportunity to modernize JDK/config.jelly. ........ r17641 | kohsuke | 2009-04-30 17:02:04 -0700 (Thu, 30 Apr 2009) | 1 line this appears to be a left-over from early days when we didn't have a means to do form validation ........ r17642 | kohsuke | 2009-04-30 17:02:35 -0700 (Thu, 30 Apr 2009) | 1 line we don't need no.such.JDK but we need name. rebranching ........ r17643 | kohsuke | 2009-04-30 17:03:22 -0700 (Thu, 30 Apr 2009) | 1 line rebranched from Hudson's configure.properties ........ r17644 | kohsuke | 2009-04-30 17:05:31 -0700 (Thu, 30 Apr 2009) | 1 line removed unnecessary translations ........ r17656 | kohsuke | 2009-05-01 11:27:36 -0700 (Fri, 01 May 2009) | 1 line Less hack for improved type safety. Asking people to write more code is not necessarily bad as long as what they need to do is obvious to them. ........ r17657 | kohsuke | 2009-05-01 12:07:20 -0700 (Fri, 01 May 2009) | 5 lines The toolautoinst part of the change that corresponds to rev.17640. ToolInstallers are now hooked under ToolInstallation through InstallSourceProperty as a ToolProperty. This allows the relevant UIs to be shown in one place. Still pending Jesse's feedback. Making it a single commit to simplify a revert if necessary ........ r17663 | kohsuke | 2009-05-01 13:23:51 -0700 (Fri, 01 May 2009) | 1 line doc improvement ........ r17664 | kohsuke | 2009-05-01 13:24:10 -0700 (Fri, 01 May 2009) | 1 line needs this to allow Stapler to databind hetero-list automatically ........ r17665 | jglick | 2009-05-01 13:31:27 -0700 (Fri, 01 May 2009) | 1 line Warnings. ........ r17667 | kohsuke | 2009-05-01 14:20:53 -0700 (Fri, 01 May 2009) | 1 line added a method to do chmod ........ r17668 | kohsuke | 2009-05-01 14:30:35 -0700 (Fri, 01 May 2009) | 1 line prefer JDK6 version to avoid unnecessary JNA loading ........ r17669 | kohsuke | 2009-05-01 14:33:09 -0700 (Fri, 01 May 2009) | 1 line no, I must have confused this. ........ r17670 | kohsuke | 2009-05-01 15:57:11 -0700 (Fri, 01 May 2009) | 2 lines - Automated JDK installer and its test. - Minor update to the signature of ToolInstaller for supplying the expected default location. ........ r17730 | kohsuke | 2009-05-04 11:27:34 -0700 (Mon, 04 May 2009) | 1 line avoid NPE as reported in HUDSON-3608 ........ r17753 | jglick | 2009-05-04 19:34:08 -0700 (Mon, 04 May 2009) | 2 lines Moved toolautoinst functionality into core. ........ r17755 | jglick | 2009-05-04 20:28:34 -0700 (Mon, 04 May 2009) | 8 lines Added TaskListener parameter and IOException and InterruptedException to several methods: Run.getEnvironment NodeSpecific.forNode ToolLocationTranslator.getToolHome ToolLocationNodeProperty.getToolHome ToolInstallation.translateFor ProcessCache.Factory.getMavenInstallation ProcessCache.Factory.getJava ........ r17756 | jglick | 2009-05-04 20:36:56 -0700 (Mon, 04 May 2009) | 1 line expectedLocation was never strictly necessary, and will soon no longer be used even by JDKInstaller. ........ r17757 | jglick | 2009-05-04 20:40:41 -0700 (Mon, 04 May 2009) | 1 line Not sure yet what @since should be. ........ r17758 | jglick | 2009-05-04 20:41:51 -0700 (Mon, 04 May 2009) | 1 line getDefaultInstallers method added. Not yet in use. ........ r17763 | kohsuke | 2009-05-05 10:50:36 -0700 (Tue, 05 May 2009) | 1 line deprecated redundant getJavaHome method ........ r17764 | kohsuke | 2009-05-05 12:10:45 -0700 (Tue, 05 May 2009) | 1 line added general-purpose property defaulting mechanism, and added default tool installer for JDK ........ r17765 | jglick | 2009-05-05 12:35:56 -0700 (Tue, 05 May 2009) | 1 line capitalize("") -> "" ........ r17766 | jglick | 2009-05-05 12:49:52 -0700 (Tue, 05 May 2009) | 1 line Missing @since. ........ r17767 | jglick | 2009-05-05 13:01:41 -0700 (Tue, 05 May 2009) | 1 line Unchecked warning. ........ r17768 | jglick | 2009-05-05 13:19:49 -0700 (Tue, 05 May 2009) | 2 lines Two unsuccessful attempts at form validation. ........ r17770 | jglick | 2009-05-05 13:48:37 -0700 (Tue, 05 May 2009) | 1 line Better class names. ........ r17771 | kohsuke | 2009-05-05 14:12:21 -0700 (Tue, 05 May 2009) | 5 lines brought the form validation check back. The trick is to use the 'value' parameter. In the end we'd expect this check to go away anyway, as we change input field to drop-down list, but in the mean time, this is why it didn't work. Maybe we probably need more static code checkers? Like FindBugs rules? ........ r17901 | kohsuke | 2009-05-09 19:15:40 -0700 (Sat, 09 May 2009) | 1 line having two toolHome is odd. ........ r17906 | kohsuke | 2009-05-10 11:09:13 -0700 (Sun, 10 May 2009) | 1 line adding the generalization of UpdateCenter, but for compatibility reasons, we are leaving UpdateCenter as-is. ........ r17911 | kohsuke | 2009-05-10 17:02:53 -0700 (Sun, 10 May 2009) | 1 line integrated json-lib with a bit of bug fix ........ r17912 | kohsuke | 2009-05-10 17:13:05 -0700 (Sun, 10 May 2009) | 1 line JDK list is now fetched from hudson.dev.java.net ........ r17958 | kohsuke | 2009-05-11 13:44:25 -0700 (Mon, 11 May 2009) | 48 lines Handle AbortException better to avoid error like this: [INFO] ------------------------------------------------------------------------ [ERROR] BUILD ERROR [INFO] ------------------------------------------------------------------------ [INFO] Failed to delete directory: C:\files\hudson\workspace\hudson\hudson\main\remoting\target. Reason: Unable to delete file C:\files\hudson\workspace\hudson\hudson\main\remoting\target\remoting-1.304-SNAPSHOT.jar [INFO] ------------------------------------------------------------------------ [INFO] For more information, run Maven with the -e switch [INFO] ------------------------------------------------------------------------ [INFO] Total time: 31 seconds [INFO] Finished at: Sun May 10 18:15:33 PDT 2009 [INFO] Final Memory: 25M/48M [INFO] ------------------------------------------------------------------------ Recording fingerprints Archiving artifacts Recording test results ERROR: Failed to archive JUnit reports hudson.util.IOException2: remote file operation failed at hudson.FilePath.act(FilePath.java:596) at hudson.tasks.junit.JUnitResultArchiver.perform(JUnitResultArchiver.java:82) at hudson.model.AbstractBuild$AbstractRunner.performAllBuildStep(AbstractBuild.java:372) at hudson.model.AbstractBuild$AbstractRunner.performAllBuildStep(AbstractBuild.java:360) at hudson.model.Build$RunnerImpl.post2(Build.java:183) at hudson.model.AbstractBuild$AbstractRunner.post(AbstractBuild.java:345) at hudson.model.Run.run(Run.java:943) at hudson.model.Build.run(Build.java:112) at hudson.model.ResourceController.execute(ResourceController.java:93) at hudson.model.Executor.run(Executor.java:119) Caused by: hudson.AbortException: Test reports were found but none of them are new. Did tests run? For example, \files\hudson\workspace\hudson\hudson\main\core\target\surefire-reports\TEST-hudson.BulkChangeTest.xml is 2 days 23 hr old at hudson.tasks.junit.TestResult.parse(TestResult.java:134) at hudson.tasks.junit.TestResult.<init>(TestResult.java:95) at hudson.tasks.junit.JUnitResultArchiver$1.invoke(JUnitResultArchiver.java:95) at hudson.tasks.junit.JUnitResultArchiver$1.invoke(JUnitResultArchiver.java:82) at hudson.FilePath$FileCallableWrapper.call(FilePath.java:1583) at hudson.remoting.UserRequest.perform(UserRequest.java:92) at hudson.remoting.UserRequest.perform(UserRequest.java:46) at hudson.remoting.Request$2.run(Request.java:236) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) at java.util.concurrent.FutureTask.run(FutureTask.java:138) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) at java.lang.Thread.run(Thread.java:619) ........ r17961 | kohsuke | 2009-05-11 15:16:39 -0700 (Mon, 11 May 2009) | 1 line adding Windows JDK silent installation ........ r17962 | kohsuke | 2009-05-11 16:08:13 -0700 (Mon, 11 May 2009) | 1 line Fixing JDK offline installatino for Windows ........ r17970 | kohsuke | 2009-05-11 19:37:59 -0700 (Mon, 11 May 2009) | 1 line Fixing a problem that prevents the usage of this tag in <repeatable> block, which reinserts the same fragment over and over. So statically assigning IDs won't work ........ r17971 | kohsuke | 2009-05-11 22:17:09 -0700 (Mon, 11 May 2009) | 1 line continuing to remove static ID generation, which breaks the tag when used inside <repetable> tag. ........ r17972 | kohsuke | 2009-05-11 22:19:11 -0700 (Mon, 11 May 2009) | 1 line I don't know when this started, but even in the hudson-dev:run mode, the versionis no longer '?', so we need a different way to force reload ........ r17973 | kohsuke | 2009-05-11 22:26:34 -0700 (Mon, 11 May 2009) | 1 line adjusted the text a bit since multiple "add" and "delete"s were rather confusing ........ r17974 | kohsuke | 2009-05-11 22:31:58 -0700 (Mon, 11 May 2009) | 1 line added help screen ........ r17975 | kohsuke | 2009-05-11 22:41:39 -0700 (Mon, 11 May 2009) | 1 line form validation now works against the checkbox, too ........ r17976 | kohsuke | 2009-05-11 22:43:00 -0700 (Mon, 11 May 2009) | 1 line with auto installation, we expect users to specify a directory that doesn't exist yet, so don't report it as an error ........ r17977 | kohsuke | 2009-05-11 22:43:24 -0700 (Mon, 11 May 2009) | 1 line improving the text ........ git-svn-id: https://hudson.dev.java.net/svn/hudson/trunk/hudson/main@17985 71c3de6d-444a-0410-be80-ed276b4c234a
2009-05-12 21:59:10 +08:00
if(isInsideRemovable(e)) return;
// components for the add button
var menu = document.createElement("SELECT");
var btn = findElementsBySelector(e,"INPUT.hetero-list-add")[0];
YAHOO.util.Dom.insertAfter(menu,btn);
var prototypes = e.lastChild;
while(!Element.hasClassName(prototypes,"prototypes"))
prototypes = prototypes.previousSibling;
var insertionPoint = prototypes.previousSibling; // this is where the new item is inserted.
// extract templates
var templates = []; var i=0;
for(var n=prototypes.firstChild;n!=null;n=n.nextSibling,i++) {
var name = n.getAttribute("name");
var tooltip = n.getAttribute("tooltip");
menu.options[i] = new Option(n.getAttribute("title"),""+i);
templates.push({html:n.innerHTML, name:name, tooltip:tooltip});
}
Element.remove(prototypes);
// D&D support
function prepareDD(e) {
var dd = new DragDrop(e);
var h = e;
// locate a handle
while(!Element.hasClassName(h,"dd-handle"))
h = h.firstChild;
dd.setHandleElId(h);
}
var withDragDrop = Element.hasClassName(e,"with-drag-drop");
if(withDragDrop) {
for(e=e.firstChild; e!=null; e=e.nextSibling) {
if(Element.hasClassName(e,"repeated-chunk"))
prepareDD(e);
}
}
var menuButton = new YAHOO.widget.Button(btn, { type: "menu", menu: menu });
menuButton.getMenu().clickEvent.subscribe(function(type,args,value) {
var t = templates[parseInt(args[1].value)]; // where this args[1] comes is a real mystery
var nc = document.createElement("div");
nc.className = "repeated-chunk";
nc.setAttribute("name",t.name);
nc.innerHTML = t.html;
insertionPoint.parentNode.insertBefore(nc, insertionPoint);
if(withDragDrop) prepareDD(nc);
Behaviour.applySubtree(nc);
});
menuButton.getMenu().renderEvent.subscribe(function(type,args,value) {
// hook up tooltip for menu items
var items = menuButton.getMenu().getItems();
for(i=0; i<items.length; i++) {
var t = templates[i].tooltip;
if(t!=null)
applyTooltip(items[i].element,t);
}
});
},
"DIV.repeated-container" : function(e) {
Merged revisions 17324-17325,17428,17430,17473-17475,17481-17482,17555-17563,17571,17593-17595,17619-17620,17637-17644,17656-17657,17663-17665,17667-17670,17730,17753,17755-17758,17763-17768,17770-17771,17901,17906,17911-17912,17958,17961-17962,17970-17977 via svnmerge from https://www.dev.java.net/svn/hudson/branches/tool-autoinstallation ........ r17324 | jglick | 2009-04-20 18:24:32 -0700 (Mon, 20 Apr 2009) | 2 lines Defensive cloning and Javadoc corrections. (Though it seems no one is using the default impls of these methods yet anyway.) ........ r17325 | jglick | 2009-04-20 18:29:06 -0700 (Mon, 20 Apr 2009) | 1 line Deprecation of delegate method is intentional. ........ r17428 | jglick | 2009-04-23 08:07:14 -0700 (Thu, 23 Apr 2009) | 1 line Noting ToolLocationTranslator more prominently. ........ r17430 | jglick | 2009-04-23 09:16:40 -0700 (Thu, 23 Apr 2009) | 1 line Unused imports. ........ r17473 | jglick | 2009-04-23 19:21:11 -0700 (Thu, 23 Apr 2009) | 1 line Allow Plugin.configure to see the StaplerRequest, needed for some kinds of calls. ........ r17474 | jglick | 2009-04-23 19:25:54 -0700 (Thu, 23 Apr 2009) | 3 lines Initial sketch of plugin to manage tool installations across slaves. (Should really be under ../plugins/ but that was not branched, so putting here for the moment.) ........ r17475 | jglick | 2009-04-23 20:29:36 -0700 (Thu, 23 Apr 2009) | 1 line Typo in Javadoc. ........ r17481 | jglick | 2009-04-23 22:46:26 -0700 (Thu, 23 Apr 2009) | 1 line Unzip of an unbuffered stream is painfully slow. ........ r17482 | jglick | 2009-04-23 22:48:01 -0700 (Thu, 23 Apr 2009) | 1 line ZIP-based tool installer now functional. ........ r17555 | jglick | 2009-04-27 17:50:38 -0700 (Mon, 27 Apr 2009) | 1 line Build against newest trunk. ........ r17556 | jglick | 2009-04-27 18:38:28 -0700 (Mon, 27 Apr 2009) | 1 line Adding help. ........ r17557 | jglick | 2009-04-27 18:57:46 -0700 (Mon, 27 Apr 2009) | 1 line Moving toolName & label config GUI into generic files. ........ r17558 | jglick | 2009-04-27 19:37:30 -0700 (Mon, 27 Apr 2009) | 1 line Typo. ........ r17559 | jglick | 2009-04-27 20:07:47 -0700 (Mon, 27 Apr 2009) | 1 line Second tool installer type based on a freeform command. ........ r17560 | jglick | 2009-04-27 20:24:36 -0700 (Mon, 27 Apr 2009) | 1 line installIfNecessaryFrom will now just return false in case the target dir exists but the URL cannot be opened. ........ r17561 | jglick | 2009-04-27 20:25:22 -0700 (Mon, 27 Apr 2009) | 2 lines chmod only if something was actually installed. Use a+x, not o+x. ........ r17562 | jglick | 2009-04-27 20:26:46 -0700 (Mon, 27 Apr 2009) | 1 line Comment only. ........ r17563 | jglick | 2009-04-27 20:41:12 -0700 (Mon, 27 Apr 2009) | 1 line I18N. ........ r17571 | jglick | 2009-04-28 08:15:31 -0700 (Tue, 28 Apr 2009) | 2 lines Wiki link. ........ r17593 | jglick | 2009-04-28 15:38:33 -0700 (Tue, 28 Apr 2009) | 1 line Turn off echo mode, it's just noise. ........ r17594 | jglick | 2009-04-28 15:39:29 -0700 (Tue, 28 Apr 2009) | 2 lines Synchronizing access to installers for a given node/tool combo. Sending log messages to Hudson log in real time. ........ r17595 | jglick | 2009-04-28 15:46:29 -0700 (Tue, 28 Apr 2009) | 1 line Copyrights. ........ r17619 | jglick | 2009-04-29 06:25:23 -0700 (Wed, 29 Apr 2009) | 1 line Improved Javadoc. ........ r17620 | jglick | 2009-04-29 06:51:11 -0700 (Wed, 29 Apr 2009) | 1 line Demonstraing how to use DLJ to mechanically install official JDK releases on supported operating systems. ........ r17637 | kohsuke | 2009-04-30 16:15:24 -0700 (Thu, 30 Apr 2009) | 1 line fixed what appears to be a C&P mistake ........ r17638 | kohsuke | 2009-04-30 16:16:21 -0700 (Thu, 30 Apr 2009) | 1 line show YUI logger if YUI debugging mode is set. ........ r17639 | kohsuke | 2009-04-30 16:52:28 -0700 (Thu, 30 Apr 2009) | 7 lines Fixed a UI script problem when <hetero-list> nests inside <repeatable>. The cause of the problem was that the behavior for inner <hetero-list> kicks in first, altering HTML (by removing "prototypes"), before behavior for outer <repetable> kicks in and removes the master copy from DOM tree. So <repeatable> ends up computing a master copy after some elements are removed, and hence when we try to reinsert them later by clicking "Add", it'll get incorrect copy, and re-execution of the <hetero-list> behavior bombs out. I fixed this by skipping those HTML-altering behaviors if they show up in the part of DOM tree that's supposed to be snapshotted and removed. ........ r17640 | kohsuke | 2009-04-30 16:57:58 -0700 (Thu, 30 Apr 2009) | 7 lines Added ToolProperty to ToolInstallation (which acts like NodeProperty to Node --- basically decorates the base object with additional properties.) The original motivation is to implement ToolInstaller this way, if Jesse is OK. But decorating tools seem to have some other interesting use, such as a plugin for configuring $M2_HOME/conf/settings.xml, or a plugin to insert unlimited cryptography extension to JDK, or a plugin to add a few more jars into $ANT_HOME/lib. For this to work, ToolInstallations that want properties needs to be modified to use a new constructor. For a starter, I modified the JDK class to do this. I also took the opportunity to modernize JDK/config.jelly. ........ r17641 | kohsuke | 2009-04-30 17:02:04 -0700 (Thu, 30 Apr 2009) | 1 line this appears to be a left-over from early days when we didn't have a means to do form validation ........ r17642 | kohsuke | 2009-04-30 17:02:35 -0700 (Thu, 30 Apr 2009) | 1 line we don't need no.such.JDK but we need name. rebranching ........ r17643 | kohsuke | 2009-04-30 17:03:22 -0700 (Thu, 30 Apr 2009) | 1 line rebranched from Hudson's configure.properties ........ r17644 | kohsuke | 2009-04-30 17:05:31 -0700 (Thu, 30 Apr 2009) | 1 line removed unnecessary translations ........ r17656 | kohsuke | 2009-05-01 11:27:36 -0700 (Fri, 01 May 2009) | 1 line Less hack for improved type safety. Asking people to write more code is not necessarily bad as long as what they need to do is obvious to them. ........ r17657 | kohsuke | 2009-05-01 12:07:20 -0700 (Fri, 01 May 2009) | 5 lines The toolautoinst part of the change that corresponds to rev.17640. ToolInstallers are now hooked under ToolInstallation through InstallSourceProperty as a ToolProperty. This allows the relevant UIs to be shown in one place. Still pending Jesse's feedback. Making it a single commit to simplify a revert if necessary ........ r17663 | kohsuke | 2009-05-01 13:23:51 -0700 (Fri, 01 May 2009) | 1 line doc improvement ........ r17664 | kohsuke | 2009-05-01 13:24:10 -0700 (Fri, 01 May 2009) | 1 line needs this to allow Stapler to databind hetero-list automatically ........ r17665 | jglick | 2009-05-01 13:31:27 -0700 (Fri, 01 May 2009) | 1 line Warnings. ........ r17667 | kohsuke | 2009-05-01 14:20:53 -0700 (Fri, 01 May 2009) | 1 line added a method to do chmod ........ r17668 | kohsuke | 2009-05-01 14:30:35 -0700 (Fri, 01 May 2009) | 1 line prefer JDK6 version to avoid unnecessary JNA loading ........ r17669 | kohsuke | 2009-05-01 14:33:09 -0700 (Fri, 01 May 2009) | 1 line no, I must have confused this. ........ r17670 | kohsuke | 2009-05-01 15:57:11 -0700 (Fri, 01 May 2009) | 2 lines - Automated JDK installer and its test. - Minor update to the signature of ToolInstaller for supplying the expected default location. ........ r17730 | kohsuke | 2009-05-04 11:27:34 -0700 (Mon, 04 May 2009) | 1 line avoid NPE as reported in HUDSON-3608 ........ r17753 | jglick | 2009-05-04 19:34:08 -0700 (Mon, 04 May 2009) | 2 lines Moved toolautoinst functionality into core. ........ r17755 | jglick | 2009-05-04 20:28:34 -0700 (Mon, 04 May 2009) | 8 lines Added TaskListener parameter and IOException and InterruptedException to several methods: Run.getEnvironment NodeSpecific.forNode ToolLocationTranslator.getToolHome ToolLocationNodeProperty.getToolHome ToolInstallation.translateFor ProcessCache.Factory.getMavenInstallation ProcessCache.Factory.getJava ........ r17756 | jglick | 2009-05-04 20:36:56 -0700 (Mon, 04 May 2009) | 1 line expectedLocation was never strictly necessary, and will soon no longer be used even by JDKInstaller. ........ r17757 | jglick | 2009-05-04 20:40:41 -0700 (Mon, 04 May 2009) | 1 line Not sure yet what @since should be. ........ r17758 | jglick | 2009-05-04 20:41:51 -0700 (Mon, 04 May 2009) | 1 line getDefaultInstallers method added. Not yet in use. ........ r17763 | kohsuke | 2009-05-05 10:50:36 -0700 (Tue, 05 May 2009) | 1 line deprecated redundant getJavaHome method ........ r17764 | kohsuke | 2009-05-05 12:10:45 -0700 (Tue, 05 May 2009) | 1 line added general-purpose property defaulting mechanism, and added default tool installer for JDK ........ r17765 | jglick | 2009-05-05 12:35:56 -0700 (Tue, 05 May 2009) | 1 line capitalize("") -> "" ........ r17766 | jglick | 2009-05-05 12:49:52 -0700 (Tue, 05 May 2009) | 1 line Missing @since. ........ r17767 | jglick | 2009-05-05 13:01:41 -0700 (Tue, 05 May 2009) | 1 line Unchecked warning. ........ r17768 | jglick | 2009-05-05 13:19:49 -0700 (Tue, 05 May 2009) | 2 lines Two unsuccessful attempts at form validation. ........ r17770 | jglick | 2009-05-05 13:48:37 -0700 (Tue, 05 May 2009) | 1 line Better class names. ........ r17771 | kohsuke | 2009-05-05 14:12:21 -0700 (Tue, 05 May 2009) | 5 lines brought the form validation check back. The trick is to use the 'value' parameter. In the end we'd expect this check to go away anyway, as we change input field to drop-down list, but in the mean time, this is why it didn't work. Maybe we probably need more static code checkers? Like FindBugs rules? ........ r17901 | kohsuke | 2009-05-09 19:15:40 -0700 (Sat, 09 May 2009) | 1 line having two toolHome is odd. ........ r17906 | kohsuke | 2009-05-10 11:09:13 -0700 (Sun, 10 May 2009) | 1 line adding the generalization of UpdateCenter, but for compatibility reasons, we are leaving UpdateCenter as-is. ........ r17911 | kohsuke | 2009-05-10 17:02:53 -0700 (Sun, 10 May 2009) | 1 line integrated json-lib with a bit of bug fix ........ r17912 | kohsuke | 2009-05-10 17:13:05 -0700 (Sun, 10 May 2009) | 1 line JDK list is now fetched from hudson.dev.java.net ........ r17958 | kohsuke | 2009-05-11 13:44:25 -0700 (Mon, 11 May 2009) | 48 lines Handle AbortException better to avoid error like this: [INFO] ------------------------------------------------------------------------ [ERROR] BUILD ERROR [INFO] ------------------------------------------------------------------------ [INFO] Failed to delete directory: C:\files\hudson\workspace\hudson\hudson\main\remoting\target. Reason: Unable to delete file C:\files\hudson\workspace\hudson\hudson\main\remoting\target\remoting-1.304-SNAPSHOT.jar [INFO] ------------------------------------------------------------------------ [INFO] For more information, run Maven with the -e switch [INFO] ------------------------------------------------------------------------ [INFO] Total time: 31 seconds [INFO] Finished at: Sun May 10 18:15:33 PDT 2009 [INFO] Final Memory: 25M/48M [INFO] ------------------------------------------------------------------------ Recording fingerprints Archiving artifacts Recording test results ERROR: Failed to archive JUnit reports hudson.util.IOException2: remote file operation failed at hudson.FilePath.act(FilePath.java:596) at hudson.tasks.junit.JUnitResultArchiver.perform(JUnitResultArchiver.java:82) at hudson.model.AbstractBuild$AbstractRunner.performAllBuildStep(AbstractBuild.java:372) at hudson.model.AbstractBuild$AbstractRunner.performAllBuildStep(AbstractBuild.java:360) at hudson.model.Build$RunnerImpl.post2(Build.java:183) at hudson.model.AbstractBuild$AbstractRunner.post(AbstractBuild.java:345) at hudson.model.Run.run(Run.java:943) at hudson.model.Build.run(Build.java:112) at hudson.model.ResourceController.execute(ResourceController.java:93) at hudson.model.Executor.run(Executor.java:119) Caused by: hudson.AbortException: Test reports were found but none of them are new. Did tests run? For example, \files\hudson\workspace\hudson\hudson\main\core\target\surefire-reports\TEST-hudson.BulkChangeTest.xml is 2 days 23 hr old at hudson.tasks.junit.TestResult.parse(TestResult.java:134) at hudson.tasks.junit.TestResult.<init>(TestResult.java:95) at hudson.tasks.junit.JUnitResultArchiver$1.invoke(JUnitResultArchiver.java:95) at hudson.tasks.junit.JUnitResultArchiver$1.invoke(JUnitResultArchiver.java:82) at hudson.FilePath$FileCallableWrapper.call(FilePath.java:1583) at hudson.remoting.UserRequest.perform(UserRequest.java:92) at hudson.remoting.UserRequest.perform(UserRequest.java:46) at hudson.remoting.Request$2.run(Request.java:236) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) at java.util.concurrent.FutureTask.run(FutureTask.java:138) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) at java.lang.Thread.run(Thread.java:619) ........ r17961 | kohsuke | 2009-05-11 15:16:39 -0700 (Mon, 11 May 2009) | 1 line adding Windows JDK silent installation ........ r17962 | kohsuke | 2009-05-11 16:08:13 -0700 (Mon, 11 May 2009) | 1 line Fixing JDK offline installatino for Windows ........ r17970 | kohsuke | 2009-05-11 19:37:59 -0700 (Mon, 11 May 2009) | 1 line Fixing a problem that prevents the usage of this tag in <repeatable> block, which reinserts the same fragment over and over. So statically assigning IDs won't work ........ r17971 | kohsuke | 2009-05-11 22:17:09 -0700 (Mon, 11 May 2009) | 1 line continuing to remove static ID generation, which breaks the tag when used inside <repetable> tag. ........ r17972 | kohsuke | 2009-05-11 22:19:11 -0700 (Mon, 11 May 2009) | 1 line I don't know when this started, but even in the hudson-dev:run mode, the versionis no longer '?', so we need a different way to force reload ........ r17973 | kohsuke | 2009-05-11 22:26:34 -0700 (Mon, 11 May 2009) | 1 line adjusted the text a bit since multiple "add" and "delete"s were rather confusing ........ r17974 | kohsuke | 2009-05-11 22:31:58 -0700 (Mon, 11 May 2009) | 1 line added help screen ........ r17975 | kohsuke | 2009-05-11 22:41:39 -0700 (Mon, 11 May 2009) | 1 line form validation now works against the checkbox, too ........ r17976 | kohsuke | 2009-05-11 22:43:00 -0700 (Mon, 11 May 2009) | 1 line with auto installation, we expect users to specify a directory that doesn't exist yet, so don't report it as an error ........ r17977 | kohsuke | 2009-05-11 22:43:24 -0700 (Mon, 11 May 2009) | 1 line improving the text ........ git-svn-id: https://hudson.dev.java.net/svn/hudson/trunk/hudson/main@17985 71c3de6d-444a-0410-be80-ed276b4c234a
2009-05-12 21:59:10 +08:00
if(isInsideRemovable(e)) return;
// compute the insertion point
var ip = e.lastChild;
while (!Element.hasClassName(ip, "repeatable-insertion-point"))
ip = ip.previousSibling;
// set up the logic
object(repeatableSupport).init(e, e.firstChild, ip);
},
"TABLE.sortable" : function(e) {// sortable table
ts_makeSortable(e);
},
"TABLE.progress-bar" : function(e) {// sortable table
e.onclick = function() {
var href = this.getAttribute("href");
if(href!=null) window.location = href;
}
e = null; // avoid memory leak
},
"INPUT.advancedButton" : function(e) {
makeButton(e,function(e) {
var link = e.target;
while(!Element.hasClassName(link,"advancedLink"))
link = link.parentNode;
link.style.display = "none"; // hide the button
var container = link.nextSibling.firstChild; // TABLE -> TBODY
var tr = link;
while (tr.tagName != "TR")
tr = tr.parentNode;
// move the contents of the advanced portion into the main table
var nameRef = tr.getAttribute("nameref");
while (container.lastChild != null) {
var row = container.lastChild;
if(nameRef!=null)
row.setAttribute("nameref",nameRef);
tr.parentNode.insertBefore(row, tr.nextSibling);
}
});
e = null; // avoid memory leak
},
"INPUT.expandButton" : function(e) {
makeButton(e,function(e) {
var link = e.target;
while(!Element.hasClassName(link,"advancedLink"))
link = link.parentNode;
link.style.display = "none";
link.nextSibling.style.display="block";
});
e = null; // avoid memory leak
},
// scripting for having default value in the input field
"INPUT.has-default-text" : function(e) {
var defaultValue = e.value;
Element.addClassName(e, "defaulted");
e.onfocus = function() {
if (this.value == defaultValue) {
this.value = "";
Element.removeClassName(this, "defaulted");
}
}
e.onblur = function() {
if (this.value == "") {
this.value = defaultValue;
Element.addClassName(this, "defaulted");
}
}
e = null; // avoid memory leak
},
// <label> that doesn't use ID, so that it can be copied in <repeatable>
"LABEL.attach-previous" : function(e) {
e.onclick = function() {
var e = this;
while(e.tagName!="INPUT")
e=e.previousSibling;
e.click();
}
e = null;
},
// form fields that are validated via AJAX call to the server
// elements with this class should have two attributes 'checkUrl' that evaluates to the server URL.
"INPUT.validated" : registerValidator,
"SELECT.validated" : registerValidator,
"TEXTAREA.validated" : registerValidator,
// validate form values to be a number
"INPUT.number" : function(e) {
e.targetElement = findFollowingTR(e, "validation-error-area").firstChild.nextSibling;
e.onchange = function() {
if (this.value.match(/^(\d+|)$/)) {
this.targetElement.innerHTML = "";
} else {
this.targetElement.innerHTML = "<div class=error>Not a number</div>";
}
}
e = null; // avoid memory leak
},
"A.help-button" : function(e) {
e.onclick = function() {
var tr = findFollowingTR(this, "help-area");
var div = tr.firstChild.nextSibling.firstChild;
if (div.style.display != "block") {
div.style.display = "block";
// make it visible
new Ajax.Request(this.getAttribute("helpURL"), {
method : 'get',
onComplete : function(x) {
div.innerHTML = x.responseText;
}
});
} else {
div.style.display = "none";
}
return false;
}
e = null; // avoid memory leak
},
// deferred client-side clickable map.
// this is useful where the generation of <map> element is time consuming
"IMG[lazymap]" : function(e) {
new Ajax.Request(
e.getAttribute("lazymap"),
{
method : 'get',
onSuccess : function(x) {
var div = document.createElement("div");
document.body.appendChild(div);
div.innerHTML = x.responseText;
var id = "map" + (iota++);
div.firstChild.setAttribute("name", id);
e.setAttribute("usemap", "#" + id);
}
});
},
// button to add a new repeatable block
"INPUT.repeatable-add" : function(e) {
makeButton(e,function(e) {
repeatableSupport.onAdd(e.target);
});
e = null; // avoid memory leak
},
"INPUT.repeatable-delete" : function(e) {
makeButton(e,function(e) {
repeatableSupport.onDelete(e.target);
});
e = null; // avoid memory leak
},
// resizable text area
"TEXTAREA" : function(textarea) {
if(Element.hasClassName(textarea,"rich-editor")) {
// rich HTML editor
try {
var editor = new YAHOO.widget.Editor(textarea, {
dompath: true,
animate: true,
handleSubmit: true
});
// probably due to the timing issue, we need to let the editor know
// that DOM is ready
editor.DOMReady=true;
editor.fireQueue();
editor.render();
} catch(e) {
alert(e);
}
return;
}
var handle = textarea.nextSibling;
if(handle==null || handle.className!="textarea-handle") return;
var Event = YAHOO.util.Event;
handle.onmousedown = function(ev) {
ev = Event.getEvent(ev);
var offset = textarea.offsetHeight-Event.getPageY(ev);
textarea.style.opacity = 0.5;
document.onmousemove = function(ev) {
ev = Event.getEvent(ev);
function max(a,b) { if(a<b) return b; else return a; }
textarea.style.height = max(32, offset + Event.getPageY(ev)) + 'px';
return false;
};
document.onmouseup = function() {
document.onmousemove = null;
document.onmouseup = null;
textarea.style.opacity = 1;
}
};
handle.ondblclick = function() {
textarea.style.height = "";
textarea.rows = textarea.value.split("\n").length;
}
},
// structured form submission
"FORM" : function(form) {
if(Element.hasClassName("no-json"))
return;
// add the hidden 'json' input field, which receives the form structure in JSON
var div = document.createElement("div");
div.innerHTML = "<input type=hidden name=json value=init>";
form.appendChild(div);
form.onsubmit = function() { buildFormTree(this) };
form = null; // memory leak prevention
},
// hook up tooltip.
// add nodismiss="" if you'd like to display the tooltip forever as long as the mouse is on the element.
"[tooltip]" : function(e) {
applyTooltip(e,e.getAttribute("tooltip"));
},
"INPUT.submit-button" : function(e) {
makeButton(e);
},
"INPUT.yui-button" : function(e) {
makeButton(e);
},
Merged revisions 17324-17325,17428,17430,17473-17475,17481-17482,17555-17563,17571,17593-17595,17619-17620,17637-17644,17656-17657,17663-17665,17667-17670,17730,17753,17755-17758,17763-17768,17770-17771,17901,17906,17911-17912,17958,17961-17962,17970-17977 via svnmerge from https://www.dev.java.net/svn/hudson/branches/tool-autoinstallation ........ r17324 | jglick | 2009-04-20 18:24:32 -0700 (Mon, 20 Apr 2009) | 2 lines Defensive cloning and Javadoc corrections. (Though it seems no one is using the default impls of these methods yet anyway.) ........ r17325 | jglick | 2009-04-20 18:29:06 -0700 (Mon, 20 Apr 2009) | 1 line Deprecation of delegate method is intentional. ........ r17428 | jglick | 2009-04-23 08:07:14 -0700 (Thu, 23 Apr 2009) | 1 line Noting ToolLocationTranslator more prominently. ........ r17430 | jglick | 2009-04-23 09:16:40 -0700 (Thu, 23 Apr 2009) | 1 line Unused imports. ........ r17473 | jglick | 2009-04-23 19:21:11 -0700 (Thu, 23 Apr 2009) | 1 line Allow Plugin.configure to see the StaplerRequest, needed for some kinds of calls. ........ r17474 | jglick | 2009-04-23 19:25:54 -0700 (Thu, 23 Apr 2009) | 3 lines Initial sketch of plugin to manage tool installations across slaves. (Should really be under ../plugins/ but that was not branched, so putting here for the moment.) ........ r17475 | jglick | 2009-04-23 20:29:36 -0700 (Thu, 23 Apr 2009) | 1 line Typo in Javadoc. ........ r17481 | jglick | 2009-04-23 22:46:26 -0700 (Thu, 23 Apr 2009) | 1 line Unzip of an unbuffered stream is painfully slow. ........ r17482 | jglick | 2009-04-23 22:48:01 -0700 (Thu, 23 Apr 2009) | 1 line ZIP-based tool installer now functional. ........ r17555 | jglick | 2009-04-27 17:50:38 -0700 (Mon, 27 Apr 2009) | 1 line Build against newest trunk. ........ r17556 | jglick | 2009-04-27 18:38:28 -0700 (Mon, 27 Apr 2009) | 1 line Adding help. ........ r17557 | jglick | 2009-04-27 18:57:46 -0700 (Mon, 27 Apr 2009) | 1 line Moving toolName & label config GUI into generic files. ........ r17558 | jglick | 2009-04-27 19:37:30 -0700 (Mon, 27 Apr 2009) | 1 line Typo. ........ r17559 | jglick | 2009-04-27 20:07:47 -0700 (Mon, 27 Apr 2009) | 1 line Second tool installer type based on a freeform command. ........ r17560 | jglick | 2009-04-27 20:24:36 -0700 (Mon, 27 Apr 2009) | 1 line installIfNecessaryFrom will now just return false in case the target dir exists but the URL cannot be opened. ........ r17561 | jglick | 2009-04-27 20:25:22 -0700 (Mon, 27 Apr 2009) | 2 lines chmod only if something was actually installed. Use a+x, not o+x. ........ r17562 | jglick | 2009-04-27 20:26:46 -0700 (Mon, 27 Apr 2009) | 1 line Comment only. ........ r17563 | jglick | 2009-04-27 20:41:12 -0700 (Mon, 27 Apr 2009) | 1 line I18N. ........ r17571 | jglick | 2009-04-28 08:15:31 -0700 (Tue, 28 Apr 2009) | 2 lines Wiki link. ........ r17593 | jglick | 2009-04-28 15:38:33 -0700 (Tue, 28 Apr 2009) | 1 line Turn off echo mode, it's just noise. ........ r17594 | jglick | 2009-04-28 15:39:29 -0700 (Tue, 28 Apr 2009) | 2 lines Synchronizing access to installers for a given node/tool combo. Sending log messages to Hudson log in real time. ........ r17595 | jglick | 2009-04-28 15:46:29 -0700 (Tue, 28 Apr 2009) | 1 line Copyrights. ........ r17619 | jglick | 2009-04-29 06:25:23 -0700 (Wed, 29 Apr 2009) | 1 line Improved Javadoc. ........ r17620 | jglick | 2009-04-29 06:51:11 -0700 (Wed, 29 Apr 2009) | 1 line Demonstraing how to use DLJ to mechanically install official JDK releases on supported operating systems. ........ r17637 | kohsuke | 2009-04-30 16:15:24 -0700 (Thu, 30 Apr 2009) | 1 line fixed what appears to be a C&P mistake ........ r17638 | kohsuke | 2009-04-30 16:16:21 -0700 (Thu, 30 Apr 2009) | 1 line show YUI logger if YUI debugging mode is set. ........ r17639 | kohsuke | 2009-04-30 16:52:28 -0700 (Thu, 30 Apr 2009) | 7 lines Fixed a UI script problem when <hetero-list> nests inside <repeatable>. The cause of the problem was that the behavior for inner <hetero-list> kicks in first, altering HTML (by removing "prototypes"), before behavior for outer <repetable> kicks in and removes the master copy from DOM tree. So <repeatable> ends up computing a master copy after some elements are removed, and hence when we try to reinsert them later by clicking "Add", it'll get incorrect copy, and re-execution of the <hetero-list> behavior bombs out. I fixed this by skipping those HTML-altering behaviors if they show up in the part of DOM tree that's supposed to be snapshotted and removed. ........ r17640 | kohsuke | 2009-04-30 16:57:58 -0700 (Thu, 30 Apr 2009) | 7 lines Added ToolProperty to ToolInstallation (which acts like NodeProperty to Node --- basically decorates the base object with additional properties.) The original motivation is to implement ToolInstaller this way, if Jesse is OK. But decorating tools seem to have some other interesting use, such as a plugin for configuring $M2_HOME/conf/settings.xml, or a plugin to insert unlimited cryptography extension to JDK, or a plugin to add a few more jars into $ANT_HOME/lib. For this to work, ToolInstallations that want properties needs to be modified to use a new constructor. For a starter, I modified the JDK class to do this. I also took the opportunity to modernize JDK/config.jelly. ........ r17641 | kohsuke | 2009-04-30 17:02:04 -0700 (Thu, 30 Apr 2009) | 1 line this appears to be a left-over from early days when we didn't have a means to do form validation ........ r17642 | kohsuke | 2009-04-30 17:02:35 -0700 (Thu, 30 Apr 2009) | 1 line we don't need no.such.JDK but we need name. rebranching ........ r17643 | kohsuke | 2009-04-30 17:03:22 -0700 (Thu, 30 Apr 2009) | 1 line rebranched from Hudson's configure.properties ........ r17644 | kohsuke | 2009-04-30 17:05:31 -0700 (Thu, 30 Apr 2009) | 1 line removed unnecessary translations ........ r17656 | kohsuke | 2009-05-01 11:27:36 -0700 (Fri, 01 May 2009) | 1 line Less hack for improved type safety. Asking people to write more code is not necessarily bad as long as what they need to do is obvious to them. ........ r17657 | kohsuke | 2009-05-01 12:07:20 -0700 (Fri, 01 May 2009) | 5 lines The toolautoinst part of the change that corresponds to rev.17640. ToolInstallers are now hooked under ToolInstallation through InstallSourceProperty as a ToolProperty. This allows the relevant UIs to be shown in one place. Still pending Jesse's feedback. Making it a single commit to simplify a revert if necessary ........ r17663 | kohsuke | 2009-05-01 13:23:51 -0700 (Fri, 01 May 2009) | 1 line doc improvement ........ r17664 | kohsuke | 2009-05-01 13:24:10 -0700 (Fri, 01 May 2009) | 1 line needs this to allow Stapler to databind hetero-list automatically ........ r17665 | jglick | 2009-05-01 13:31:27 -0700 (Fri, 01 May 2009) | 1 line Warnings. ........ r17667 | kohsuke | 2009-05-01 14:20:53 -0700 (Fri, 01 May 2009) | 1 line added a method to do chmod ........ r17668 | kohsuke | 2009-05-01 14:30:35 -0700 (Fri, 01 May 2009) | 1 line prefer JDK6 version to avoid unnecessary JNA loading ........ r17669 | kohsuke | 2009-05-01 14:33:09 -0700 (Fri, 01 May 2009) | 1 line no, I must have confused this. ........ r17670 | kohsuke | 2009-05-01 15:57:11 -0700 (Fri, 01 May 2009) | 2 lines - Automated JDK installer and its test. - Minor update to the signature of ToolInstaller for supplying the expected default location. ........ r17730 | kohsuke | 2009-05-04 11:27:34 -0700 (Mon, 04 May 2009) | 1 line avoid NPE as reported in HUDSON-3608 ........ r17753 | jglick | 2009-05-04 19:34:08 -0700 (Mon, 04 May 2009) | 2 lines Moved toolautoinst functionality into core. ........ r17755 | jglick | 2009-05-04 20:28:34 -0700 (Mon, 04 May 2009) | 8 lines Added TaskListener parameter and IOException and InterruptedException to several methods: Run.getEnvironment NodeSpecific.forNode ToolLocationTranslator.getToolHome ToolLocationNodeProperty.getToolHome ToolInstallation.translateFor ProcessCache.Factory.getMavenInstallation ProcessCache.Factory.getJava ........ r17756 | jglick | 2009-05-04 20:36:56 -0700 (Mon, 04 May 2009) | 1 line expectedLocation was never strictly necessary, and will soon no longer be used even by JDKInstaller. ........ r17757 | jglick | 2009-05-04 20:40:41 -0700 (Mon, 04 May 2009) | 1 line Not sure yet what @since should be. ........ r17758 | jglick | 2009-05-04 20:41:51 -0700 (Mon, 04 May 2009) | 1 line getDefaultInstallers method added. Not yet in use. ........ r17763 | kohsuke | 2009-05-05 10:50:36 -0700 (Tue, 05 May 2009) | 1 line deprecated redundant getJavaHome method ........ r17764 | kohsuke | 2009-05-05 12:10:45 -0700 (Tue, 05 May 2009) | 1 line added general-purpose property defaulting mechanism, and added default tool installer for JDK ........ r17765 | jglick | 2009-05-05 12:35:56 -0700 (Tue, 05 May 2009) | 1 line capitalize("") -> "" ........ r17766 | jglick | 2009-05-05 12:49:52 -0700 (Tue, 05 May 2009) | 1 line Missing @since. ........ r17767 | jglick | 2009-05-05 13:01:41 -0700 (Tue, 05 May 2009) | 1 line Unchecked warning. ........ r17768 | jglick | 2009-05-05 13:19:49 -0700 (Tue, 05 May 2009) | 2 lines Two unsuccessful attempts at form validation. ........ r17770 | jglick | 2009-05-05 13:48:37 -0700 (Tue, 05 May 2009) | 1 line Better class names. ........ r17771 | kohsuke | 2009-05-05 14:12:21 -0700 (Tue, 05 May 2009) | 5 lines brought the form validation check back. The trick is to use the 'value' parameter. In the end we'd expect this check to go away anyway, as we change input field to drop-down list, but in the mean time, this is why it didn't work. Maybe we probably need more static code checkers? Like FindBugs rules? ........ r17901 | kohsuke | 2009-05-09 19:15:40 -0700 (Sat, 09 May 2009) | 1 line having two toolHome is odd. ........ r17906 | kohsuke | 2009-05-10 11:09:13 -0700 (Sun, 10 May 2009) | 1 line adding the generalization of UpdateCenter, but for compatibility reasons, we are leaving UpdateCenter as-is. ........ r17911 | kohsuke | 2009-05-10 17:02:53 -0700 (Sun, 10 May 2009) | 1 line integrated json-lib with a bit of bug fix ........ r17912 | kohsuke | 2009-05-10 17:13:05 -0700 (Sun, 10 May 2009) | 1 line JDK list is now fetched from hudson.dev.java.net ........ r17958 | kohsuke | 2009-05-11 13:44:25 -0700 (Mon, 11 May 2009) | 48 lines Handle AbortException better to avoid error like this: [INFO] ------------------------------------------------------------------------ [ERROR] BUILD ERROR [INFO] ------------------------------------------------------------------------ [INFO] Failed to delete directory: C:\files\hudson\workspace\hudson\hudson\main\remoting\target. Reason: Unable to delete file C:\files\hudson\workspace\hudson\hudson\main\remoting\target\remoting-1.304-SNAPSHOT.jar [INFO] ------------------------------------------------------------------------ [INFO] For more information, run Maven with the -e switch [INFO] ------------------------------------------------------------------------ [INFO] Total time: 31 seconds [INFO] Finished at: Sun May 10 18:15:33 PDT 2009 [INFO] Final Memory: 25M/48M [INFO] ------------------------------------------------------------------------ Recording fingerprints Archiving artifacts Recording test results ERROR: Failed to archive JUnit reports hudson.util.IOException2: remote file operation failed at hudson.FilePath.act(FilePath.java:596) at hudson.tasks.junit.JUnitResultArchiver.perform(JUnitResultArchiver.java:82) at hudson.model.AbstractBuild$AbstractRunner.performAllBuildStep(AbstractBuild.java:372) at hudson.model.AbstractBuild$AbstractRunner.performAllBuildStep(AbstractBuild.java:360) at hudson.model.Build$RunnerImpl.post2(Build.java:183) at hudson.model.AbstractBuild$AbstractRunner.post(AbstractBuild.java:345) at hudson.model.Run.run(Run.java:943) at hudson.model.Build.run(Build.java:112) at hudson.model.ResourceController.execute(ResourceController.java:93) at hudson.model.Executor.run(Executor.java:119) Caused by: hudson.AbortException: Test reports were found but none of them are new. Did tests run? For example, \files\hudson\workspace\hudson\hudson\main\core\target\surefire-reports\TEST-hudson.BulkChangeTest.xml is 2 days 23 hr old at hudson.tasks.junit.TestResult.parse(TestResult.java:134) at hudson.tasks.junit.TestResult.<init>(TestResult.java:95) at hudson.tasks.junit.JUnitResultArchiver$1.invoke(JUnitResultArchiver.java:95) at hudson.tasks.junit.JUnitResultArchiver$1.invoke(JUnitResultArchiver.java:82) at hudson.FilePath$FileCallableWrapper.call(FilePath.java:1583) at hudson.remoting.UserRequest.perform(UserRequest.java:92) at hudson.remoting.UserRequest.perform(UserRequest.java:46) at hudson.remoting.Request$2.run(Request.java:236) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) at java.util.concurrent.FutureTask.run(FutureTask.java:138) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) at java.lang.Thread.run(Thread.java:619) ........ r17961 | kohsuke | 2009-05-11 15:16:39 -0700 (Mon, 11 May 2009) | 1 line adding Windows JDK silent installation ........ r17962 | kohsuke | 2009-05-11 16:08:13 -0700 (Mon, 11 May 2009) | 1 line Fixing JDK offline installatino for Windows ........ r17970 | kohsuke | 2009-05-11 19:37:59 -0700 (Mon, 11 May 2009) | 1 line Fixing a problem that prevents the usage of this tag in <repeatable> block, which reinserts the same fragment over and over. So statically assigning IDs won't work ........ r17971 | kohsuke | 2009-05-11 22:17:09 -0700 (Mon, 11 May 2009) | 1 line continuing to remove static ID generation, which breaks the tag when used inside <repetable> tag. ........ r17972 | kohsuke | 2009-05-11 22:19:11 -0700 (Mon, 11 May 2009) | 1 line I don't know when this started, but even in the hudson-dev:run mode, the versionis no longer '?', so we need a different way to force reload ........ r17973 | kohsuke | 2009-05-11 22:26:34 -0700 (Mon, 11 May 2009) | 1 line adjusted the text a bit since multiple "add" and "delete"s were rather confusing ........ r17974 | kohsuke | 2009-05-11 22:31:58 -0700 (Mon, 11 May 2009) | 1 line added help screen ........ r17975 | kohsuke | 2009-05-11 22:41:39 -0700 (Mon, 11 May 2009) | 1 line form validation now works against the checkbox, too ........ r17976 | kohsuke | 2009-05-11 22:43:00 -0700 (Mon, 11 May 2009) | 1 line with auto installation, we expect users to specify a directory that doesn't exist yet, so don't report it as an error ........ r17977 | kohsuke | 2009-05-11 22:43:24 -0700 (Mon, 11 May 2009) | 1 line improving the text ........ git-svn-id: https://hudson.dev.java.net/svn/hudson/trunk/hudson/main@17985 71c3de6d-444a-0410-be80-ed276b4c234a
2009-05-12 21:59:10 +08:00
"TR.optional-block-start": function(e) { // see optionalBlock.jelly
// set start.ref to checkbox in preparation of row-set-end processing
var checkbox = e.firstChild.firstChild;
e.setAttribute("ref", checkbox.id = "cb"+(iota++));
},
"TR.row-set-end": function(e) { // see rowSet.jelly and optionalBlock.jelly
// figure out the corresponding start block
var end = e;
for( var depth=0; ; e=e.previousSibling) {
if(Element.hasClassName(e,"row-set-end")) depth++;
if(Element.hasClassName(e,"row-set-start")) depth--;
if(depth==0) break;
}
var start = e;
var ref = start.getAttribute("ref");
if(ref==null)
start.id = ref = "rowSetStart"+(iota++);
applyNameRef(start,end,ref);
},
"BODY TR.optional-block-start": function(e) { // see optionalBlock.jelly
// this is prefixed by a pointless BODY so that two processing for optional-block-start
// can sandwitch row-set-end
// this requires "TR.row-set-end" to mark rows
var checkbox = e.firstChild.firstChild;
updateOptionalBlock(checkbox,false);
},
// image that shows [+] or [-], with hover effect.
// oncollapsed and onexpanded will be called when the button is triggered.
"IMG.fold-control" : function(e) {
function changeTo(e,img) {
var src = e.src;
e.src = src.substring(0,src.lastIndexOf('/'))+"/"+e.getAttribute("state")+img;
}
e.onmouseover = function() {
changeTo(this,"-hover.png");
};
e.onmouseout = function() {
changeTo(this,".png");
};
e.parentNode.onclick = function(event) {
var e = this.firstChild;
var s = e.getAttribute("state");
if(s=="plus") {
e.setAttribute("state","minus");
if(e.onexpanded) e.onexpanded();
} else {
e.setAttribute("state","plus");
if(e.oncollapsed) e.oncollapsed();
}
changeTo(e,"-hover.png");
YAHOO.util.Event.stopEvent(event);
return false;
};
e = null; // memory leak prevention
}
};
function applyTooltip(e,text) {
// copied from YAHOO.widget.Tooltip.prototype.configContext to efficiently add a new element
// event registration via YAHOO.util.Event.addListener leaks memory, so do it by ourselves here
e.onmouseover = function(ev) {
var delay = this.getAttribute("nodismiss")!=null ? 99999999 : 5000;
tooltip.cfg.setProperty("autodismissdelay",delay);
return tooltip.onContextMouseOver.call(this,YAHOO.util.Event.getEvent(ev),tooltip);
}
e.onmousemove = function(ev) { return tooltip.onContextMouseMove.call(this,YAHOO.util.Event.getEvent(ev),tooltip); }
e.onmouseout = function(ev) { return tooltip.onContextMouseOut .call(this,YAHOO.util.Event.getEvent(ev),tooltip); }
e.title = text;
e = null; // avoid memory leak
}
Behaviour.register(hudsonRules);
function xor(a,b) {
// convert both values to boolean by '!' and then do a!=b
return !a != !b;
}
// used by editableDescription.jelly to replace the description field with a form
function replaceDescription(crumbName,crumb) {
var d = document.getElementById("description");
d.firstChild.nextSibling.innerHTML = "<div class='spinner-right'>loading...</div>";
var params = new Array(1);
params[crumbName] = crumb;
new Ajax.Request(
"./descriptionForm",
{
method : 'post',
parameters : params,
onComplete : function(x) {
d.innerHTML = x.responseText;
Behaviour.applySubtree(d);
d.getElementsByTagName("TEXTAREA")[0].focus();
}
}
);
return false;
}
function applyNameRef(s,e,id) {
$(id).groupingNode = true;
// s contains the node itself
Support for databinding on descriptor list Merging changes made by Kohsuke in nodeproperties branch Revision: 14927 Author: kohsuke Date: 20:44:52, vrijdag 30 januari 2009 Message: added support for form databinding ---- Modified : /branches/nodeproperties/main/core/src/main/resources/lib/form/descriptorList.jelly Revision: 14925 Author: kohsuke Date: 20:41:35, vrijdag 30 januari 2009 Message: handle overlapping nested <rowSet> correctly. ---- Modified : /branches/nodeproperties/main/war/resources/scripts/hudson-behavior.js Revision: 14924 Author: kohsuke Date: 20:33:48, vrijdag 30 januari 2009 Message: added another convenience method. ---- Modified : /branches/nodeproperties/main/core/src/main/java/hudson/util/DescribableList.java Revision: 14918 Author: kohsuke Date: 19:02:44, vrijdag 30 januari 2009 Message: added optional @name to create an JSON object ---- Modified : /branches/nodeproperties/main/core/src/main/resources/lib/form/section.jelly Revision: 14917 Author: kohsuke Date: 19:02:30, vrijdag 30 januari 2009 Message: added documentation and supported graceful no-op. ---- Modified : /branches/nodeproperties/main/core/src/main/resources/lib/form/rowSet.jelly Revision: 14915 Author: kohsuke Date: 18:44:56, vrijdag 30 januari 2009 Message: I hate cursor stealing ---- Modified : /branches/nodeproperties/main/core/src/main/resources/lib/form/descriptorList.jelly Revision: 14914 Author: kohsuke Date: 18:44:04, vrijdag 30 januari 2009 Message: title is not mandatory ---- Modified : /branches/nodeproperties/main/core/src/main/resources/lib/form/descriptorList.jelly git-svn-id: https://hudson.dev.java.net/svn/hudson/trunk/hudson/main@15368 71c3de6d-444a-0410-be80-ed276b4c234a
2009-02-16 07:19:19 +08:00
for(var x=s.nextSibling; x!=e; x=x.nextSibling) {
// to handle nested <f:rowSet> correctly, don't overwrite the existing value
if(x.getAttribute("nameRef")==null)
x.setAttribute("nameRef",id);
}
}
// used by optionalBlock.jelly to update the form status
// @param c checkbox element
function updateOptionalBlock(c,scroll) {
// find the start TR
var s = c;
while(!Element.hasClassName(s, "optional-block-start"))
s = s.parentNode;
var tbl = s.parentNode;
var i = false;
var o = false;
var checked = xor(c.checked,Element.hasClassName(c,"negative"));
var lastRow = null;
for (var j = 0; tbl.rows[j]; j++) {
var n = tbl.rows[j];
if (i && Element.hasClassName(n, "optional-block-end"))
o = true;
if (i && !o) {
if (checked) {
n.style.display = "";
lastRow = n;
} else
n.style.display = "none";
}
if (n==s) {
if (n.getAttribute('hasHelp') == 'true')
j++;
i = true;
}
}
if(checked && scroll) {
var D = YAHOO.util.Dom;
var r = D.getRegion(s);
if(lastRow!=null) r = r.union(D.getRegion(lastRow));
scrollIntoView(r);
}
if (c.name == 'hudson-tools-InstallSourceProperty') {
// Hack to hide tool home when "Install automatically" is checked.
var homeField = findPreviousFormItem(c, 'home');
if (homeField != null && homeField.value == '') {
var tr = findAncestor(homeField, 'TR');
if (tr != null) {
tr.style.display = c.checked ? 'none' : '';
}
}
}
}
//
// Auto-scroll support for progressive log output.
// See http://radio.javaranch.com/pascarello/2006/08/17/1155837038219.html
//
function AutoScroller(scrollContainer) {
// get the height of the viewport.
// See http://www.howtocreate.co.uk/tutorials/javascript/browserwindow
function getViewportHeight() {
if (typeof( window.innerWidth ) == 'number') {
//Non-IE
return window.innerHeight;
} else if (document.documentElement && ( document.documentElement.clientWidth || document.documentElement.clientHeight )) {
//IE 6+ in 'standards compliant mode'
return document.documentElement.clientHeight;
} else if (document.body && ( document.body.clientWidth || document.body.clientHeight )) {
//IE 4 compatible
return document.body.clientHeight;
}
return null;
}
return {
bottomThreshold : 25,
scrollContainer: scrollContainer,
getCurrentHeight : function() {
var scrollDiv = $(this.scrollContainer);
if (scrollDiv.scrollHeight > 0)
return scrollDiv.scrollHeight;
else
if (objDiv.offsetHeight > 0)
return scrollDiv.offsetHeight;
return null; // huh?
},
// return true if we are in the "stick to bottom" mode
isSticking : function() {
var scrollDiv = $(this.scrollContainer);
var currentHeight = this.getCurrentHeight();
// when used with the BODY tag, the height needs to be the viewport height, instead of
// the element height.
//var height = ((scrollDiv.style.pixelHeight) ? scrollDiv.style.pixelHeight : scrollDiv.offsetHeight);
var height = getViewportHeight();
var diff = currentHeight - scrollDiv.scrollTop - height;
// window.alert("currentHeight=" + currentHeight + ",scrollTop=" + scrollDiv.scrollTop + ",height=" + height);
return diff < this.bottomThreshold;
},
scrollToBottom : function() {
var scrollDiv = $(this.scrollContainer);
scrollDiv.scrollTop = this.getCurrentHeight();
}
};
}
// scroll the current window to display the given element or the region.
function scrollIntoView(e) {
function calcDelta(ex1,ex2,vx1,vw) {
var vx2=vx1+vw;
var a;
a = Math.min(vx1-ex1,vx2-ex2);
if(a>0) return -a;
a = Math.min(ex1-vx1,ex2-vx2);
if(a>0) return a;
return 0;
}
var D = YAHOO.util.Dom;
var r;
if(e.tagName!=null) r = D.getRegion(e);
else r = e;
var dx = calcDelta(r.left,r.right, document.body.scrollLeft, D.getViewportWidth());
var dy = calcDelta(r.top, r.bottom,document.body.scrollTop, D.getViewportHeight());
window.scrollBy(dx,dy);
}
// used in expandableTextbox.jelly to change a input field into a text area
function expandTextArea(button,id) {
button.style.display="none";
var field = document.getElementById(id);
var value = field.value.replace(/ +/g,'\n');
var n = field;
while(n.tagName!="TABLE")
n = n.parentNode;
n.parentNode.innerHTML =
"<textarea rows=8 class='setting-input' name='"+field.name+"'>"+value+"</textarea>";
}
// refresh a part of the HTML specified by the given ID,
// by using the contents fetched from the given URL.
function refreshPart(id,url,crumbName,crumb) {
var f = function() {
var params = new Array(1);
params[crumbName] = crumb;
new Ajax.Request(url, {
method: "post",
parameters: params,
onSuccess: function(rsp) {
var hist = $(id);
var p = hist.parentNode;
var next = hist.nextSibling;
p.removeChild(hist);
var div = document.createElement('div');
div.innerHTML = rsp.responseText;
var node = div.firstChild;
p.insertBefore(node, next);
Behaviour.applySubtree(node);
if(isRunAsTest) return;
refreshPart(id,url,crumbName,crumb);
}
});
};
// if run as test, just do it once and do it now to make sure it's working,
// but don't repeat.
if(isRunAsTest) f();
else window.setTimeout(f, 5000);
}
/*
Perform URL encode.
Taken from http://www.cresc.co.jp/tech/java/URLencoding/JavaScript_URLEncoding.htm
*/
function encode(str){
var s, u;
var s0 = ""; // encoded str
for (var i = 0; i < str.length; i++){ // scan the source
s = str.charAt(i);
u = str.charCodeAt(i); // get unicode of the char
if (s == " "){s0 += "+";} // SP should be converted to "+"
else {
if ( u == 0x2a || u == 0x2d || u == 0x2e || u == 0x5f || ((u >= 0x30) && (u <= 0x39)) || ((u >= 0x41) && (u <= 0x5a)) || ((u >= 0x61) && (u <= 0x7a))){ // check for escape
s0 = s0 + s; // don't escape
} else { // escape
if ((u >= 0x0) && (u <= 0x7f)){ // single byte format
s = "0"+u.toString(16);
s0 += "%"+ s.substr(s.length-2);
} else
if (u > 0x1fffff){ // quaternary byte format (extended)
s0 += "%" + (0xF0 + ((u & 0x1c0000) >> 18)).toString(16);
s0 += "%" + (0x80 + ((u & 0x3f000) >> 12)).toString(16);
s0 += "%" + (0x80 + ((u & 0xfc0) >> 6)).toString(16);
s0 += "%" + (0x80 + (u & 0x3f)).toString(16);
} else
if (u > 0x7ff){ // triple byte format
s0 += "%" + (0xe0 + ((u & 0xf000) >> 12)).toString(16);
s0 += "%" + (0x80 + ((u & 0xfc0) >> 6)).toString(16);
s0 += "%" + (0x80 + (u & 0x3f)).toString(16);
} else { // double byte format
s0 += "%" + (0xc0 + ((u & 0x7c0) >> 6)).toString(16);
s0 += "%" + (0x80 + (u & 0x3f)).toString(16);
}
}
}
}
return s0;
}
// when there are multiple form elements of the same name,
// this method returns the input field of the given name that pairs up
// with the specified 'base' input element.
Form.findMatchingInput = function(base, name) {
// find the FORM element that owns us
var f = base;
while (f.tagName != "FORM")
f = f.parentNode;
var bases = Form.getInputs(f, null, base.name);
var targets = Form.getInputs(f, null, name);
for (var i=0; i<bases.length; i++) {
if (bases[i] == base)
return targets[i];
}
return null; // not found
}
// used witih <dropdownList> and <dropdownListBlock> to control visibility
function updateDropDownList(sel) {
for (var i = 0; i < sel.subForms.length; i++) {
var show = sel.selectedIndex == i;
var f = sel.subForms[i];
var td = f.start;
while (true) {
td.style.display = (show ? "" : "none");
if(show)
td.removeAttribute("field-disabled");
else // buildFormData uses this attribute and ignores the contents
td.setAttribute("field-disabled","true");
if (td == f.end) break;
td = td.nextSibling;
}
}
}
// code for supporting repeatable.jelly
var repeatableSupport = {
// set by the inherited instance to the insertion point DIV
insertionPoint: null,
// HTML text of the repeated chunk
blockHTML: null,
// containing <div>.
container: null,
// block name for structured HTML
name : null,
// do the initialization
init : function(container,master,insertionPoint) {
this.container = $(container);
this.container.tag = this;
master = $(master);
this.blockHTML = master.innerHTML;
master.parentNode.removeChild(master);
this.insertionPoint = $(insertionPoint);
this.name = master.getAttribute("name");
this.update();
},
// insert one more block at the insertion position
expand : function() {
// importNode isn't supported in IE.
// nc = document.importNode(node,true);
var nc = document.createElement("div");
nc.className = "repeated-chunk";
nc.setAttribute("name",this.name);
nc.innerHTML = this.blockHTML;
this.insertionPoint.parentNode.insertBefore(nc, this.insertionPoint);
Behaviour.applySubtree(nc);
this.update();
},
// update CSS classes associated with repeated items.
update : function() {
var children = [];
for( var n=this.container.firstChild; n!=null; n=n.nextSibling )
if(Element.hasClassName(n,"repeated-chunk"))
children.push(n);
if(children.length==0) {
// noop
} else
if(children.length==1) {
children[0].className = "repeated-chunk first last only";
} else {
children[0].className = "repeated-chunk first";
for(var i=1; i<children.length-1; i++)
children[i].className = "repeated-chunk middle";
children[children.length-1].className = "repeated-chunk last";
}
},
// these are static methods that don't rely on 'this'
// called when 'delete' button is clicked
onDelete : function(n) {
while (!Element.hasClassName(n,"repeated-chunk"))
n = n.parentNode;
var p = n.parentNode;
p.removeChild(n);
p.tag.update();
},
// called when 'add' button is clicked
onAdd : function(n) {
while(n.tag==null)
n = n.parentNode;
n.tag.expand();
// Hack to hide tool home when a new tool has some installers.
var inputs = n.getElementsByTagName('INPUT');
for (var i = 0; i < inputs.length; i++) {
var input = inputs[i];
if (input.name == 'hudson-tools-InstallSourceProperty') {
updateOptionalBlock(input, false);
}
}
}
};
// Used by radioBlock.jelly to wire up expandable radio block
function addRadioBlock(id) {
// prototype object to be duplicated for each radio button group
var radioBlockSupport = {
buttons : null,
updateButtons : function() {
for( var i=0; i<this.buttons.length; i++ )
this.buttons[i]();
},
// update one block based on the status of the given radio button
updateSingleButton : function(radio, blockStart, blockEnd) {
var tbl = blockStart.parentNode;
var i = false;
var o = false;
var show = radio.checked;
for (var j = 0; tbl.rows[j]; j++) {
var n = tbl.rows[j];
if (n == blockEnd)
o = true;
if (i && !o) {
if (show)
n.style.display = "";
else
n.style.display = "none";
}
if (n == blockStart) {
i = true;
if (n.getAttribute('hasHelp') == 'true')
j++;
}
}
}
};
// when one radio button is clicked, we need to update foldable block for
// other radio buttons with the same name. To do this, group all the
// radio buttons with the same name together and hang it under the form object
var r = document.getElementById('Rb' + id);
var f = r.form;
var radios = f.radios;
if (radios == null)
f.radios = radios = {};
var g = radios[r.name];
if (g == null) {
radios[r.name] = g = object(radioBlockSupport);
g.buttons = [];
}
var s = document.getElementById("rb_s"+id);
var e = document.getElementById("rb_e"+id);
var u = function() {
g.updateSingleButton(r,s,e);
};
applyNameRef(s,e,'Rb'+id);
g.buttons.push(u);
// apply the initial visibility
u();
// install event handlers to update visibility.
// needs to use onclick and onchange for Safari compatibility
r.onclick = r.onchange = function() { g.updateButtons(); };
}
function updateBuildHistory(ajaxUrl,nBuild,crumbName,crumb) {
if(isRunAsTest) return;
$('buildHistory').headers = ["n",nBuild];
function updateBuilds() {
var bh = $('buildHistory');
var params = new Array(1);
params[crumbName] = crumb;
new Ajax.Request(ajaxUrl, {
requestHeaders: bh.headers,
method: "post",
parameters: params,
onSuccess: function(rsp) {
var rows = bh.rows;
//delete rows with transitive data
while (rows.length > 2 && Element.hasClassName(rows[1], "transitive"))
Element.remove(rows[1]);
// insert new rows
var div = document.createElement('div');
div.innerHTML = rsp.responseText;
Behaviour.applySubtree(div);
var pivot = rows[0];
var newRows = div.firstChild.rows;
for (var i = newRows.length - 1; i >= 0; i--) {
pivot.parentNode.insertBefore(newRows[i], pivot.nextSibling);
}
// next update
bh.headers = ["n",rsp.getResponseHeader("n")];
window.setTimeout(updateBuilds, 5000);
}
});
}
window.setTimeout(updateBuilds, 5000);
}
// send async request to the given URL (which will send back serialized ListBoxModel object),
// then use the result to fill the list box.
function updateListBox(listBox,url,crumbName,crumb) {
var params = new Array(1);
params[crumbName] = crumb;
new Ajax.Request(url, {
method: "post",
parameters: params,
onSuccess: function(rsp) {
var l = $(listBox);
while(l.length>0) l.options[0] = null;
var opts = eval('('+rsp.responseText+')').values;
for( var i=0; i<opts.length; i++ ) {
l.options[i] = new Option(opts[i].name,opts[i].value);
if(opts[i].selected)
l.selectedIndex = i;
}
},
onFailure: function(rsp) {
var l = $(listBox);
l.options[0] = null;
}
});
}
// get the cascaded computed style value. 'a' is the style name like 'backgroundColor'
function getStyle(e,a){
if(document.defaultView && document.defaultView.getComputedStyle)
return document.defaultView.getComputedStyle(e,null).getPropertyValue(a.replace(/([A-Z])/g, "-$1"));
if(e.currentStyle)
return e.currentStyle[a];
return null;
};
// set up logic behind the search box
function createSearchBox(searchURL) {
var ds = new YAHOO.widget.DS_XHR(searchURL+"suggest",["suggestions","name"]);
ds.queryMatchCase = false;
var ac = new YAHOO.widget.AutoComplete("search-box","search-box-completion",ds);
ac.typeAhead = false;
var box = $("search-box");
var sizer = $("search-box-sizer");
var comp = $("search-box-completion");
var minW = $("search-box-minWidth");
Behaviour.addLoadEvent(function(){
// make sure all three components have the same font settings
function copyFontStyle(s,d) {
var ds = d.style;
ds.fontFamily = getStyle(s,"fontFamily");
ds.fontSize = getStyle(s,"fontSize");
ds.fontStyle = getStyle(s,"fontStyle");
ds.fontWeight = getStyle(s,"fontWeight");
}
copyFontStyle(box,sizer);
copyFontStyle(box,minW);
});
// update positions and sizes of the components relevant to search
function updatePos() {
function max(a,b) { if(a>b) return a; else return b; }
sizer.innerHTML = box.value;
var w = max(sizer.offsetWidth,minW.offsetWidth);
box.style.width =
comp.style.width =
comp.firstChild.style.width = (w+60)+"px";
var pos = YAHOO.util.Dom.getXY(box);
pos[1] += YAHOO.util.Dom.get(box).offsetHeight + 2;
YAHOO.util.Dom.setXY(comp, pos);
}
updatePos();
box.onkeyup = updatePos;
}
//
// structured form submission handling
// see http://hudson.gotdns.com/wiki/display/HUDSON/Structured+Form+Submission
function buildFormTree(form) {
try {
// I initially tried to use an associative array with DOM elemnets as keys
// but that doesn't seem to work neither on IE nor Firefox.
// so I switch back to adding a dynamic property on DOM.
form.formDom = {}; // root object
var doms = []; // DOMs that we added 'formDom' for.
doms.push(form);
function shortenName(name) {
// [abc.def.ghi] -> abc.def.ghi
if(name.startsWith('['))
return name.substring(1,name.length-1);
// abc.def.ghi -> ghi
var idx = name.lastIndexOf('.');
if(idx>=0) name = name.substring(idx+1);
return name;
}
function addProperty(parent,name,value) {
name = shortenName(name);
if(parent[name]!=null) {
if(parent[name].push==null) // is this array?
parent[name] = [ parent[name] ];
parent[name].push(value);
} else {
parent[name] = value;
}
}
// find the grouping parent node, which will have @name.
// then return the corresponding object in the map
function findParent(e) {
while(e!=form) {
e = e.parentNode;
// this is used to create a group where no single containing parent node exists,
// like <optionalBlock>
var nameRef = e.getAttribute("nameRef");
if(nameRef!=null)
e = $(nameRef);
if(e.getAttribute("field-disabled")!=null)
return {}; // this field shouldn't contribute to the final result
var name = e.getAttribute("name");
if(name!=null) {
if(e.tagName=="INPUT" && !xor(e.checked,Element.hasClassName(e,"negative")))
return {}; // field is not active
var m = e.formDom;
if(m==null) {
// this is a new grouping node
doms.push(e);
e.formDom = m = {};
addProperty(findParent(e), name, m);
}
return m;
}
}
return form.formDom; // guaranteed non-null
}
var jsonElement = null;
for( var i=0; i<form.elements.length; i++ ) {
var e = form.elements[i];
if(e.name=="json") {
jsonElement = e;
continue;
}
if(e.tagName=="FIELDSET")
continue;
if(e.tagName=="SELECT" && e.multiple) {
var values = [];
for( var o=0; o<e.options.length; o++ ) {
var opt = e.options.item(o);
if(opt.selected)
values.push(opt.value);
}
addProperty(findParent(e),e.name,values);
continue;
}
var p;
var type = e.getAttribute("type");
if(type==null) type="";
switch(type.toLowerCase()) {
case "button":
case "submit":
break;
case "checkbox":
p = findParent(e);
var checked = xor(e.checked,Element.hasClassName(e,"negative"));
if(!e.groupingNode)
addProperty(p, e.name, checked);
else {
if(checked)
addProperty(p, e.name, e.formDom = {});
}
break;
case "file":
// to support structured form submission with file uploads,
// rename form field names to unique ones, and leave this name mapping information
// in JSON. this behavior is backward incompatible, so only do
// this when
p = findParent(e);
if(e.getAttribute("jsonAware")!=null) {
var on = e.getAttribute("originalName");
if(on!=null) {
addProperty(p,on,e.name);
} else {
var uniqName = "file"+(iota++);
addProperty(p,e.name,uniqName);
e.setAttribute("originalName",e.name);
e.name = uniqName;
}
}
// switch to multipart/form-data to support file submission
// @enctype is the standard, but IE needs @encoding.
form.enctype = form.encoding = "multipart/form-data";
break;
case "radio":
if(!e.checked) break;
if(e.groupingNode) {
p = findParent(e);
addProperty(p, e.name, e.formDom = { value: e.value });
break;
}
// otherwise fall through
default:
p = findParent(e);
addProperty(p, e.name, e.value);
break;
}
}
jsonElement.value = Object.toJSON(form.formDom);
// clean up
for( i=0; i<doms.length; i++ )
doms[i].formDom = null;
return jsonElement.value;
} catch(e) {
alert(e);
}
}
// this used to be in prototype.js but it must have been removed somewhere between 1.4.0 to 1.5.1
String.prototype.trim = function() {
var temp = this;
var obj = /^(\s*)([\W\w]*)(\b\s*$)/;
if (obj.test(temp))
temp = temp.replace(obj, '$2');
obj = / /g;
while (temp.match(obj))
temp = temp.replace(obj, " ");
return temp;
}
var hoverNotification = (function() {
var msgBox;
var body;
// animation effect that automatically hide the message box
var effect = function(overlay, dur) {
var o = YAHOO.widget.ContainerEffect.FADE(overlay, dur);
o.animateInCompleteEvent.subscribe(function() {
window.setTimeout(function() {
msgBox.hide()
}, 1500);
});
return o;
}
function init() {
if(msgBox!=null) return; // already initialized
var div = document.createElement("DIV");
document.body.appendChild(div);
div.innerHTML = "<div id=hoverNotification><div class=bd></div></div>";
body = $('hoverNotification');
msgBox = new YAHOO.widget.Overlay(body, {
visible:false,
width:"10em",
zIndex:1000,
effect:{
effect:effect,
duration:0.25
}
});
msgBox.render();
}
return function(title,anchor) {
init();
body.innerHTML = title;
var xy = YAHOO.util.Dom.getXY(anchor);
xy[0] += 48;
xy[1] += anchor.offsetHeight;
msgBox.cfg.setProperty("xy",xy);
msgBox.show();
};
})();
/*
D&D implementation for heterogeneous list.
*/
var DragDrop = function(id, sGroup, config) {
DragDrop.superclass.constructor.apply(this, arguments);
};
(function() {
var Dom = YAHOO.util.Dom;
var Event = YAHOO.util.Event;
var DDM = YAHOO.util.DragDropMgr;
YAHOO.extend(DragDrop, YAHOO.util.DDProxy, {
startDrag: function(x, y) {
var el = this.getEl();
this.resetConstraints();
this.setXConstraint(0,0); // D&D is for Y-axis only
// set Y constraint to be within the container
var totalHeight = el.parentNode.offsetHeight;
var blockHeight = el.offsetHeight;
this.setYConstraint(el.offsetTop, totalHeight-blockHeight-el.offsetTop);
el.style.visibility = "hidden";
this.goingUp = false;
this.lastY = 0;
},
endDrag: function(e) {
var srcEl = this.getEl();
var proxy = this.getDragEl();
// Show the proxy element and animate it to the src element's location
Dom.setStyle(proxy, "visibility", "");
var a = new YAHOO.util.Motion(
proxy, {
points: {
to: Dom.getXY(srcEl)
}
},
0.2,
YAHOO.util.Easing.easeOut
)
var proxyid = proxy.id;
var thisid = this.id;
// Hide the proxy and show the source element when finished with the animation
a.onComplete.subscribe(function() {
Dom.setStyle(proxyid, "visibility", "hidden");
Dom.setStyle(thisid, "visibility", "");
});
a.animate();
},
onDrag: function(e) {
// Keep track of the direction of the drag for use during onDragOver
var y = Event.getPageY(e);
if (y < this.lastY) {
this.goingUp = true;
} else if (y > this.lastY) {
this.goingUp = false;
}
this.lastY = y;
},
onDragOver: function(e, id) {
var srcEl = this.getEl();
var destEl = Dom.get(id);
// We are only concerned with list items, we ignore the dragover
// notifications for the list.
if (destEl.nodeName == "DIV" && Dom.hasClass(destEl,"repeated-chunk")) {
var p = destEl.parentNode;
// if going up, insert above the target element
p.insertBefore(srcEl, this.goingUp?destEl:destEl.nextSibling);
DDM.refreshCache();
}
}
});
})();
function loadScript(href) {
var s = document.createElement("script");
s.setAttribute("src",href);
document.getElementsByTagName("HEAD")[0].appendChild(s);
}
Merged revisions 17324-17325,17428,17430,17473-17475,17481-17482,17555-17563,17571,17593-17595,17619-17620,17637-17644,17656-17657,17663-17665,17667-17670,17730,17753,17755-17758,17763-17768,17770-17771,17901,17906,17911-17912,17958,17961-17962,17970-17977 via svnmerge from https://www.dev.java.net/svn/hudson/branches/tool-autoinstallation ........ r17324 | jglick | 2009-04-20 18:24:32 -0700 (Mon, 20 Apr 2009) | 2 lines Defensive cloning and Javadoc corrections. (Though it seems no one is using the default impls of these methods yet anyway.) ........ r17325 | jglick | 2009-04-20 18:29:06 -0700 (Mon, 20 Apr 2009) | 1 line Deprecation of delegate method is intentional. ........ r17428 | jglick | 2009-04-23 08:07:14 -0700 (Thu, 23 Apr 2009) | 1 line Noting ToolLocationTranslator more prominently. ........ r17430 | jglick | 2009-04-23 09:16:40 -0700 (Thu, 23 Apr 2009) | 1 line Unused imports. ........ r17473 | jglick | 2009-04-23 19:21:11 -0700 (Thu, 23 Apr 2009) | 1 line Allow Plugin.configure to see the StaplerRequest, needed for some kinds of calls. ........ r17474 | jglick | 2009-04-23 19:25:54 -0700 (Thu, 23 Apr 2009) | 3 lines Initial sketch of plugin to manage tool installations across slaves. (Should really be under ../plugins/ but that was not branched, so putting here for the moment.) ........ r17475 | jglick | 2009-04-23 20:29:36 -0700 (Thu, 23 Apr 2009) | 1 line Typo in Javadoc. ........ r17481 | jglick | 2009-04-23 22:46:26 -0700 (Thu, 23 Apr 2009) | 1 line Unzip of an unbuffered stream is painfully slow. ........ r17482 | jglick | 2009-04-23 22:48:01 -0700 (Thu, 23 Apr 2009) | 1 line ZIP-based tool installer now functional. ........ r17555 | jglick | 2009-04-27 17:50:38 -0700 (Mon, 27 Apr 2009) | 1 line Build against newest trunk. ........ r17556 | jglick | 2009-04-27 18:38:28 -0700 (Mon, 27 Apr 2009) | 1 line Adding help. ........ r17557 | jglick | 2009-04-27 18:57:46 -0700 (Mon, 27 Apr 2009) | 1 line Moving toolName & label config GUI into generic files. ........ r17558 | jglick | 2009-04-27 19:37:30 -0700 (Mon, 27 Apr 2009) | 1 line Typo. ........ r17559 | jglick | 2009-04-27 20:07:47 -0700 (Mon, 27 Apr 2009) | 1 line Second tool installer type based on a freeform command. ........ r17560 | jglick | 2009-04-27 20:24:36 -0700 (Mon, 27 Apr 2009) | 1 line installIfNecessaryFrom will now just return false in case the target dir exists but the URL cannot be opened. ........ r17561 | jglick | 2009-04-27 20:25:22 -0700 (Mon, 27 Apr 2009) | 2 lines chmod only if something was actually installed. Use a+x, not o+x. ........ r17562 | jglick | 2009-04-27 20:26:46 -0700 (Mon, 27 Apr 2009) | 1 line Comment only. ........ r17563 | jglick | 2009-04-27 20:41:12 -0700 (Mon, 27 Apr 2009) | 1 line I18N. ........ r17571 | jglick | 2009-04-28 08:15:31 -0700 (Tue, 28 Apr 2009) | 2 lines Wiki link. ........ r17593 | jglick | 2009-04-28 15:38:33 -0700 (Tue, 28 Apr 2009) | 1 line Turn off echo mode, it's just noise. ........ r17594 | jglick | 2009-04-28 15:39:29 -0700 (Tue, 28 Apr 2009) | 2 lines Synchronizing access to installers for a given node/tool combo. Sending log messages to Hudson log in real time. ........ r17595 | jglick | 2009-04-28 15:46:29 -0700 (Tue, 28 Apr 2009) | 1 line Copyrights. ........ r17619 | jglick | 2009-04-29 06:25:23 -0700 (Wed, 29 Apr 2009) | 1 line Improved Javadoc. ........ r17620 | jglick | 2009-04-29 06:51:11 -0700 (Wed, 29 Apr 2009) | 1 line Demonstraing how to use DLJ to mechanically install official JDK releases on supported operating systems. ........ r17637 | kohsuke | 2009-04-30 16:15:24 -0700 (Thu, 30 Apr 2009) | 1 line fixed what appears to be a C&P mistake ........ r17638 | kohsuke | 2009-04-30 16:16:21 -0700 (Thu, 30 Apr 2009) | 1 line show YUI logger if YUI debugging mode is set. ........ r17639 | kohsuke | 2009-04-30 16:52:28 -0700 (Thu, 30 Apr 2009) | 7 lines Fixed a UI script problem when <hetero-list> nests inside <repeatable>. The cause of the problem was that the behavior for inner <hetero-list> kicks in first, altering HTML (by removing "prototypes"), before behavior for outer <repetable> kicks in and removes the master copy from DOM tree. So <repeatable> ends up computing a master copy after some elements are removed, and hence when we try to reinsert them later by clicking "Add", it'll get incorrect copy, and re-execution of the <hetero-list> behavior bombs out. I fixed this by skipping those HTML-altering behaviors if they show up in the part of DOM tree that's supposed to be snapshotted and removed. ........ r17640 | kohsuke | 2009-04-30 16:57:58 -0700 (Thu, 30 Apr 2009) | 7 lines Added ToolProperty to ToolInstallation (which acts like NodeProperty to Node --- basically decorates the base object with additional properties.) The original motivation is to implement ToolInstaller this way, if Jesse is OK. But decorating tools seem to have some other interesting use, such as a plugin for configuring $M2_HOME/conf/settings.xml, or a plugin to insert unlimited cryptography extension to JDK, or a plugin to add a few more jars into $ANT_HOME/lib. For this to work, ToolInstallations that want properties needs to be modified to use a new constructor. For a starter, I modified the JDK class to do this. I also took the opportunity to modernize JDK/config.jelly. ........ r17641 | kohsuke | 2009-04-30 17:02:04 -0700 (Thu, 30 Apr 2009) | 1 line this appears to be a left-over from early days when we didn't have a means to do form validation ........ r17642 | kohsuke | 2009-04-30 17:02:35 -0700 (Thu, 30 Apr 2009) | 1 line we don't need no.such.JDK but we need name. rebranching ........ r17643 | kohsuke | 2009-04-30 17:03:22 -0700 (Thu, 30 Apr 2009) | 1 line rebranched from Hudson's configure.properties ........ r17644 | kohsuke | 2009-04-30 17:05:31 -0700 (Thu, 30 Apr 2009) | 1 line removed unnecessary translations ........ r17656 | kohsuke | 2009-05-01 11:27:36 -0700 (Fri, 01 May 2009) | 1 line Less hack for improved type safety. Asking people to write more code is not necessarily bad as long as what they need to do is obvious to them. ........ r17657 | kohsuke | 2009-05-01 12:07:20 -0700 (Fri, 01 May 2009) | 5 lines The toolautoinst part of the change that corresponds to rev.17640. ToolInstallers are now hooked under ToolInstallation through InstallSourceProperty as a ToolProperty. This allows the relevant UIs to be shown in one place. Still pending Jesse's feedback. Making it a single commit to simplify a revert if necessary ........ r17663 | kohsuke | 2009-05-01 13:23:51 -0700 (Fri, 01 May 2009) | 1 line doc improvement ........ r17664 | kohsuke | 2009-05-01 13:24:10 -0700 (Fri, 01 May 2009) | 1 line needs this to allow Stapler to databind hetero-list automatically ........ r17665 | jglick | 2009-05-01 13:31:27 -0700 (Fri, 01 May 2009) | 1 line Warnings. ........ r17667 | kohsuke | 2009-05-01 14:20:53 -0700 (Fri, 01 May 2009) | 1 line added a method to do chmod ........ r17668 | kohsuke | 2009-05-01 14:30:35 -0700 (Fri, 01 May 2009) | 1 line prefer JDK6 version to avoid unnecessary JNA loading ........ r17669 | kohsuke | 2009-05-01 14:33:09 -0700 (Fri, 01 May 2009) | 1 line no, I must have confused this. ........ r17670 | kohsuke | 2009-05-01 15:57:11 -0700 (Fri, 01 May 2009) | 2 lines - Automated JDK installer and its test. - Minor update to the signature of ToolInstaller for supplying the expected default location. ........ r17730 | kohsuke | 2009-05-04 11:27:34 -0700 (Mon, 04 May 2009) | 1 line avoid NPE as reported in HUDSON-3608 ........ r17753 | jglick | 2009-05-04 19:34:08 -0700 (Mon, 04 May 2009) | 2 lines Moved toolautoinst functionality into core. ........ r17755 | jglick | 2009-05-04 20:28:34 -0700 (Mon, 04 May 2009) | 8 lines Added TaskListener parameter and IOException and InterruptedException to several methods: Run.getEnvironment NodeSpecific.forNode ToolLocationTranslator.getToolHome ToolLocationNodeProperty.getToolHome ToolInstallation.translateFor ProcessCache.Factory.getMavenInstallation ProcessCache.Factory.getJava ........ r17756 | jglick | 2009-05-04 20:36:56 -0700 (Mon, 04 May 2009) | 1 line expectedLocation was never strictly necessary, and will soon no longer be used even by JDKInstaller. ........ r17757 | jglick | 2009-05-04 20:40:41 -0700 (Mon, 04 May 2009) | 1 line Not sure yet what @since should be. ........ r17758 | jglick | 2009-05-04 20:41:51 -0700 (Mon, 04 May 2009) | 1 line getDefaultInstallers method added. Not yet in use. ........ r17763 | kohsuke | 2009-05-05 10:50:36 -0700 (Tue, 05 May 2009) | 1 line deprecated redundant getJavaHome method ........ r17764 | kohsuke | 2009-05-05 12:10:45 -0700 (Tue, 05 May 2009) | 1 line added general-purpose property defaulting mechanism, and added default tool installer for JDK ........ r17765 | jglick | 2009-05-05 12:35:56 -0700 (Tue, 05 May 2009) | 1 line capitalize("") -> "" ........ r17766 | jglick | 2009-05-05 12:49:52 -0700 (Tue, 05 May 2009) | 1 line Missing @since. ........ r17767 | jglick | 2009-05-05 13:01:41 -0700 (Tue, 05 May 2009) | 1 line Unchecked warning. ........ r17768 | jglick | 2009-05-05 13:19:49 -0700 (Tue, 05 May 2009) | 2 lines Two unsuccessful attempts at form validation. ........ r17770 | jglick | 2009-05-05 13:48:37 -0700 (Tue, 05 May 2009) | 1 line Better class names. ........ r17771 | kohsuke | 2009-05-05 14:12:21 -0700 (Tue, 05 May 2009) | 5 lines brought the form validation check back. The trick is to use the 'value' parameter. In the end we'd expect this check to go away anyway, as we change input field to drop-down list, but in the mean time, this is why it didn't work. Maybe we probably need more static code checkers? Like FindBugs rules? ........ r17901 | kohsuke | 2009-05-09 19:15:40 -0700 (Sat, 09 May 2009) | 1 line having two toolHome is odd. ........ r17906 | kohsuke | 2009-05-10 11:09:13 -0700 (Sun, 10 May 2009) | 1 line adding the generalization of UpdateCenter, but for compatibility reasons, we are leaving UpdateCenter as-is. ........ r17911 | kohsuke | 2009-05-10 17:02:53 -0700 (Sun, 10 May 2009) | 1 line integrated json-lib with a bit of bug fix ........ r17912 | kohsuke | 2009-05-10 17:13:05 -0700 (Sun, 10 May 2009) | 1 line JDK list is now fetched from hudson.dev.java.net ........ r17958 | kohsuke | 2009-05-11 13:44:25 -0700 (Mon, 11 May 2009) | 48 lines Handle AbortException better to avoid error like this: [INFO] ------------------------------------------------------------------------ [ERROR] BUILD ERROR [INFO] ------------------------------------------------------------------------ [INFO] Failed to delete directory: C:\files\hudson\workspace\hudson\hudson\main\remoting\target. Reason: Unable to delete file C:\files\hudson\workspace\hudson\hudson\main\remoting\target\remoting-1.304-SNAPSHOT.jar [INFO] ------------------------------------------------------------------------ [INFO] For more information, run Maven with the -e switch [INFO] ------------------------------------------------------------------------ [INFO] Total time: 31 seconds [INFO] Finished at: Sun May 10 18:15:33 PDT 2009 [INFO] Final Memory: 25M/48M [INFO] ------------------------------------------------------------------------ Recording fingerprints Archiving artifacts Recording test results ERROR: Failed to archive JUnit reports hudson.util.IOException2: remote file operation failed at hudson.FilePath.act(FilePath.java:596) at hudson.tasks.junit.JUnitResultArchiver.perform(JUnitResultArchiver.java:82) at hudson.model.AbstractBuild$AbstractRunner.performAllBuildStep(AbstractBuild.java:372) at hudson.model.AbstractBuild$AbstractRunner.performAllBuildStep(AbstractBuild.java:360) at hudson.model.Build$RunnerImpl.post2(Build.java:183) at hudson.model.AbstractBuild$AbstractRunner.post(AbstractBuild.java:345) at hudson.model.Run.run(Run.java:943) at hudson.model.Build.run(Build.java:112) at hudson.model.ResourceController.execute(ResourceController.java:93) at hudson.model.Executor.run(Executor.java:119) Caused by: hudson.AbortException: Test reports were found but none of them are new. Did tests run? For example, \files\hudson\workspace\hudson\hudson\main\core\target\surefire-reports\TEST-hudson.BulkChangeTest.xml is 2 days 23 hr old at hudson.tasks.junit.TestResult.parse(TestResult.java:134) at hudson.tasks.junit.TestResult.<init>(TestResult.java:95) at hudson.tasks.junit.JUnitResultArchiver$1.invoke(JUnitResultArchiver.java:95) at hudson.tasks.junit.JUnitResultArchiver$1.invoke(JUnitResultArchiver.java:82) at hudson.FilePath$FileCallableWrapper.call(FilePath.java:1583) at hudson.remoting.UserRequest.perform(UserRequest.java:92) at hudson.remoting.UserRequest.perform(UserRequest.java:46) at hudson.remoting.Request$2.run(Request.java:236) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) at java.util.concurrent.FutureTask.run(FutureTask.java:138) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) at java.lang.Thread.run(Thread.java:619) ........ r17961 | kohsuke | 2009-05-11 15:16:39 -0700 (Mon, 11 May 2009) | 1 line adding Windows JDK silent installation ........ r17962 | kohsuke | 2009-05-11 16:08:13 -0700 (Mon, 11 May 2009) | 1 line Fixing JDK offline installatino for Windows ........ r17970 | kohsuke | 2009-05-11 19:37:59 -0700 (Mon, 11 May 2009) | 1 line Fixing a problem that prevents the usage of this tag in <repeatable> block, which reinserts the same fragment over and over. So statically assigning IDs won't work ........ r17971 | kohsuke | 2009-05-11 22:17:09 -0700 (Mon, 11 May 2009) | 1 line continuing to remove static ID generation, which breaks the tag when used inside <repetable> tag. ........ r17972 | kohsuke | 2009-05-11 22:19:11 -0700 (Mon, 11 May 2009) | 1 line I don't know when this started, but even in the hudson-dev:run mode, the versionis no longer '?', so we need a different way to force reload ........ r17973 | kohsuke | 2009-05-11 22:26:34 -0700 (Mon, 11 May 2009) | 1 line adjusted the text a bit since multiple "add" and "delete"s were rather confusing ........ r17974 | kohsuke | 2009-05-11 22:31:58 -0700 (Mon, 11 May 2009) | 1 line added help screen ........ r17975 | kohsuke | 2009-05-11 22:41:39 -0700 (Mon, 11 May 2009) | 1 line form validation now works against the checkbox, too ........ r17976 | kohsuke | 2009-05-11 22:43:00 -0700 (Mon, 11 May 2009) | 1 line with auto installation, we expect users to specify a directory that doesn't exist yet, so don't report it as an error ........ r17977 | kohsuke | 2009-05-11 22:43:24 -0700 (Mon, 11 May 2009) | 1 line improving the text ........ git-svn-id: https://hudson.dev.java.net/svn/hudson/trunk/hudson/main@17985 71c3de6d-444a-0410-be80-ed276b4c234a
2009-05-12 21:59:10 +08:00
var downloadService = {
continuations: {},
crumbName: null,
crumb: null,
Merged revisions 17324-17325,17428,17430,17473-17475,17481-17482,17555-17563,17571,17593-17595,17619-17620,17637-17644,17656-17657,17663-17665,17667-17670,17730,17753,17755-17758,17763-17768,17770-17771,17901,17906,17911-17912,17958,17961-17962,17970-17977 via svnmerge from https://www.dev.java.net/svn/hudson/branches/tool-autoinstallation ........ r17324 | jglick | 2009-04-20 18:24:32 -0700 (Mon, 20 Apr 2009) | 2 lines Defensive cloning and Javadoc corrections. (Though it seems no one is using the default impls of these methods yet anyway.) ........ r17325 | jglick | 2009-04-20 18:29:06 -0700 (Mon, 20 Apr 2009) | 1 line Deprecation of delegate method is intentional. ........ r17428 | jglick | 2009-04-23 08:07:14 -0700 (Thu, 23 Apr 2009) | 1 line Noting ToolLocationTranslator more prominently. ........ r17430 | jglick | 2009-04-23 09:16:40 -0700 (Thu, 23 Apr 2009) | 1 line Unused imports. ........ r17473 | jglick | 2009-04-23 19:21:11 -0700 (Thu, 23 Apr 2009) | 1 line Allow Plugin.configure to see the StaplerRequest, needed for some kinds of calls. ........ r17474 | jglick | 2009-04-23 19:25:54 -0700 (Thu, 23 Apr 2009) | 3 lines Initial sketch of plugin to manage tool installations across slaves. (Should really be under ../plugins/ but that was not branched, so putting here for the moment.) ........ r17475 | jglick | 2009-04-23 20:29:36 -0700 (Thu, 23 Apr 2009) | 1 line Typo in Javadoc. ........ r17481 | jglick | 2009-04-23 22:46:26 -0700 (Thu, 23 Apr 2009) | 1 line Unzip of an unbuffered stream is painfully slow. ........ r17482 | jglick | 2009-04-23 22:48:01 -0700 (Thu, 23 Apr 2009) | 1 line ZIP-based tool installer now functional. ........ r17555 | jglick | 2009-04-27 17:50:38 -0700 (Mon, 27 Apr 2009) | 1 line Build against newest trunk. ........ r17556 | jglick | 2009-04-27 18:38:28 -0700 (Mon, 27 Apr 2009) | 1 line Adding help. ........ r17557 | jglick | 2009-04-27 18:57:46 -0700 (Mon, 27 Apr 2009) | 1 line Moving toolName & label config GUI into generic files. ........ r17558 | jglick | 2009-04-27 19:37:30 -0700 (Mon, 27 Apr 2009) | 1 line Typo. ........ r17559 | jglick | 2009-04-27 20:07:47 -0700 (Mon, 27 Apr 2009) | 1 line Second tool installer type based on a freeform command. ........ r17560 | jglick | 2009-04-27 20:24:36 -0700 (Mon, 27 Apr 2009) | 1 line installIfNecessaryFrom will now just return false in case the target dir exists but the URL cannot be opened. ........ r17561 | jglick | 2009-04-27 20:25:22 -0700 (Mon, 27 Apr 2009) | 2 lines chmod only if something was actually installed. Use a+x, not o+x. ........ r17562 | jglick | 2009-04-27 20:26:46 -0700 (Mon, 27 Apr 2009) | 1 line Comment only. ........ r17563 | jglick | 2009-04-27 20:41:12 -0700 (Mon, 27 Apr 2009) | 1 line I18N. ........ r17571 | jglick | 2009-04-28 08:15:31 -0700 (Tue, 28 Apr 2009) | 2 lines Wiki link. ........ r17593 | jglick | 2009-04-28 15:38:33 -0700 (Tue, 28 Apr 2009) | 1 line Turn off echo mode, it's just noise. ........ r17594 | jglick | 2009-04-28 15:39:29 -0700 (Tue, 28 Apr 2009) | 2 lines Synchronizing access to installers for a given node/tool combo. Sending log messages to Hudson log in real time. ........ r17595 | jglick | 2009-04-28 15:46:29 -0700 (Tue, 28 Apr 2009) | 1 line Copyrights. ........ r17619 | jglick | 2009-04-29 06:25:23 -0700 (Wed, 29 Apr 2009) | 1 line Improved Javadoc. ........ r17620 | jglick | 2009-04-29 06:51:11 -0700 (Wed, 29 Apr 2009) | 1 line Demonstraing how to use DLJ to mechanically install official JDK releases on supported operating systems. ........ r17637 | kohsuke | 2009-04-30 16:15:24 -0700 (Thu, 30 Apr 2009) | 1 line fixed what appears to be a C&P mistake ........ r17638 | kohsuke | 2009-04-30 16:16:21 -0700 (Thu, 30 Apr 2009) | 1 line show YUI logger if YUI debugging mode is set. ........ r17639 | kohsuke | 2009-04-30 16:52:28 -0700 (Thu, 30 Apr 2009) | 7 lines Fixed a UI script problem when <hetero-list> nests inside <repeatable>. The cause of the problem was that the behavior for inner <hetero-list> kicks in first, altering HTML (by removing "prototypes"), before behavior for outer <repetable> kicks in and removes the master copy from DOM tree. So <repeatable> ends up computing a master copy after some elements are removed, and hence when we try to reinsert them later by clicking "Add", it'll get incorrect copy, and re-execution of the <hetero-list> behavior bombs out. I fixed this by skipping those HTML-altering behaviors if they show up in the part of DOM tree that's supposed to be snapshotted and removed. ........ r17640 | kohsuke | 2009-04-30 16:57:58 -0700 (Thu, 30 Apr 2009) | 7 lines Added ToolProperty to ToolInstallation (which acts like NodeProperty to Node --- basically decorates the base object with additional properties.) The original motivation is to implement ToolInstaller this way, if Jesse is OK. But decorating tools seem to have some other interesting use, such as a plugin for configuring $M2_HOME/conf/settings.xml, or a plugin to insert unlimited cryptography extension to JDK, or a plugin to add a few more jars into $ANT_HOME/lib. For this to work, ToolInstallations that want properties needs to be modified to use a new constructor. For a starter, I modified the JDK class to do this. I also took the opportunity to modernize JDK/config.jelly. ........ r17641 | kohsuke | 2009-04-30 17:02:04 -0700 (Thu, 30 Apr 2009) | 1 line this appears to be a left-over from early days when we didn't have a means to do form validation ........ r17642 | kohsuke | 2009-04-30 17:02:35 -0700 (Thu, 30 Apr 2009) | 1 line we don't need no.such.JDK but we need name. rebranching ........ r17643 | kohsuke | 2009-04-30 17:03:22 -0700 (Thu, 30 Apr 2009) | 1 line rebranched from Hudson's configure.properties ........ r17644 | kohsuke | 2009-04-30 17:05:31 -0700 (Thu, 30 Apr 2009) | 1 line removed unnecessary translations ........ r17656 | kohsuke | 2009-05-01 11:27:36 -0700 (Fri, 01 May 2009) | 1 line Less hack for improved type safety. Asking people to write more code is not necessarily bad as long as what they need to do is obvious to them. ........ r17657 | kohsuke | 2009-05-01 12:07:20 -0700 (Fri, 01 May 2009) | 5 lines The toolautoinst part of the change that corresponds to rev.17640. ToolInstallers are now hooked under ToolInstallation through InstallSourceProperty as a ToolProperty. This allows the relevant UIs to be shown in one place. Still pending Jesse's feedback. Making it a single commit to simplify a revert if necessary ........ r17663 | kohsuke | 2009-05-01 13:23:51 -0700 (Fri, 01 May 2009) | 1 line doc improvement ........ r17664 | kohsuke | 2009-05-01 13:24:10 -0700 (Fri, 01 May 2009) | 1 line needs this to allow Stapler to databind hetero-list automatically ........ r17665 | jglick | 2009-05-01 13:31:27 -0700 (Fri, 01 May 2009) | 1 line Warnings. ........ r17667 | kohsuke | 2009-05-01 14:20:53 -0700 (Fri, 01 May 2009) | 1 line added a method to do chmod ........ r17668 | kohsuke | 2009-05-01 14:30:35 -0700 (Fri, 01 May 2009) | 1 line prefer JDK6 version to avoid unnecessary JNA loading ........ r17669 | kohsuke | 2009-05-01 14:33:09 -0700 (Fri, 01 May 2009) | 1 line no, I must have confused this. ........ r17670 | kohsuke | 2009-05-01 15:57:11 -0700 (Fri, 01 May 2009) | 2 lines - Automated JDK installer and its test. - Minor update to the signature of ToolInstaller for supplying the expected default location. ........ r17730 | kohsuke | 2009-05-04 11:27:34 -0700 (Mon, 04 May 2009) | 1 line avoid NPE as reported in HUDSON-3608 ........ r17753 | jglick | 2009-05-04 19:34:08 -0700 (Mon, 04 May 2009) | 2 lines Moved toolautoinst functionality into core. ........ r17755 | jglick | 2009-05-04 20:28:34 -0700 (Mon, 04 May 2009) | 8 lines Added TaskListener parameter and IOException and InterruptedException to several methods: Run.getEnvironment NodeSpecific.forNode ToolLocationTranslator.getToolHome ToolLocationNodeProperty.getToolHome ToolInstallation.translateFor ProcessCache.Factory.getMavenInstallation ProcessCache.Factory.getJava ........ r17756 | jglick | 2009-05-04 20:36:56 -0700 (Mon, 04 May 2009) | 1 line expectedLocation was never strictly necessary, and will soon no longer be used even by JDKInstaller. ........ r17757 | jglick | 2009-05-04 20:40:41 -0700 (Mon, 04 May 2009) | 1 line Not sure yet what @since should be. ........ r17758 | jglick | 2009-05-04 20:41:51 -0700 (Mon, 04 May 2009) | 1 line getDefaultInstallers method added. Not yet in use. ........ r17763 | kohsuke | 2009-05-05 10:50:36 -0700 (Tue, 05 May 2009) | 1 line deprecated redundant getJavaHome method ........ r17764 | kohsuke | 2009-05-05 12:10:45 -0700 (Tue, 05 May 2009) | 1 line added general-purpose property defaulting mechanism, and added default tool installer for JDK ........ r17765 | jglick | 2009-05-05 12:35:56 -0700 (Tue, 05 May 2009) | 1 line capitalize("") -> "" ........ r17766 | jglick | 2009-05-05 12:49:52 -0700 (Tue, 05 May 2009) | 1 line Missing @since. ........ r17767 | jglick | 2009-05-05 13:01:41 -0700 (Tue, 05 May 2009) | 1 line Unchecked warning. ........ r17768 | jglick | 2009-05-05 13:19:49 -0700 (Tue, 05 May 2009) | 2 lines Two unsuccessful attempts at form validation. ........ r17770 | jglick | 2009-05-05 13:48:37 -0700 (Tue, 05 May 2009) | 1 line Better class names. ........ r17771 | kohsuke | 2009-05-05 14:12:21 -0700 (Tue, 05 May 2009) | 5 lines brought the form validation check back. The trick is to use the 'value' parameter. In the end we'd expect this check to go away anyway, as we change input field to drop-down list, but in the mean time, this is why it didn't work. Maybe we probably need more static code checkers? Like FindBugs rules? ........ r17901 | kohsuke | 2009-05-09 19:15:40 -0700 (Sat, 09 May 2009) | 1 line having two toolHome is odd. ........ r17906 | kohsuke | 2009-05-10 11:09:13 -0700 (Sun, 10 May 2009) | 1 line adding the generalization of UpdateCenter, but for compatibility reasons, we are leaving UpdateCenter as-is. ........ r17911 | kohsuke | 2009-05-10 17:02:53 -0700 (Sun, 10 May 2009) | 1 line integrated json-lib with a bit of bug fix ........ r17912 | kohsuke | 2009-05-10 17:13:05 -0700 (Sun, 10 May 2009) | 1 line JDK list is now fetched from hudson.dev.java.net ........ r17958 | kohsuke | 2009-05-11 13:44:25 -0700 (Mon, 11 May 2009) | 48 lines Handle AbortException better to avoid error like this: [INFO] ------------------------------------------------------------------------ [ERROR] BUILD ERROR [INFO] ------------------------------------------------------------------------ [INFO] Failed to delete directory: C:\files\hudson\workspace\hudson\hudson\main\remoting\target. Reason: Unable to delete file C:\files\hudson\workspace\hudson\hudson\main\remoting\target\remoting-1.304-SNAPSHOT.jar [INFO] ------------------------------------------------------------------------ [INFO] For more information, run Maven with the -e switch [INFO] ------------------------------------------------------------------------ [INFO] Total time: 31 seconds [INFO] Finished at: Sun May 10 18:15:33 PDT 2009 [INFO] Final Memory: 25M/48M [INFO] ------------------------------------------------------------------------ Recording fingerprints Archiving artifacts Recording test results ERROR: Failed to archive JUnit reports hudson.util.IOException2: remote file operation failed at hudson.FilePath.act(FilePath.java:596) at hudson.tasks.junit.JUnitResultArchiver.perform(JUnitResultArchiver.java:82) at hudson.model.AbstractBuild$AbstractRunner.performAllBuildStep(AbstractBuild.java:372) at hudson.model.AbstractBuild$AbstractRunner.performAllBuildStep(AbstractBuild.java:360) at hudson.model.Build$RunnerImpl.post2(Build.java:183) at hudson.model.AbstractBuild$AbstractRunner.post(AbstractBuild.java:345) at hudson.model.Run.run(Run.java:943) at hudson.model.Build.run(Build.java:112) at hudson.model.ResourceController.execute(ResourceController.java:93) at hudson.model.Executor.run(Executor.java:119) Caused by: hudson.AbortException: Test reports were found but none of them are new. Did tests run? For example, \files\hudson\workspace\hudson\hudson\main\core\target\surefire-reports\TEST-hudson.BulkChangeTest.xml is 2 days 23 hr old at hudson.tasks.junit.TestResult.parse(TestResult.java:134) at hudson.tasks.junit.TestResult.<init>(TestResult.java:95) at hudson.tasks.junit.JUnitResultArchiver$1.invoke(JUnitResultArchiver.java:95) at hudson.tasks.junit.JUnitResultArchiver$1.invoke(JUnitResultArchiver.java:82) at hudson.FilePath$FileCallableWrapper.call(FilePath.java:1583) at hudson.remoting.UserRequest.perform(UserRequest.java:92) at hudson.remoting.UserRequest.perform(UserRequest.java:46) at hudson.remoting.Request$2.run(Request.java:236) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) at java.util.concurrent.FutureTask.run(FutureTask.java:138) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) at java.lang.Thread.run(Thread.java:619) ........ r17961 | kohsuke | 2009-05-11 15:16:39 -0700 (Mon, 11 May 2009) | 1 line adding Windows JDK silent installation ........ r17962 | kohsuke | 2009-05-11 16:08:13 -0700 (Mon, 11 May 2009) | 1 line Fixing JDK offline installatino for Windows ........ r17970 | kohsuke | 2009-05-11 19:37:59 -0700 (Mon, 11 May 2009) | 1 line Fixing a problem that prevents the usage of this tag in <repeatable> block, which reinserts the same fragment over and over. So statically assigning IDs won't work ........ r17971 | kohsuke | 2009-05-11 22:17:09 -0700 (Mon, 11 May 2009) | 1 line continuing to remove static ID generation, which breaks the tag when used inside <repetable> tag. ........ r17972 | kohsuke | 2009-05-11 22:19:11 -0700 (Mon, 11 May 2009) | 1 line I don't know when this started, but even in the hudson-dev:run mode, the versionis no longer '?', so we need a different way to force reload ........ r17973 | kohsuke | 2009-05-11 22:26:34 -0700 (Mon, 11 May 2009) | 1 line adjusted the text a bit since multiple "add" and "delete"s were rather confusing ........ r17974 | kohsuke | 2009-05-11 22:31:58 -0700 (Mon, 11 May 2009) | 1 line added help screen ........ r17975 | kohsuke | 2009-05-11 22:41:39 -0700 (Mon, 11 May 2009) | 1 line form validation now works against the checkbox, too ........ r17976 | kohsuke | 2009-05-11 22:43:00 -0700 (Mon, 11 May 2009) | 1 line with auto installation, we expect users to specify a directory that doesn't exist yet, so don't report it as an error ........ r17977 | kohsuke | 2009-05-11 22:43:24 -0700 (Mon, 11 May 2009) | 1 line improving the text ........ git-svn-id: https://hudson.dev.java.net/svn/hudson/trunk/hudson/main@17985 71c3de6d-444a-0410-be80-ed276b4c234a
2009-05-12 21:59:10 +08:00
download : function(id,url,info, postBack,completionHandler) {
this.continuations[id] = {postBack:postBack,completionHandler:completionHandler};
loadScript(url+"?"+Hash.toQueryString(info));
},
post : function(id,data) {
var o = this.continuations[id];
var params = new Array(2);
params["json"] = Object.toJSON(data);
params[downloadService.crumbName] = downloadService.crumb;
Merged revisions 17324-17325,17428,17430,17473-17475,17481-17482,17555-17563,17571,17593-17595,17619-17620,17637-17644,17656-17657,17663-17665,17667-17670,17730,17753,17755-17758,17763-17768,17770-17771,17901,17906,17911-17912,17958,17961-17962,17970-17977 via svnmerge from https://www.dev.java.net/svn/hudson/branches/tool-autoinstallation ........ r17324 | jglick | 2009-04-20 18:24:32 -0700 (Mon, 20 Apr 2009) | 2 lines Defensive cloning and Javadoc corrections. (Though it seems no one is using the default impls of these methods yet anyway.) ........ r17325 | jglick | 2009-04-20 18:29:06 -0700 (Mon, 20 Apr 2009) | 1 line Deprecation of delegate method is intentional. ........ r17428 | jglick | 2009-04-23 08:07:14 -0700 (Thu, 23 Apr 2009) | 1 line Noting ToolLocationTranslator more prominently. ........ r17430 | jglick | 2009-04-23 09:16:40 -0700 (Thu, 23 Apr 2009) | 1 line Unused imports. ........ r17473 | jglick | 2009-04-23 19:21:11 -0700 (Thu, 23 Apr 2009) | 1 line Allow Plugin.configure to see the StaplerRequest, needed for some kinds of calls. ........ r17474 | jglick | 2009-04-23 19:25:54 -0700 (Thu, 23 Apr 2009) | 3 lines Initial sketch of plugin to manage tool installations across slaves. (Should really be under ../plugins/ but that was not branched, so putting here for the moment.) ........ r17475 | jglick | 2009-04-23 20:29:36 -0700 (Thu, 23 Apr 2009) | 1 line Typo in Javadoc. ........ r17481 | jglick | 2009-04-23 22:46:26 -0700 (Thu, 23 Apr 2009) | 1 line Unzip of an unbuffered stream is painfully slow. ........ r17482 | jglick | 2009-04-23 22:48:01 -0700 (Thu, 23 Apr 2009) | 1 line ZIP-based tool installer now functional. ........ r17555 | jglick | 2009-04-27 17:50:38 -0700 (Mon, 27 Apr 2009) | 1 line Build against newest trunk. ........ r17556 | jglick | 2009-04-27 18:38:28 -0700 (Mon, 27 Apr 2009) | 1 line Adding help. ........ r17557 | jglick | 2009-04-27 18:57:46 -0700 (Mon, 27 Apr 2009) | 1 line Moving toolName & label config GUI into generic files. ........ r17558 | jglick | 2009-04-27 19:37:30 -0700 (Mon, 27 Apr 2009) | 1 line Typo. ........ r17559 | jglick | 2009-04-27 20:07:47 -0700 (Mon, 27 Apr 2009) | 1 line Second tool installer type based on a freeform command. ........ r17560 | jglick | 2009-04-27 20:24:36 -0700 (Mon, 27 Apr 2009) | 1 line installIfNecessaryFrom will now just return false in case the target dir exists but the URL cannot be opened. ........ r17561 | jglick | 2009-04-27 20:25:22 -0700 (Mon, 27 Apr 2009) | 2 lines chmod only if something was actually installed. Use a+x, not o+x. ........ r17562 | jglick | 2009-04-27 20:26:46 -0700 (Mon, 27 Apr 2009) | 1 line Comment only. ........ r17563 | jglick | 2009-04-27 20:41:12 -0700 (Mon, 27 Apr 2009) | 1 line I18N. ........ r17571 | jglick | 2009-04-28 08:15:31 -0700 (Tue, 28 Apr 2009) | 2 lines Wiki link. ........ r17593 | jglick | 2009-04-28 15:38:33 -0700 (Tue, 28 Apr 2009) | 1 line Turn off echo mode, it's just noise. ........ r17594 | jglick | 2009-04-28 15:39:29 -0700 (Tue, 28 Apr 2009) | 2 lines Synchronizing access to installers for a given node/tool combo. Sending log messages to Hudson log in real time. ........ r17595 | jglick | 2009-04-28 15:46:29 -0700 (Tue, 28 Apr 2009) | 1 line Copyrights. ........ r17619 | jglick | 2009-04-29 06:25:23 -0700 (Wed, 29 Apr 2009) | 1 line Improved Javadoc. ........ r17620 | jglick | 2009-04-29 06:51:11 -0700 (Wed, 29 Apr 2009) | 1 line Demonstraing how to use DLJ to mechanically install official JDK releases on supported operating systems. ........ r17637 | kohsuke | 2009-04-30 16:15:24 -0700 (Thu, 30 Apr 2009) | 1 line fixed what appears to be a C&P mistake ........ r17638 | kohsuke | 2009-04-30 16:16:21 -0700 (Thu, 30 Apr 2009) | 1 line show YUI logger if YUI debugging mode is set. ........ r17639 | kohsuke | 2009-04-30 16:52:28 -0700 (Thu, 30 Apr 2009) | 7 lines Fixed a UI script problem when <hetero-list> nests inside <repeatable>. The cause of the problem was that the behavior for inner <hetero-list> kicks in first, altering HTML (by removing "prototypes"), before behavior for outer <repetable> kicks in and removes the master copy from DOM tree. So <repeatable> ends up computing a master copy after some elements are removed, and hence when we try to reinsert them later by clicking "Add", it'll get incorrect copy, and re-execution of the <hetero-list> behavior bombs out. I fixed this by skipping those HTML-altering behaviors if they show up in the part of DOM tree that's supposed to be snapshotted and removed. ........ r17640 | kohsuke | 2009-04-30 16:57:58 -0700 (Thu, 30 Apr 2009) | 7 lines Added ToolProperty to ToolInstallation (which acts like NodeProperty to Node --- basically decorates the base object with additional properties.) The original motivation is to implement ToolInstaller this way, if Jesse is OK. But decorating tools seem to have some other interesting use, such as a plugin for configuring $M2_HOME/conf/settings.xml, or a plugin to insert unlimited cryptography extension to JDK, or a plugin to add a few more jars into $ANT_HOME/lib. For this to work, ToolInstallations that want properties needs to be modified to use a new constructor. For a starter, I modified the JDK class to do this. I also took the opportunity to modernize JDK/config.jelly. ........ r17641 | kohsuke | 2009-04-30 17:02:04 -0700 (Thu, 30 Apr 2009) | 1 line this appears to be a left-over from early days when we didn't have a means to do form validation ........ r17642 | kohsuke | 2009-04-30 17:02:35 -0700 (Thu, 30 Apr 2009) | 1 line we don't need no.such.JDK but we need name. rebranching ........ r17643 | kohsuke | 2009-04-30 17:03:22 -0700 (Thu, 30 Apr 2009) | 1 line rebranched from Hudson's configure.properties ........ r17644 | kohsuke | 2009-04-30 17:05:31 -0700 (Thu, 30 Apr 2009) | 1 line removed unnecessary translations ........ r17656 | kohsuke | 2009-05-01 11:27:36 -0700 (Fri, 01 May 2009) | 1 line Less hack for improved type safety. Asking people to write more code is not necessarily bad as long as what they need to do is obvious to them. ........ r17657 | kohsuke | 2009-05-01 12:07:20 -0700 (Fri, 01 May 2009) | 5 lines The toolautoinst part of the change that corresponds to rev.17640. ToolInstallers are now hooked under ToolInstallation through InstallSourceProperty as a ToolProperty. This allows the relevant UIs to be shown in one place. Still pending Jesse's feedback. Making it a single commit to simplify a revert if necessary ........ r17663 | kohsuke | 2009-05-01 13:23:51 -0700 (Fri, 01 May 2009) | 1 line doc improvement ........ r17664 | kohsuke | 2009-05-01 13:24:10 -0700 (Fri, 01 May 2009) | 1 line needs this to allow Stapler to databind hetero-list automatically ........ r17665 | jglick | 2009-05-01 13:31:27 -0700 (Fri, 01 May 2009) | 1 line Warnings. ........ r17667 | kohsuke | 2009-05-01 14:20:53 -0700 (Fri, 01 May 2009) | 1 line added a method to do chmod ........ r17668 | kohsuke | 2009-05-01 14:30:35 -0700 (Fri, 01 May 2009) | 1 line prefer JDK6 version to avoid unnecessary JNA loading ........ r17669 | kohsuke | 2009-05-01 14:33:09 -0700 (Fri, 01 May 2009) | 1 line no, I must have confused this. ........ r17670 | kohsuke | 2009-05-01 15:57:11 -0700 (Fri, 01 May 2009) | 2 lines - Automated JDK installer and its test. - Minor update to the signature of ToolInstaller for supplying the expected default location. ........ r17730 | kohsuke | 2009-05-04 11:27:34 -0700 (Mon, 04 May 2009) | 1 line avoid NPE as reported in HUDSON-3608 ........ r17753 | jglick | 2009-05-04 19:34:08 -0700 (Mon, 04 May 2009) | 2 lines Moved toolautoinst functionality into core. ........ r17755 | jglick | 2009-05-04 20:28:34 -0700 (Mon, 04 May 2009) | 8 lines Added TaskListener parameter and IOException and InterruptedException to several methods: Run.getEnvironment NodeSpecific.forNode ToolLocationTranslator.getToolHome ToolLocationNodeProperty.getToolHome ToolInstallation.translateFor ProcessCache.Factory.getMavenInstallation ProcessCache.Factory.getJava ........ r17756 | jglick | 2009-05-04 20:36:56 -0700 (Mon, 04 May 2009) | 1 line expectedLocation was never strictly necessary, and will soon no longer be used even by JDKInstaller. ........ r17757 | jglick | 2009-05-04 20:40:41 -0700 (Mon, 04 May 2009) | 1 line Not sure yet what @since should be. ........ r17758 | jglick | 2009-05-04 20:41:51 -0700 (Mon, 04 May 2009) | 1 line getDefaultInstallers method added. Not yet in use. ........ r17763 | kohsuke | 2009-05-05 10:50:36 -0700 (Tue, 05 May 2009) | 1 line deprecated redundant getJavaHome method ........ r17764 | kohsuke | 2009-05-05 12:10:45 -0700 (Tue, 05 May 2009) | 1 line added general-purpose property defaulting mechanism, and added default tool installer for JDK ........ r17765 | jglick | 2009-05-05 12:35:56 -0700 (Tue, 05 May 2009) | 1 line capitalize("") -> "" ........ r17766 | jglick | 2009-05-05 12:49:52 -0700 (Tue, 05 May 2009) | 1 line Missing @since. ........ r17767 | jglick | 2009-05-05 13:01:41 -0700 (Tue, 05 May 2009) | 1 line Unchecked warning. ........ r17768 | jglick | 2009-05-05 13:19:49 -0700 (Tue, 05 May 2009) | 2 lines Two unsuccessful attempts at form validation. ........ r17770 | jglick | 2009-05-05 13:48:37 -0700 (Tue, 05 May 2009) | 1 line Better class names. ........ r17771 | kohsuke | 2009-05-05 14:12:21 -0700 (Tue, 05 May 2009) | 5 lines brought the form validation check back. The trick is to use the 'value' parameter. In the end we'd expect this check to go away anyway, as we change input field to drop-down list, but in the mean time, this is why it didn't work. Maybe we probably need more static code checkers? Like FindBugs rules? ........ r17901 | kohsuke | 2009-05-09 19:15:40 -0700 (Sat, 09 May 2009) | 1 line having two toolHome is odd. ........ r17906 | kohsuke | 2009-05-10 11:09:13 -0700 (Sun, 10 May 2009) | 1 line adding the generalization of UpdateCenter, but for compatibility reasons, we are leaving UpdateCenter as-is. ........ r17911 | kohsuke | 2009-05-10 17:02:53 -0700 (Sun, 10 May 2009) | 1 line integrated json-lib with a bit of bug fix ........ r17912 | kohsuke | 2009-05-10 17:13:05 -0700 (Sun, 10 May 2009) | 1 line JDK list is now fetched from hudson.dev.java.net ........ r17958 | kohsuke | 2009-05-11 13:44:25 -0700 (Mon, 11 May 2009) | 48 lines Handle AbortException better to avoid error like this: [INFO] ------------------------------------------------------------------------ [ERROR] BUILD ERROR [INFO] ------------------------------------------------------------------------ [INFO] Failed to delete directory: C:\files\hudson\workspace\hudson\hudson\main\remoting\target. Reason: Unable to delete file C:\files\hudson\workspace\hudson\hudson\main\remoting\target\remoting-1.304-SNAPSHOT.jar [INFO] ------------------------------------------------------------------------ [INFO] For more information, run Maven with the -e switch [INFO] ------------------------------------------------------------------------ [INFO] Total time: 31 seconds [INFO] Finished at: Sun May 10 18:15:33 PDT 2009 [INFO] Final Memory: 25M/48M [INFO] ------------------------------------------------------------------------ Recording fingerprints Archiving artifacts Recording test results ERROR: Failed to archive JUnit reports hudson.util.IOException2: remote file operation failed at hudson.FilePath.act(FilePath.java:596) at hudson.tasks.junit.JUnitResultArchiver.perform(JUnitResultArchiver.java:82) at hudson.model.AbstractBuild$AbstractRunner.performAllBuildStep(AbstractBuild.java:372) at hudson.model.AbstractBuild$AbstractRunner.performAllBuildStep(AbstractBuild.java:360) at hudson.model.Build$RunnerImpl.post2(Build.java:183) at hudson.model.AbstractBuild$AbstractRunner.post(AbstractBuild.java:345) at hudson.model.Run.run(Run.java:943) at hudson.model.Build.run(Build.java:112) at hudson.model.ResourceController.execute(ResourceController.java:93) at hudson.model.Executor.run(Executor.java:119) Caused by: hudson.AbortException: Test reports were found but none of them are new. Did tests run? For example, \files\hudson\workspace\hudson\hudson\main\core\target\surefire-reports\TEST-hudson.BulkChangeTest.xml is 2 days 23 hr old at hudson.tasks.junit.TestResult.parse(TestResult.java:134) at hudson.tasks.junit.TestResult.<init>(TestResult.java:95) at hudson.tasks.junit.JUnitResultArchiver$1.invoke(JUnitResultArchiver.java:95) at hudson.tasks.junit.JUnitResultArchiver$1.invoke(JUnitResultArchiver.java:82) at hudson.FilePath$FileCallableWrapper.call(FilePath.java:1583) at hudson.remoting.UserRequest.perform(UserRequest.java:92) at hudson.remoting.UserRequest.perform(UserRequest.java:46) at hudson.remoting.Request$2.run(Request.java:236) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) at java.util.concurrent.FutureTask.run(FutureTask.java:138) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) at java.lang.Thread.run(Thread.java:619) ........ r17961 | kohsuke | 2009-05-11 15:16:39 -0700 (Mon, 11 May 2009) | 1 line adding Windows JDK silent installation ........ r17962 | kohsuke | 2009-05-11 16:08:13 -0700 (Mon, 11 May 2009) | 1 line Fixing JDK offline installatino for Windows ........ r17970 | kohsuke | 2009-05-11 19:37:59 -0700 (Mon, 11 May 2009) | 1 line Fixing a problem that prevents the usage of this tag in <repeatable> block, which reinserts the same fragment over and over. So statically assigning IDs won't work ........ r17971 | kohsuke | 2009-05-11 22:17:09 -0700 (Mon, 11 May 2009) | 1 line continuing to remove static ID generation, which breaks the tag when used inside <repetable> tag. ........ r17972 | kohsuke | 2009-05-11 22:19:11 -0700 (Mon, 11 May 2009) | 1 line I don't know when this started, but even in the hudson-dev:run mode, the versionis no longer '?', so we need a different way to force reload ........ r17973 | kohsuke | 2009-05-11 22:26:34 -0700 (Mon, 11 May 2009) | 1 line adjusted the text a bit since multiple "add" and "delete"s were rather confusing ........ r17974 | kohsuke | 2009-05-11 22:31:58 -0700 (Mon, 11 May 2009) | 1 line added help screen ........ r17975 | kohsuke | 2009-05-11 22:41:39 -0700 (Mon, 11 May 2009) | 1 line form validation now works against the checkbox, too ........ r17976 | kohsuke | 2009-05-11 22:43:00 -0700 (Mon, 11 May 2009) | 1 line with auto installation, we expect users to specify a directory that doesn't exist yet, so don't report it as an error ........ r17977 | kohsuke | 2009-05-11 22:43:24 -0700 (Mon, 11 May 2009) | 1 line improving the text ........ git-svn-id: https://hudson.dev.java.net/svn/hudson/trunk/hudson/main@17985 71c3de6d-444a-0410-be80-ed276b4c234a
2009-05-12 21:59:10 +08:00
new Ajax.Request(o.postBack, {
method:"post",
parameters:params,
Merged revisions 17324-17325,17428,17430,17473-17475,17481-17482,17555-17563,17571,17593-17595,17619-17620,17637-17644,17656-17657,17663-17665,17667-17670,17730,17753,17755-17758,17763-17768,17770-17771,17901,17906,17911-17912,17958,17961-17962,17970-17977 via svnmerge from https://www.dev.java.net/svn/hudson/branches/tool-autoinstallation ........ r17324 | jglick | 2009-04-20 18:24:32 -0700 (Mon, 20 Apr 2009) | 2 lines Defensive cloning and Javadoc corrections. (Though it seems no one is using the default impls of these methods yet anyway.) ........ r17325 | jglick | 2009-04-20 18:29:06 -0700 (Mon, 20 Apr 2009) | 1 line Deprecation of delegate method is intentional. ........ r17428 | jglick | 2009-04-23 08:07:14 -0700 (Thu, 23 Apr 2009) | 1 line Noting ToolLocationTranslator more prominently. ........ r17430 | jglick | 2009-04-23 09:16:40 -0700 (Thu, 23 Apr 2009) | 1 line Unused imports. ........ r17473 | jglick | 2009-04-23 19:21:11 -0700 (Thu, 23 Apr 2009) | 1 line Allow Plugin.configure to see the StaplerRequest, needed for some kinds of calls. ........ r17474 | jglick | 2009-04-23 19:25:54 -0700 (Thu, 23 Apr 2009) | 3 lines Initial sketch of plugin to manage tool installations across slaves. (Should really be under ../plugins/ but that was not branched, so putting here for the moment.) ........ r17475 | jglick | 2009-04-23 20:29:36 -0700 (Thu, 23 Apr 2009) | 1 line Typo in Javadoc. ........ r17481 | jglick | 2009-04-23 22:46:26 -0700 (Thu, 23 Apr 2009) | 1 line Unzip of an unbuffered stream is painfully slow. ........ r17482 | jglick | 2009-04-23 22:48:01 -0700 (Thu, 23 Apr 2009) | 1 line ZIP-based tool installer now functional. ........ r17555 | jglick | 2009-04-27 17:50:38 -0700 (Mon, 27 Apr 2009) | 1 line Build against newest trunk. ........ r17556 | jglick | 2009-04-27 18:38:28 -0700 (Mon, 27 Apr 2009) | 1 line Adding help. ........ r17557 | jglick | 2009-04-27 18:57:46 -0700 (Mon, 27 Apr 2009) | 1 line Moving toolName & label config GUI into generic files. ........ r17558 | jglick | 2009-04-27 19:37:30 -0700 (Mon, 27 Apr 2009) | 1 line Typo. ........ r17559 | jglick | 2009-04-27 20:07:47 -0700 (Mon, 27 Apr 2009) | 1 line Second tool installer type based on a freeform command. ........ r17560 | jglick | 2009-04-27 20:24:36 -0700 (Mon, 27 Apr 2009) | 1 line installIfNecessaryFrom will now just return false in case the target dir exists but the URL cannot be opened. ........ r17561 | jglick | 2009-04-27 20:25:22 -0700 (Mon, 27 Apr 2009) | 2 lines chmod only if something was actually installed. Use a+x, not o+x. ........ r17562 | jglick | 2009-04-27 20:26:46 -0700 (Mon, 27 Apr 2009) | 1 line Comment only. ........ r17563 | jglick | 2009-04-27 20:41:12 -0700 (Mon, 27 Apr 2009) | 1 line I18N. ........ r17571 | jglick | 2009-04-28 08:15:31 -0700 (Tue, 28 Apr 2009) | 2 lines Wiki link. ........ r17593 | jglick | 2009-04-28 15:38:33 -0700 (Tue, 28 Apr 2009) | 1 line Turn off echo mode, it's just noise. ........ r17594 | jglick | 2009-04-28 15:39:29 -0700 (Tue, 28 Apr 2009) | 2 lines Synchronizing access to installers for a given node/tool combo. Sending log messages to Hudson log in real time. ........ r17595 | jglick | 2009-04-28 15:46:29 -0700 (Tue, 28 Apr 2009) | 1 line Copyrights. ........ r17619 | jglick | 2009-04-29 06:25:23 -0700 (Wed, 29 Apr 2009) | 1 line Improved Javadoc. ........ r17620 | jglick | 2009-04-29 06:51:11 -0700 (Wed, 29 Apr 2009) | 1 line Demonstraing how to use DLJ to mechanically install official JDK releases on supported operating systems. ........ r17637 | kohsuke | 2009-04-30 16:15:24 -0700 (Thu, 30 Apr 2009) | 1 line fixed what appears to be a C&P mistake ........ r17638 | kohsuke | 2009-04-30 16:16:21 -0700 (Thu, 30 Apr 2009) | 1 line show YUI logger if YUI debugging mode is set. ........ r17639 | kohsuke | 2009-04-30 16:52:28 -0700 (Thu, 30 Apr 2009) | 7 lines Fixed a UI script problem when <hetero-list> nests inside <repeatable>. The cause of the problem was that the behavior for inner <hetero-list> kicks in first, altering HTML (by removing "prototypes"), before behavior for outer <repetable> kicks in and removes the master copy from DOM tree. So <repeatable> ends up computing a master copy after some elements are removed, and hence when we try to reinsert them later by clicking "Add", it'll get incorrect copy, and re-execution of the <hetero-list> behavior bombs out. I fixed this by skipping those HTML-altering behaviors if they show up in the part of DOM tree that's supposed to be snapshotted and removed. ........ r17640 | kohsuke | 2009-04-30 16:57:58 -0700 (Thu, 30 Apr 2009) | 7 lines Added ToolProperty to ToolInstallation (which acts like NodeProperty to Node --- basically decorates the base object with additional properties.) The original motivation is to implement ToolInstaller this way, if Jesse is OK. But decorating tools seem to have some other interesting use, such as a plugin for configuring $M2_HOME/conf/settings.xml, or a plugin to insert unlimited cryptography extension to JDK, or a plugin to add a few more jars into $ANT_HOME/lib. For this to work, ToolInstallations that want properties needs to be modified to use a new constructor. For a starter, I modified the JDK class to do this. I also took the opportunity to modernize JDK/config.jelly. ........ r17641 | kohsuke | 2009-04-30 17:02:04 -0700 (Thu, 30 Apr 2009) | 1 line this appears to be a left-over from early days when we didn't have a means to do form validation ........ r17642 | kohsuke | 2009-04-30 17:02:35 -0700 (Thu, 30 Apr 2009) | 1 line we don't need no.such.JDK but we need name. rebranching ........ r17643 | kohsuke | 2009-04-30 17:03:22 -0700 (Thu, 30 Apr 2009) | 1 line rebranched from Hudson's configure.properties ........ r17644 | kohsuke | 2009-04-30 17:05:31 -0700 (Thu, 30 Apr 2009) | 1 line removed unnecessary translations ........ r17656 | kohsuke | 2009-05-01 11:27:36 -0700 (Fri, 01 May 2009) | 1 line Less hack for improved type safety. Asking people to write more code is not necessarily bad as long as what they need to do is obvious to them. ........ r17657 | kohsuke | 2009-05-01 12:07:20 -0700 (Fri, 01 May 2009) | 5 lines The toolautoinst part of the change that corresponds to rev.17640. ToolInstallers are now hooked under ToolInstallation through InstallSourceProperty as a ToolProperty. This allows the relevant UIs to be shown in one place. Still pending Jesse's feedback. Making it a single commit to simplify a revert if necessary ........ r17663 | kohsuke | 2009-05-01 13:23:51 -0700 (Fri, 01 May 2009) | 1 line doc improvement ........ r17664 | kohsuke | 2009-05-01 13:24:10 -0700 (Fri, 01 May 2009) | 1 line needs this to allow Stapler to databind hetero-list automatically ........ r17665 | jglick | 2009-05-01 13:31:27 -0700 (Fri, 01 May 2009) | 1 line Warnings. ........ r17667 | kohsuke | 2009-05-01 14:20:53 -0700 (Fri, 01 May 2009) | 1 line added a method to do chmod ........ r17668 | kohsuke | 2009-05-01 14:30:35 -0700 (Fri, 01 May 2009) | 1 line prefer JDK6 version to avoid unnecessary JNA loading ........ r17669 | kohsuke | 2009-05-01 14:33:09 -0700 (Fri, 01 May 2009) | 1 line no, I must have confused this. ........ r17670 | kohsuke | 2009-05-01 15:57:11 -0700 (Fri, 01 May 2009) | 2 lines - Automated JDK installer and its test. - Minor update to the signature of ToolInstaller for supplying the expected default location. ........ r17730 | kohsuke | 2009-05-04 11:27:34 -0700 (Mon, 04 May 2009) | 1 line avoid NPE as reported in HUDSON-3608 ........ r17753 | jglick | 2009-05-04 19:34:08 -0700 (Mon, 04 May 2009) | 2 lines Moved toolautoinst functionality into core. ........ r17755 | jglick | 2009-05-04 20:28:34 -0700 (Mon, 04 May 2009) | 8 lines Added TaskListener parameter and IOException and InterruptedException to several methods: Run.getEnvironment NodeSpecific.forNode ToolLocationTranslator.getToolHome ToolLocationNodeProperty.getToolHome ToolInstallation.translateFor ProcessCache.Factory.getMavenInstallation ProcessCache.Factory.getJava ........ r17756 | jglick | 2009-05-04 20:36:56 -0700 (Mon, 04 May 2009) | 1 line expectedLocation was never strictly necessary, and will soon no longer be used even by JDKInstaller. ........ r17757 | jglick | 2009-05-04 20:40:41 -0700 (Mon, 04 May 2009) | 1 line Not sure yet what @since should be. ........ r17758 | jglick | 2009-05-04 20:41:51 -0700 (Mon, 04 May 2009) | 1 line getDefaultInstallers method added. Not yet in use. ........ r17763 | kohsuke | 2009-05-05 10:50:36 -0700 (Tue, 05 May 2009) | 1 line deprecated redundant getJavaHome method ........ r17764 | kohsuke | 2009-05-05 12:10:45 -0700 (Tue, 05 May 2009) | 1 line added general-purpose property defaulting mechanism, and added default tool installer for JDK ........ r17765 | jglick | 2009-05-05 12:35:56 -0700 (Tue, 05 May 2009) | 1 line capitalize("") -> "" ........ r17766 | jglick | 2009-05-05 12:49:52 -0700 (Tue, 05 May 2009) | 1 line Missing @since. ........ r17767 | jglick | 2009-05-05 13:01:41 -0700 (Tue, 05 May 2009) | 1 line Unchecked warning. ........ r17768 | jglick | 2009-05-05 13:19:49 -0700 (Tue, 05 May 2009) | 2 lines Two unsuccessful attempts at form validation. ........ r17770 | jglick | 2009-05-05 13:48:37 -0700 (Tue, 05 May 2009) | 1 line Better class names. ........ r17771 | kohsuke | 2009-05-05 14:12:21 -0700 (Tue, 05 May 2009) | 5 lines brought the form validation check back. The trick is to use the 'value' parameter. In the end we'd expect this check to go away anyway, as we change input field to drop-down list, but in the mean time, this is why it didn't work. Maybe we probably need more static code checkers? Like FindBugs rules? ........ r17901 | kohsuke | 2009-05-09 19:15:40 -0700 (Sat, 09 May 2009) | 1 line having two toolHome is odd. ........ r17906 | kohsuke | 2009-05-10 11:09:13 -0700 (Sun, 10 May 2009) | 1 line adding the generalization of UpdateCenter, but for compatibility reasons, we are leaving UpdateCenter as-is. ........ r17911 | kohsuke | 2009-05-10 17:02:53 -0700 (Sun, 10 May 2009) | 1 line integrated json-lib with a bit of bug fix ........ r17912 | kohsuke | 2009-05-10 17:13:05 -0700 (Sun, 10 May 2009) | 1 line JDK list is now fetched from hudson.dev.java.net ........ r17958 | kohsuke | 2009-05-11 13:44:25 -0700 (Mon, 11 May 2009) | 48 lines Handle AbortException better to avoid error like this: [INFO] ------------------------------------------------------------------------ [ERROR] BUILD ERROR [INFO] ------------------------------------------------------------------------ [INFO] Failed to delete directory: C:\files\hudson\workspace\hudson\hudson\main\remoting\target. Reason: Unable to delete file C:\files\hudson\workspace\hudson\hudson\main\remoting\target\remoting-1.304-SNAPSHOT.jar [INFO] ------------------------------------------------------------------------ [INFO] For more information, run Maven with the -e switch [INFO] ------------------------------------------------------------------------ [INFO] Total time: 31 seconds [INFO] Finished at: Sun May 10 18:15:33 PDT 2009 [INFO] Final Memory: 25M/48M [INFO] ------------------------------------------------------------------------ Recording fingerprints Archiving artifacts Recording test results ERROR: Failed to archive JUnit reports hudson.util.IOException2: remote file operation failed at hudson.FilePath.act(FilePath.java:596) at hudson.tasks.junit.JUnitResultArchiver.perform(JUnitResultArchiver.java:82) at hudson.model.AbstractBuild$AbstractRunner.performAllBuildStep(AbstractBuild.java:372) at hudson.model.AbstractBuild$AbstractRunner.performAllBuildStep(AbstractBuild.java:360) at hudson.model.Build$RunnerImpl.post2(Build.java:183) at hudson.model.AbstractBuild$AbstractRunner.post(AbstractBuild.java:345) at hudson.model.Run.run(Run.java:943) at hudson.model.Build.run(Build.java:112) at hudson.model.ResourceController.execute(ResourceController.java:93) at hudson.model.Executor.run(Executor.java:119) Caused by: hudson.AbortException: Test reports were found but none of them are new. Did tests run? For example, \files\hudson\workspace\hudson\hudson\main\core\target\surefire-reports\TEST-hudson.BulkChangeTest.xml is 2 days 23 hr old at hudson.tasks.junit.TestResult.parse(TestResult.java:134) at hudson.tasks.junit.TestResult.<init>(TestResult.java:95) at hudson.tasks.junit.JUnitResultArchiver$1.invoke(JUnitResultArchiver.java:95) at hudson.tasks.junit.JUnitResultArchiver$1.invoke(JUnitResultArchiver.java:82) at hudson.FilePath$FileCallableWrapper.call(FilePath.java:1583) at hudson.remoting.UserRequest.perform(UserRequest.java:92) at hudson.remoting.UserRequest.perform(UserRequest.java:46) at hudson.remoting.Request$2.run(Request.java:236) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) at java.util.concurrent.FutureTask.run(FutureTask.java:138) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) at java.lang.Thread.run(Thread.java:619) ........ r17961 | kohsuke | 2009-05-11 15:16:39 -0700 (Mon, 11 May 2009) | 1 line adding Windows JDK silent installation ........ r17962 | kohsuke | 2009-05-11 16:08:13 -0700 (Mon, 11 May 2009) | 1 line Fixing JDK offline installatino for Windows ........ r17970 | kohsuke | 2009-05-11 19:37:59 -0700 (Mon, 11 May 2009) | 1 line Fixing a problem that prevents the usage of this tag in <repeatable> block, which reinserts the same fragment over and over. So statically assigning IDs won't work ........ r17971 | kohsuke | 2009-05-11 22:17:09 -0700 (Mon, 11 May 2009) | 1 line continuing to remove static ID generation, which breaks the tag when used inside <repetable> tag. ........ r17972 | kohsuke | 2009-05-11 22:19:11 -0700 (Mon, 11 May 2009) | 1 line I don't know when this started, but even in the hudson-dev:run mode, the versionis no longer '?', so we need a different way to force reload ........ r17973 | kohsuke | 2009-05-11 22:26:34 -0700 (Mon, 11 May 2009) | 1 line adjusted the text a bit since multiple "add" and "delete"s were rather confusing ........ r17974 | kohsuke | 2009-05-11 22:31:58 -0700 (Mon, 11 May 2009) | 1 line added help screen ........ r17975 | kohsuke | 2009-05-11 22:41:39 -0700 (Mon, 11 May 2009) | 1 line form validation now works against the checkbox, too ........ r17976 | kohsuke | 2009-05-11 22:43:00 -0700 (Mon, 11 May 2009) | 1 line with auto installation, we expect users to specify a directory that doesn't exist yet, so don't report it as an error ........ r17977 | kohsuke | 2009-05-11 22:43:24 -0700 (Mon, 11 May 2009) | 1 line improving the text ........ git-svn-id: https://hudson.dev.java.net/svn/hudson/trunk/hudson/main@17985 71c3de6d-444a-0410-be80-ed276b4c234a
2009-05-12 21:59:10 +08:00
onSuccess: function() {
if(o.completionHandler!=null)
o.completionHandler();
}
});
}
};
// update center service. for historical reasons,
// this is separate from downloadSerivce
var updateCenter = {
postBackURL : null,
info: {},
completionHandler: null,
crumbName: null,
crumb: null,
url: "https://hudson.dev.java.net/",
checkUpdates : function() {
loadScript(updateCenter.url+"update-center.json?"+Hash.toQueryString(updateCenter.info));
},
post : function(data) {
var params = new Array(2);
params["json"] = Object.toJSON(data);
params[updateCenter.crumbName] = updateCenter.crumb;
new Ajax.Request(updateCenter.postBackURL, {
method:"post",
parameters:params,
onSuccess: function() {
if(updateCenter.completionHandler!=null)
updateCenter.completionHandler();
}
});
}
};
/*
redirects to a page once the page is ready.
@param url
Specifies the URL to redirect the user.
*/
function applySafeRedirector(url) {
var i=0;
new PeriodicalExecuter(function() {
i = (i+1)%4;
var s = "";
for( var j=0; j<i; j++ )
s+='.';
$('progress').innerHTML = s;
},1);
window.setTimeout(function() {
var statusChecker = arguments.callee;
new Ajax.Request(url, {
method: "get",
onFailure: function(rsp) {
if(rsp.status==503) {
// redirect as long as we are still loading
window.setTimeout(statusChecker,5000);
} else {
window.location.replace(url);
}
},
onSuccess: function(rsp) {
if(rsp.status!=200) {
// if connection fails, somehow Prototype thinks it's a success
window.setTimeout(statusChecker,5000);
} else {
window.location.replace(url);
}
}
});
}, 5000);
}
Merged revisions 11754-11755,11763-11766,11770,11773-11777,11791-11797,11828-11829,11831-11839,11841-11843,11850,11854,11994,12774,12778-12793,12820-12822,12831-12841,12854-12855,12860-12882,12896-12905,12914-12920,12938-12941,12950,13045-13046,13048,13063-13064,13066,13072-13076,13111,13122-13147,13150,13153-13158,13487-13488,13851-13852,13854-13856,13859,13866-13867,13869,13872-13876,13878-13879,13883-13885,13887-13890,13896-13919 via svnmerge from https://www.dev.java.net/svn/hudson/branches/multiple-computer-per-node ................ r11754 | kohsuke | 2008-08-25 17:59:14 -0700 (Mon, 25 Aug 2008) | 3 lines Adding EphemeralNode for non-persisted dynamically-allocated expandable/shrinkable slave pool. Tweaked the serialization of Hudson.slaves accordingly. ................ r11755 | kohsuke | 2008-08-25 18:10:42 -0700 (Mon, 25 Aug 2008) | 1 line making a small improvements ................ r11763 | kohsuke | 2008-08-26 13:57:25 -0700 (Tue, 26 Aug 2008) | 1 line adding more convenience methods ................ r11764 | kohsuke | 2008-08-26 14:24:20 -0700 (Tue, 26 Aug 2008) | 1 line ported mask capability from the TFS plugin to the core. ................ r11765 | kohsuke | 2008-08-26 14:26:25 -0700 (Tue, 26 Aug 2008) | 1 line making it non-final to allow for subclassing ................ r11766 | kohsuke | 2008-08-26 14:35:20 -0700 (Tue, 26 Aug 2008) | 1 line test case for NodeList ................ r11770 | kohsuke | 2008-08-26 15:15:21 -0700 (Tue, 26 Aug 2008) | 3 lines Wrote a simple tool that monitors a file system change (in a poor way) and triggers a build. ................ r11773 | kohsuke | 2008-08-26 17:20:30 -0700 (Tue, 26 Aug 2008) | 1 line made more structured ................ r11774 | kohsuke | 2008-08-26 17:47:41 -0700 (Tue, 26 Aug 2008) | 1 line indentation fix ................ r11775 | kohsuke | 2008-08-26 17:48:22 -0700 (Tue, 26 Aug 2008) | 1 line remove the use of a deprecated feature. ................ r11776 | kohsuke | 2008-08-26 17:51:54 -0700 (Tue, 26 Aug 2008) | 1 line renamed to 'ALL' to be consistent with recent use of DescriptorList ................ r11777 | kohsuke | 2008-08-26 18:04:17 -0700 (Tue, 26 Aug 2008) | 1 line adding NodeFactory list and its configuration mechanism ................ r11791 | kohsuke | 2008-08-27 09:43:38 -0700 (Wed, 27 Aug 2008) | 1 line picked up the latest jelly with Iterable support in <j:forEach> ................ r11792 | kohsuke | 2008-08-27 09:44:08 -0700 (Wed, 27 Aug 2008) | 1 line Iterable support added in commons-jelly 1.1-hudson-20080826 ................ r11793 | kohsuke | 2008-08-27 10:15:14 -0700 (Wed, 27 Aug 2008) | 2 lines - added name to NodeFactory for binding NodeFactory to URL tree. - NodeFactory should be access controlled ................ r11794 | kohsuke | 2008-08-27 10:41:11 -0700 (Wed, 27 Aug 2008) | 1 line added a method to add one Node at a time ................ r11795 | kohsuke | 2008-08-27 10:41:37 -0700 (Wed, 27 Aug 2008) | 1 line added permission constatnt ................ r11796 | kohsuke | 2008-08-27 10:42:13 -0700 (Wed, 27 Aug 2008) | 1 line allowing the launch method to throw an exception. ................ r11797 | kohsuke | 2008-08-27 10:44:13 -0700 (Wed, 27 Aug 2008) | 1 line improving the handling ................ r11828 | kohsuke | 2008-08-29 11:07:16 -0700 (Fri, 29 Aug 2008) | 1 line added executor config to the sidebar. ................ r11829 | kohsuke | 2008-08-29 11:16:11 -0700 (Fri, 29 Aug 2008) | 1 line "it" should be assigned to NodeFactory ................ r11831 | kohsuke | 2008-08-29 11:44:41 -0700 (Fri, 29 Aug 2008) | 1 line formatting changes ................ r11832 | kohsuke | 2008-08-29 11:59:21 -0700 (Fri, 29 Aug 2008) | 1 line added a script to create a flashing image from any picture ................ r11833 | kohsuke | 2008-08-29 12:07:56 -0700 (Fri, 29 Aug 2008) | 1 line doc improvement. ................ r11834 | kohsuke | 2008-08-29 13:37:59 -0700 (Fri, 29 Aug 2008) | 1 line added new images to indicate that a slave is launching ................ r11835 | kohsuke | 2008-08-29 13:43:41 -0700 (Fri, 29 Aug 2008) | 1 line indicate a launching slave accordingly. ................ r11836 | kohsuke | 2008-08-29 14:02:28 -0700 (Fri, 29 Aug 2008) | 1 line added a method to remove a Node. ................ r11837 | kohsuke | 2008-08-29 14:02:38 -0700 (Fri, 29 Aug 2008) | 1 line disconnect ................ r11838 | kohsuke | 2008-08-29 14:03:22 -0700 (Fri, 29 Aug 2008) | 1 line formatting changes ................ r11839 | kohsuke | 2008-08-29 14:14:04 -0700 (Fri, 29 Aug 2008) | 1 line allowing subclasses. ................ r11841 | kohsuke | 2008-08-29 14:28:29 -0700 (Fri, 29 Aug 2008) | 1 line constructor should be the first in the definition. ................ r11842 | kohsuke | 2008-08-29 14:31:01 -0700 (Fri, 29 Aug 2008) | 1 line doc improvement. ................ r11843 | kohsuke | 2008-08-29 14:32:48 -0700 (Fri, 29 Aug 2008) | 1 line fixed a problem of using partially constructed object during launch(), because the setNode() method is called from the Computer constructor. ................ r11850 | kohsuke | 2008-08-29 14:50:36 -0700 (Fri, 29 Aug 2008) | 1 line serialize NodeFactory first so that references to them from NodeList will become references in XML. ................ r11854 | kohsuke | 2008-08-29 14:56:56 -0700 (Fri, 29 Aug 2008) | 1 line cleaning up a bit. ................ r11994 | kohsuke | 2008-09-03 14:42:11 -0700 (Wed, 03 Sep 2008) | 21 lines Fixed ArrayIndexOutOfBoundsException during replace(), when the title contains a '$' literal. The typical stack trace looks like: Caused by: java.lang.ArrayIndexOutOfBoundsException: 32 at hudson.MarkupText$SubText.start(MarkupText.java:95) at hudson.MarkupText$SubText.group(MarkupText.java:131) at hudson.MarkupText$SubText.replace(MarkupText.java:154) at hudson.MarkupText$SubText.surroundWith(MarkupText.java:83) at hudson.plugins.jira.JiraChangeLogAnnotator.annotate(JiraChangeLogAnnotator.java:37) at hudson.scm.ChangeLogSet$Entry.getMsgAnnotated(ChangeLogSet.java:117) ... 148 more Vijayan Jayaraman and I found this problem while we were looking at the server log of Hudson for OpenJFX. Adding a unit test to verify this behavior, too. ................ r12774 | kohsuke | 2008-10-27 15:03:36 -0700 (Mon, 27 Oct 2008) | 3 lines preparing for heterogenousness in Node, so that different Node can be configured with different UIs, much like how different Jobs can be configured. Creating a slave works also like creating a new job. ................ r12778 | kohsuke | 2008-10-27 15:06:51 -0700 (Mon, 27 Oct 2008) | 1 line We need to be able to create an emtpy Slave initially, so we have to do with the check in the form field validation. ................ r12779 | kohsuke | 2008-10-27 15:48:04 -0700 (Mon, 27 Oct 2008) | 1 line making the new slave page a two-step process ................ r12780 | kohsuke | 2008-10-27 15:48:24 -0700 (Mon, 27 Oct 2008) | 1 line fixed a compilation problem ................ r12781 | kohsuke | 2008-10-27 15:53:30 -0700 (Mon, 27 Oct 2008) | 1 line bug fixes ................ r12782 | kohsuke | 2008-10-27 15:58:20 -0700 (Mon, 27 Oct 2008) | 1 line bug fixes ................ r12783 | kohsuke | 2008-10-27 16:08:56 -0700 (Mon, 27 Oct 2008) | 1 line making the configuration page work for slaves ................ r12784 | kohsuke | 2008-10-27 16:35:17 -0700 (Mon, 27 Oct 2008) | 1 line added new-computer.svg ................ r12785 | kohsuke | 2008-10-27 16:37:26 -0700 (Mon, 27 Oct 2008) | 1 line hooking up the config/create pages to the UI ................ r12786 | kohsuke | 2008-10-27 16:44:40 -0700 (Mon, 27 Oct 2008) | 1 line fixed a copy method. ................ r12787 | kohsuke | 2008-10-27 16:47:33 -0700 (Mon, 27 Oct 2008) | 1 line code was broken when a slave was renamed ................ r12788 | kohsuke | 2008-10-27 16:58:04 -0700 (Mon, 27 Oct 2008) | 1 line moving out the commonality into a new tag ................ r12789 | kohsuke | 2008-10-27 17:01:21 -0700 (Mon, 27 Oct 2008) | 1 line consistent term usage ................ r12790 | kohsuke | 2008-10-27 17:03:19 -0700 (Mon, 27 Oct 2008) | 1 line retiring the configureExecutors. Slave configuration is now moved to individual slave page ................ r12791 | kohsuke | 2008-10-27 17:10:32 -0700 (Mon, 27 Oct 2008) | 1 line retired configureExecutors.jelly and completed moved its contents to somewhere else ................ r12792 | kohsuke | 2008-10-27 17:21:53 -0700 (Mon, 27 Oct 2008) | 1 line bug fix. request handling of "/descriptor/FQCN/..." was broken. ................ r12793 | kohsuke | 2008-10-27 17:27:08 -0700 (Mon, 27 Oct 2008) | 1 line NodeFactory -> Cloud to encourage consistent term usage between the code and the UI. ................ r12820 | kohsuke | 2008-10-29 10:58:20 -0700 (Wed, 29 Oct 2008) | 1 line formatting fix ................ r12821 | kohsuke | 2008-10-29 11:17:49 -0700 (Wed, 29 Oct 2008) | 1 line added classes for handling a secret and prevent accidental exposure of a secret in the persisted form ................ r12822 | kohsuke | 2008-10-29 11:32:39 -0700 (Wed, 29 Oct 2008) | 1 line added a base64 validator ................ r12831 | kohsuke | 2008-10-29 15:58:45 -0700 (Wed, 29 Oct 2008) | 1 line secret key needs to be persisted outside config.xml (and it is, already!) ................ r12832 | kohsuke | 2008-10-29 16:06:28 -0700 (Wed, 29 Oct 2008) | 1 line started working on Amazon EC2 plugin ................ r12833 | kohsuke | 2008-10-29 16:09:20 -0700 (Wed, 29 Oct 2008) | 1 line brought the same enhancement as in <textbox /> ................ r12834 | kohsuke | 2008-10-29 16:15:05 -0700 (Wed, 29 Oct 2008) | 1 line copy over the onclick handler from the original button element ................ r12835 | kohsuke | 2008-10-29 17:01:04 -0700 (Wed, 29 Oct 2008) | 1 line allow OK messages to be sent with some mark up. ................ r12836 | kohsuke | 2008-10-29 17:06:52 -0700 (Wed, 29 Oct 2008) | 1 line added connection testing. This pattern needs to be generalized since it happens often ................ r12837 | kohsuke | 2008-10-29 17:13:11 -0700 (Wed, 29 Oct 2008) | 1 line this is little better ................ r12838 | kohsuke | 2008-10-29 17:17:44 -0700 (Wed, 29 Oct 2008) | 1 line added spinner ................ r12839 | kohsuke | 2008-10-29 17:31:54 -0700 (Wed, 29 Oct 2008) | 1 line restructuring the validation button support in a form that can be readily moved to the core. ................ r12840 | kohsuke | 2008-10-29 18:01:41 -0700 (Wed, 29 Oct 2008) | 1 line added <f:validateButton/> for multi-field server-side validation ................ r12841 | kohsuke | 2008-10-29 18:03:12 -0700 (Wed, 29 Oct 2008) | 1 line logic moved to <f:validateButton/> in the core. ................ r12854 | kohsuke | 2008-10-30 13:32:58 -0700 (Thu, 30 Oct 2008) | 1 line @QueryParameter.value won't be necessary any more ................ r12855 | kohsuke | 2008-10-30 13:42:58 -0700 (Thu, 30 Oct 2008) | 1 line need a strongly-typed constructor. ................ r12860 | kohsuke | 2008-10-30 15:24:18 -0700 (Thu, 30 Oct 2008) | 1 line adding more reflection support, which in turn we use in taglibs to raise the level of abstraction. ................ r12861 | kohsuke | 2008-10-30 15:33:22 -0700 (Thu, 30 Oct 2008) | 1 line added a tag to create databinding to a<select> element from an enum property ................ r12862 | kohsuke | 2008-10-30 15:37:44 -0700 (Thu, 30 Oct 2008) | 1 line adding a smarter bi-directional binding through <f:repeatable field="..."/> ................ r12863 | kohsuke | 2008-10-30 15:47:48 -0700 (Thu, 30 Oct 2008) | 1 line making progress with the EC2 support ................ r12864 | kohsuke | 2008-10-30 16:12:34 -0700 (Thu, 30 Oct 2008) | 1 line added form field validation for AMI ID ................ r12865 | kohsuke | 2008-10-30 16:15:44 -0700 (Thu, 30 Oct 2008) | 1 line added simpler version ................ r12866 | kohsuke | 2008-10-30 16:17:15 -0700 (Thu, 30 Oct 2008) | 1 line doc improvement ................ r12867 | kohsuke | 2008-10-30 16:17:19 -0700 (Thu, 30 Oct 2008) | 1 line simplified a bit ................ r12868 | kohsuke | 2008-10-30 16:40:25 -0700 (Thu, 30 Oct 2008) | 1 line doc improvement ................ r12869 | kohsuke | 2008-10-30 17:00:57 -0700 (Thu, 30 Oct 2008) | 1 line adding the provisioning of the new slave ................ r12870 | kohsuke | 2008-10-30 17:07:27 -0700 (Thu, 30 Oct 2008) | 1 line /** {@inheritDoc} */ is the default behavior for javadoc, so there's no point in making that explicit. ................ r12871 | kohsuke | 2008-10-30 17:11:04 -0700 (Thu, 30 Oct 2008) | 1 line doc bug fix ................ r12872 | kohsuke | 2008-10-30 17:17:20 -0700 (Thu, 30 Oct 2008) | 1 line simplified a bit ................ r12873 | kohsuke | 2008-10-30 17:19:06 -0700 (Thu, 30 Oct 2008) | 1 line added RetentionStrategy for EC2 instances ................ r12874 | kohsuke | 2008-10-30 17:21:17 -0700 (Thu, 30 Oct 2008) | 1 line allowing subclasses to override the disconnect behavior. ................ r12875 | kohsuke | 2008-10-30 18:02:35 -0700 (Thu, 30 Oct 2008) | 1 line added termination ................ r12876 | kohsuke | 2008-10-30 18:05:30 -0700 (Thu, 30 Oct 2008) | 1 line forgot to rename when NodeFactory was renamed to Cloud ................ r12877 | kohsuke | 2008-10-30 18:06:08 -0700 (Thu, 30 Oct 2008) | 1 line using the console icon ................ r12878 | kohsuke | 2008-10-30 18:17:20 -0700 (Thu, 30 Oct 2008) | 1 line adding UI to remove a slave. ................ r12879 | kohsuke | 2008-10-30 18:48:57 -0700 (Thu, 30 Oct 2008) | 1 line commons-discovery now needed in stapler ................ r12880 | kohsuke | 2008-10-30 18:50:27 -0700 (Thu, 30 Oct 2008) | 1 line needs to use a newer version of stapler ................ r12881 | kohsuke | 2008-10-30 18:51:02 -0700 (Thu, 30 Oct 2008) | 1 line Bye bye CVS ................ r12882 | kohsuke | 2008-10-30 18:51:43 -0700 (Thu, 30 Oct 2008) | 1 line Bye bye CVS ................ r12896 | kohsuke | 2008-10-31 14:52:07 -0700 (Fri, 31 Oct 2008) | 1 line fixed the ordering between field and the mighty get(String) method. ................ r12897 | kohsuke | 2008-10-31 15:08:41 -0700 (Fri, 31 Oct 2008) | 1 line fixed test compilation problems ................ r12898 | kohsuke | 2008-10-31 15:11:25 -0700 (Fri, 31 Oct 2008) | 1 line marking this as a model object since it's always bound to URL. ................ r12899 | kohsuke | 2008-10-31 15:13:42 -0700 (Fri, 31 Oct 2008) | 1 line adding UI hook up to manually provision a new node ................ r12900 | kohsuke | 2008-10-31 15:14:00 -0700 (Fri, 31 Oct 2008) | 1 line after merging the trunk the version number is different ................ r12901 | kohsuke | 2008-10-31 15:21:54 -0700 (Fri, 31 Oct 2008) | 1 line adding UI hook up for provisioning a new slave ................ r12902 | kohsuke | 2008-10-31 15:45:10 -0700 (Fri, 31 Oct 2008) | 1 line adding a hook to decorate ComputerLauncher. ................ r12903 | kohsuke | 2008-10-31 15:48:21 -0700 (Fri, 31 Oct 2008) | 1 line added filtering support ................ r12904 | kohsuke | 2008-10-31 15:52:45 -0700 (Fri, 31 Oct 2008) | 1 line added view ................ r12905 | kohsuke | 2008-10-31 15:53:49 -0700 (Fri, 31 Oct 2008) | 1 line doc improvement ................ r12914 | kohsuke | 2008-11-01 17:45:57 -0700 (Sat, 01 Nov 2008) | 1 line adding code for connecting with SSH ................ r12915 | kohsuke | 2008-11-01 17:49:28 -0700 (Sat, 01 Nov 2008) | 1 line working on launchers ................ r12916 | kohsuke | 2008-11-01 18:33:12 -0700 (Sat, 01 Nov 2008) | 1 line added a method to fully read a stream ................ r12917 | kohsuke | 2008-11-01 18:33:45 -0700 (Sat, 01 Nov 2008) | 1 line bumped up stapler ................ r12918 | kohsuke | 2008-11-01 18:39:41 -0700 (Sat, 01 Nov 2008) | 1 line doc improvement. ................ r12919 | kohsuke | 2008-11-01 18:45:24 -0700 (Sat, 01 Nov 2008) | 1 line added a launcher ................ r12920 | kohsuke | 2008-11-01 18:55:02 -0700 (Sat, 01 Nov 2008) | 1 line implementing the actual ComputerLauncher ................ r12938 | kohsuke | 2008-11-02 08:56:05 -0800 (Sun, 02 Nov 2008) | 1 line support the field notation ................ r12939 | kohsuke | 2008-11-02 09:20:21 -0800 (Sun, 02 Nov 2008) | 1 line added the mechanism to execute the init script ................ r12940 | kohsuke | 2008-11-02 09:21:38 -0800 (Sun, 02 Nov 2008) | 1 line simplification ................ r12941 | kohsuke | 2008-11-02 09:36:21 -0800 (Sun, 02 Nov 2008) | 1 line adding key handling ................ r12950 | kohsuke | 2008-11-03 11:00:58 -0800 (Mon, 03 Nov 2008) | 1 line formatting changes ................ r13045 | kohsuke | 2008-11-06 15:24:32 -0800 (Thu, 06 Nov 2008) | 1 line adding time series datatype for retaining load average statistics in memory ................ r13046 | kohsuke | 2008-11-06 15:59:02 -0800 (Thu, 06 Nov 2008) | 1 line added a convenience method. ................ r13048 | kohsuke | 2008-11-06 16:21:54 -0800 (Thu, 06 Nov 2008) | 2 lines - started monitoring # of executor statistics. - exposed label to the remote API ................ r13063 | kohsuke | 2008-11-07 13:05:15 -0800 (Fri, 07 Nov 2008) | 1 line added a convenience method. ................ r13064 | kohsuke | 2008-11-07 13:11:08 -0800 (Fri, 07 Nov 2008) | 1 line monitor the length of the queue too ................ r13066 | kohsuke | 2008-11-07 14:15:56 -0800 (Fri, 07 Nov 2008) | 1 line moved the stats to its own class. ................ r13072 | kohsuke | 2008-11-07 15:40:29 -0800 (Fri, 07 Nov 2008) | 1 line adding provisioning logic based on load statistics ................ r13073 | kohsuke | 2008-11-07 15:46:00 -0800 (Fri, 07 Nov 2008) | 1 line for effective testing, we need sub-sec precision ................ r13074 | kohsuke | 2008-11-07 16:24:44 -0800 (Fri, 07 Nov 2008) | 1 line fixed a lie. ................ r13075 | kohsuke | 2008-11-07 16:25:12 -0800 (Fri, 07 Nov 2008) | 1 line bug fix ................ r13076 | kohsuke | 2008-11-07 16:30:55 -0800 (Fri, 07 Nov 2008) | 1 line avoid using deprecated methods ................ r13111 | kohsuke | 2008-11-09 11:54:23 -0800 (Sun, 09 Nov 2008) | 1 line added the Future<?> return parameter to Computer.launch(). To do this w/o breaking compatibility, renamed launch to connect. ................ r13122 | kohsuke | 2008-11-10 14:38:03 -0800 (Mon, 10 Nov 2008) | 1 line allow programmatic update of the assigned label ................ r13123 | kohsuke | 2008-11-10 14:38:40 -0800 (Mon, 10 Nov 2008) | 1 line Iterator not needed because CopyOnWriteArrayList doesn't support removal via iterator. ................ r13124 | kohsuke | 2008-11-10 14:39:24 -0800 (Mon, 10 Nov 2008) | 1 line added another Builder for tests ................ r13125 | kohsuke | 2008-11-10 14:39:48 -0800 (Mon, 10 Nov 2008) | 1 line simplified a bit. This TestEnvironment stuff needs some clearer story. ................ r13126 | kohsuke | 2008-11-10 14:46:40 -0800 (Mon, 10 Nov 2008) | 1 line IDEA complains about this. ................ r13127 | kohsuke | 2008-11-10 14:51:53 -0800 (Mon, 10 Nov 2008) | 1 line improved the error diagnostics by displaying why a provisioned node failed to launch ................ r13128 | kohsuke | 2008-11-10 14:52:12 -0800 (Mon, 10 Nov 2008) | 1 line Started a test case for NodeProvisioner ................ r13129 | kohsuke | 2008-11-10 14:52:27 -0800 (Mon, 10 Nov 2008) | 1 line formatting changes ................ r13130 | kohsuke | 2008-11-10 15:16:02 -0800 (Mon, 10 Nov 2008) | 1 line report the failure as a failure. ................ r13131 | kohsuke | 2008-11-10 16:34:23 -0800 (Mon, 10 Nov 2008) | 1 line adding a parameter to the connect method to support joining to the pending launch activity. ................ r13132 | kohsuke | 2008-11-10 16:38:31 -0800 (Mon, 10 Nov 2008) | 1 line making members public so that it can be accessed from other classes (DummyCloudImpl was the first to do this) ................ r13133 | kohsuke | 2008-11-10 16:38:58 -0800 (Mon, 10 Nov 2008) | 1 line split the cloud implementation to a separate class to allow reuse. ................ r13134 | kohsuke | 2008-11-10 16:56:27 -0800 (Mon, 10 Nov 2008) | 1 line assign unique names to support multiple jobs ................ r13135 | kohsuke | 2008-11-10 17:11:31 -0800 (Mon, 10 Nov 2008) | 1 line avoid unnecessary interruption ................ r13136 | kohsuke | 2008-11-10 17:11:41 -0800 (Mon, 10 Nov 2008) | 1 line adding another test case ................ r13137 | kohsuke | 2008-11-10 17:16:28 -0800 (Mon, 10 Nov 2008) | 1 line cleaned up a test case ................ r13138 | kohsuke | 2008-11-10 17:36:52 -0800 (Mon, 10 Nov 2008) | 1 line since the setNode method is called on every Computer just by adding a new node, don't force a new launch attempt. ................ r13139 | kohsuke | 2008-11-10 17:37:38 -0800 (Mon, 10 Nov 2008) | 1 line perform orderly shutdown by giving computers enough time to disconnect. ................ r13140 | kohsuke | 2008-11-10 17:38:08 -0800 (Mon, 10 Nov 2008) | 3 lines return Future for synchronization. This breaks binary compatibility, but I checked none of the plugins in Hudson SVN uses this, so I hope this is OK. ................ r13141 | kohsuke | 2008-11-10 17:38:46 -0800 (Mon, 10 Nov 2008) | 1 line improved diagnostics ................ r13142 | kohsuke | 2008-11-10 17:39:55 -0800 (Mon, 10 Nov 2008) | 1 line removed compiler warning ................ r13143 | kohsuke | 2008-11-10 18:02:56 -0800 (Mon, 10 Nov 2008) | 1 line hide the rounding related problem from Cloud by passing int instead of float. ................ r13144 | kohsuke | 2008-11-10 18:10:10 -0800 (Mon, 10 Nov 2008) | 1 line bug fix ................ r13145 | kohsuke | 2008-11-10 18:11:51 -0800 (Mon, 10 Nov 2008) | 1 line formatting changes ................ r13146 | kohsuke | 2008-11-10 18:15:08 -0800 (Mon, 10 Nov 2008) | 1 line moved the slave launch code to HudsonTestCase for reuse ................ r13147 | kohsuke | 2008-11-10 18:20:19 -0800 (Mon, 10 Nov 2008) | 1 line adding another test case ................ r13150 | kohsuke | 2008-11-11 07:28:53 -0800 (Tue, 11 Nov 2008) | 1 line bug fix ................ r13153 | kohsuke | 2008-11-11 14:04:21 -0800 (Tue, 11 Nov 2008) | 1 line cutting down the test size to 5 to increase the test speed ................ r13154 | kohsuke | 2008-11-11 14:04:37 -0800 (Tue, 11 Nov 2008) | 1 line improved debuggability ................ r13155 | kohsuke | 2008-11-11 14:10:04 -0800 (Tue, 11 Nov 2008) | 1 line added another convenience method ................ r13156 | kohsuke | 2008-11-11 14:10:21 -0800 (Tue, 11 Nov 2008) | 1 line further reduce the test turn around time ................ r13157 | kohsuke | 2008-11-11 14:22:03 -0800 (Tue, 11 Nov 2008) | 1 line doc improvement and clean up ................ r13158 | kohsuke | 2008-11-11 14:22:28 -0800 (Tue, 11 Nov 2008) | 1 line added a new metho ................ r13487 | kohsuke | 2008-12-09 17:17:30 -0800 (Tue, 09 Dec 2008) | 1 line SlaveTemplate needs to be able to computer # of executors. ................ r13488 | kohsuke | 2008-12-09 17:18:05 -0800 (Tue, 09 Dec 2008) | 1 line fixed a compilation problem with the latest head of the branch ................ r13851 | kohsuke | 2008-12-24 13:40:43 -0800 (Wed, 24 Dec 2008) | 82 lines fixed a dead lock reported by Jesse. Found one Java-level deadlock: ============================= "Executor #0 for master": waiting to lock monitor 0x09409bac (object 0x87474ca0, a hudson.util.CopyOnWriteMap$Hash), which is held by "main" "main": waiting to lock monitor 0x09409b48 (object 0x87474d48, a hudson.model.Hudson$MasterComputer), which is held by "Executor #0 for master" Java stack information for the threads listed above: =================================================== "Executor #0 for master": at hudson.util.CopyOnWriteMap.remove(CopyOnWriteMap.java:78) - waiting to lock <0x87474ca0> (a hudson.util.CopyOnWriteMap$Hash) at hudson.model.Hudson.removeComputer(Hudson.java:717) at hudson.model.Computer.removeExecutor(Computer.java:433) - locked <0x87474d48> (a hudson.model.Hudson$MasterComputer) at hudson.model.Executor.run(Executor.java:65) - locked <0x87474d48> (a hudson.model.Hudson$MasterComputer) "main": at hudson.model.Computer.setNumExecutors(Computer.java:338) - waiting to lock <0x87474d48> (a hudson.model.Hudson$MasterComputer) at hudson.model.Computer.setNode(Computer.java:327) at hudson.model.Hudson.updateComputer(Hudson.java:704) at hudson.model.Hudson.updateComputerList(Hudson.java:685) - locked <0x87474ca0> (a hudson.util.CopyOnWriteMap$Hash) at hudson.model.Hudson.setNodes(Hudson.java:1076) at hudson.model.Hudson.addNode(Hudson.java:1060) - locked <0x87474cb0> (a hudson.model.Hudson) at org.jvnet.hudson.test.HudsonTestCase.createSlave(HudsonTestCase.java:247) at hudson.slaves.NodeProvisionerTest.testBaselineSlaveUsage(NodeProvisionerTest.java:86) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at junit.framework.TestCase.runTest(TestCase.java:154) at org.jvnet.hudson.test.HudsonTestCase.runTest(HudsonTestCase.java:151) at junit.framework.TestCase.runBare(TestCase.java:127) at junit.framework.TestResult$1.protect(TestResult.java:106) at junit.framework.TestResult.runProtected(TestResult.java:124) at junit.framework.TestResult.run(TestResult.java:109) at junit.framework.TestCase.run(TestCase.java:118) at junit.framework.TestSuite.runTest(TestSuite.java:208) at junit.framework.TestSuite.run(TestSuite.java:203) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.apache.maven.surefire.junit.JUnitTestSet.execute(JUnitTestSet.java:213) at org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.executeTestSet(AbstractDirectoryTestSuite.java:140) at org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.execute(AbstractDirectoryTestSuite.java:127) at org.apache.maven.surefire.Surefire.run(Surefire.java:177) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.apache.maven.surefire.booter.SurefireBooter.runSuitesInProcess(SurefireBooter.java:345) at org.apache.maven.surefire.booter.SurefireBooter.run(SurefireBooter.java:241) at org.apache.maven.plugin.surefire.SurefirePlugin.execute(SurefirePlugin.java:537) at org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:447) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:539) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalWithLifecycle(DefaultLifecycleExecutor.java:480) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:459) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:311) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:278) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:143) at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:333) at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:126) at org.apache.maven.cli.MavenCli.main(MavenCli.java:282) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315) at org.codehaus.classworlds.Launcher.launch(Launcher.java:255) at org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430) at org.codehaus.classworlds.Launcher.main(Launcher.java:375) Found 1 deadlock. ................ r13852 | kohsuke | 2008-12-24 14:32:29 -0800 (Wed, 24 Dec 2008) | 1 line bug fix in the test case. ................ r13854 | kohsuke | 2008-12-24 15:20:22 -0800 (Wed, 24 Dec 2008) | 2 lines Using a new version of Rhino to get a proper exception chaining. ................ r13855 | kohsuke | 2008-12-24 15:22:13 -0800 (Wed, 24 Dec 2008) | 1 line typo ................ r13856 | kohsuke | 2008-12-24 15:37:56 -0800 (Wed, 24 Dec 2008) | 1 line CR shouldn't be in the repository ................ r13859 | kohsuke | 2008-12-24 15:50:32 -0800 (Wed, 24 Dec 2008) | 3 lines Fixed svn:eol-style. ................ r13866 | kohsuke | 2008-12-24 21:26:43 -0800 (Wed, 24 Dec 2008) | 3 lines Copying rev.13860 to retry a merge that now looks suspicious. ................ r13869 | kohsuke | 2008-12-24 22:03:46 -0800 (Wed, 24 Dec 2008) | 2 lines The 2nd merge was successful, so adopting the successful merge as the multiple-computer-per-node branch. ................ r13872 | kohsuke | 2008-12-25 07:28:37 -0800 (Thu, 25 Dec 2008) | 1 line fixed a test failure ................ r13873 | kohsuke | 2008-12-25 08:16:49 -0800 (Thu, 25 Dec 2008) | 1 line expanded NodeProvisioner to work on per-label basis ................ r13874 | kohsuke | 2008-12-25 08:27:32 -0800 (Thu, 25 Dec 2008) | 1 line bug fix ................ r13875 | kohsuke | 2008-12-25 08:33:17 -0800 (Thu, 25 Dec 2008) | 1 line bug fix ................ r13876 | kohsuke | 2008-12-25 08:45:03 -0800 (Thu, 25 Dec 2008) | 3 lines [HUDSON-2605] Strangely, I discovered that on some File, which is new File("./target/hudson-for-test"), file.exists()==false but file.getAbsoluteFile().exists()==true. It looks like this happens when $PWD of the process at the OS level is different from System.getProperty("user.dir") ................ r13878 | kohsuke | 2008-12-25 15:52:45 -0800 (Thu, 25 Dec 2008) | 1 line added a marker file ................ r13879 | kohsuke | 2008-12-25 15:53:13 -0800 (Thu, 25 Dec 2008) | 1 line use marker file to find the hudson main workspace. ................ r13883 | kohsuke | 2008-12-26 07:50:44 -0800 (Fri, 26 Dec 2008) | 1 line avoid using a deprecated method. ................ r13884 | kohsuke | 2008-12-26 07:50:59 -0800 (Fri, 26 Dec 2008) | 1 line adding more probes ................ r13885 | kohsuke | 2008-12-26 08:15:42 -0800 (Fri, 26 Dec 2008) | 1 line for analyzing test failures, capturing the output is crucial. ................ r13887 | kohsuke | 2008-12-26 11:25:12 -0800 (Fri, 26 Dec 2008) | 1 line allow sub-types to intercept mutation ................ r13888 | kohsuke | 2008-12-26 11:26:01 -0800 (Fri, 26 Dec 2008) | 1 line clouds need to be taken into account before marking a label as pointless. ................ r13889 | kohsuke | 2008-12-26 11:26:40 -0800 (Fri, 26 Dec 2008) | 3 lines fixing bugs in NodeProvisioner. Conservative estimate on idle executors have to be max, not min. ................ r13890 | kohsuke | 2008-12-26 11:42:53 -0800 (Fri, 26 Dec 2008) | 1 line turns out the problem was that we were adding multiple slaves under the same name, which confused Hudson to no end. ................ r13896 | kohsuke | 2008-12-27 07:44:20 -0800 (Sat, 27 Dec 2008) | 1 line formatting changes ................ r13897 | kohsuke | 2008-12-27 07:45:00 -0800 (Sat, 27 Dec 2008) | 1 line reprot the test name to stdout so that one can easily distinguish different tests in target/surefire-reports/xyz-output.txt ................ r13898 | kohsuke | 2008-12-27 07:54:53 -0800 (Sat, 27 Dec 2008) | 1 line doc improvement ................ r13899 | kohsuke | 2008-12-27 09:59:07 -0800 (Sat, 27 Dec 2008) | 1 line split the functionality into two classes ................ r13900 | kohsuke | 2008-12-27 10:00:29 -0800 (Sat, 27 Dec 2008) | 1 line doc improvement ................ r13901 | kohsuke | 2008-12-27 10:06:24 -0800 (Sat, 27 Dec 2008) | 1 line added 'tick' ................ r13902 | kohsuke | 2008-12-27 10:08:04 -0800 (Sat, 27 Dec 2008) | 1 line adding graph rendering of the load statistics ................ r13903 | kohsuke | 2008-12-27 10:19:41 -0800 (Sat, 27 Dec 2008) | 1 line improved graph layout ................ r13904 | kohsuke | 2008-12-27 10:21:05 -0800 (Sat, 27 Dec 2008) | 1 line Picker -> TimeScale to better reflect what it is. ................ r13905 | kohsuke | 2008-12-27 10:40:27 -0800 (Sat, 27 Dec 2008) | 1 line duplicate ................ r13906 | kohsuke | 2008-12-27 14:39:36 -0800 (Sat, 27 Dec 2008) | 1 line renamed to a shorter name ................ r13907 | kohsuke | 2008-12-27 15:03:25 -0800 (Sat, 27 Dec 2008) | 1 line added icons ................ r13908 | kohsuke | 2008-12-27 16:20:37 -0800 (Sat, 27 Dec 2008) | 1 line renamed to make 'loadStatistics' the URL binding. ................ r13909 | kohsuke | 2008-12-27 16:21:01 -0800 (Sat, 27 Dec 2008) | 1 line exposing loadStatistics for Computer for better URL binding ................ r13910 | kohsuke | 2008-12-27 16:21:16 -0800 (Sat, 27 Dec 2008) | 1 line adding UI support ................ r13911 | kohsuke | 2008-12-27 19:31:43 -0800 (Sat, 27 Dec 2008) | 1 line added some basic visualization ................ r13912 | kohsuke | 2008-12-27 19:35:10 -0800 (Sat, 27 Dec 2008) | 1 line if there's no description, don't even show it. ................ r13913 | kohsuke | 2008-12-27 19:39:26 -0800 (Sat, 27 Dec 2008) | 1 line added load statistics page for the label as well. ................ r13914 | kohsuke | 2008-12-27 19:48:55 -0800 (Sat, 27 Dec 2008) | 1 line added one more convenience method. ................ r13915 | kohsuke | 2008-12-27 19:54:29 -0800 (Sat, 27 Dec 2008) | 1 line refactored so that a different Dataset can be fed. ................ r13916 | kohsuke | 2008-12-27 19:59:20 -0800 (Sat, 27 Dec 2008) | 1 line added global load statistics lnk to the management screen. ................ r13917 | kohsuke | 2008-12-27 20:31:01 -0800 (Sat, 27 Dec 2008) | 1 line <dt>s should use the bold font to distinguish them from <dd>s ................ r13918 | kohsuke | 2008-12-27 20:35:10 -0800 (Sat, 27 Dec 2008) | 1 line added description of what the graph means. ................ r13919 | kohsuke | 2008-12-27 20:35:39 -0800 (Sat, 27 Dec 2008) | 1 line added description of what the graph means. ................ git-svn-id: https://hudson.dev.java.net/svn/hudson/trunk/hudson/main@14215 71c3de6d-444a-0410-be80-ed276b4c234a
2009-01-07 09:02:56 +08:00
// logic behind <f:validateButton />
function validateButton(checkUrl,paramList,button) {
button = button._button;
var parameters = {};
paramList.split(',').each(function(name) {
var p = findPreviousFormItem(button,name);
if(p!=null)
parameters[name] = p.value;
});
var spinner = Element.up(button,"DIV").nextSibling;
var target = spinner.nextSibling;
spinner.style.display="block";
new Ajax.Request(checkUrl, {
method: "post",
parameters: parameters,
onComplete: function(rsp) {
spinner.style.display="none";
target.innerHTML = rsp.responseText;
var s = rsp.getResponseHeader("script");
if(s!=null)
try {
eval(s);
} catch(e) {
window.alert("failed to evaluate "+s+"\n"+e.message);
}
Merged revisions 11754-11755,11763-11766,11770,11773-11777,11791-11797,11828-11829,11831-11839,11841-11843,11850,11854,11994,12774,12778-12793,12820-12822,12831-12841,12854-12855,12860-12882,12896-12905,12914-12920,12938-12941,12950,13045-13046,13048,13063-13064,13066,13072-13076,13111,13122-13147,13150,13153-13158,13487-13488,13851-13852,13854-13856,13859,13866-13867,13869,13872-13876,13878-13879,13883-13885,13887-13890,13896-13919 via svnmerge from https://www.dev.java.net/svn/hudson/branches/multiple-computer-per-node ................ r11754 | kohsuke | 2008-08-25 17:59:14 -0700 (Mon, 25 Aug 2008) | 3 lines Adding EphemeralNode for non-persisted dynamically-allocated expandable/shrinkable slave pool. Tweaked the serialization of Hudson.slaves accordingly. ................ r11755 | kohsuke | 2008-08-25 18:10:42 -0700 (Mon, 25 Aug 2008) | 1 line making a small improvements ................ r11763 | kohsuke | 2008-08-26 13:57:25 -0700 (Tue, 26 Aug 2008) | 1 line adding more convenience methods ................ r11764 | kohsuke | 2008-08-26 14:24:20 -0700 (Tue, 26 Aug 2008) | 1 line ported mask capability from the TFS plugin to the core. ................ r11765 | kohsuke | 2008-08-26 14:26:25 -0700 (Tue, 26 Aug 2008) | 1 line making it non-final to allow for subclassing ................ r11766 | kohsuke | 2008-08-26 14:35:20 -0700 (Tue, 26 Aug 2008) | 1 line test case for NodeList ................ r11770 | kohsuke | 2008-08-26 15:15:21 -0700 (Tue, 26 Aug 2008) | 3 lines Wrote a simple tool that monitors a file system change (in a poor way) and triggers a build. ................ r11773 | kohsuke | 2008-08-26 17:20:30 -0700 (Tue, 26 Aug 2008) | 1 line made more structured ................ r11774 | kohsuke | 2008-08-26 17:47:41 -0700 (Tue, 26 Aug 2008) | 1 line indentation fix ................ r11775 | kohsuke | 2008-08-26 17:48:22 -0700 (Tue, 26 Aug 2008) | 1 line remove the use of a deprecated feature. ................ r11776 | kohsuke | 2008-08-26 17:51:54 -0700 (Tue, 26 Aug 2008) | 1 line renamed to 'ALL' to be consistent with recent use of DescriptorList ................ r11777 | kohsuke | 2008-08-26 18:04:17 -0700 (Tue, 26 Aug 2008) | 1 line adding NodeFactory list and its configuration mechanism ................ r11791 | kohsuke | 2008-08-27 09:43:38 -0700 (Wed, 27 Aug 2008) | 1 line picked up the latest jelly with Iterable support in <j:forEach> ................ r11792 | kohsuke | 2008-08-27 09:44:08 -0700 (Wed, 27 Aug 2008) | 1 line Iterable support added in commons-jelly 1.1-hudson-20080826 ................ r11793 | kohsuke | 2008-08-27 10:15:14 -0700 (Wed, 27 Aug 2008) | 2 lines - added name to NodeFactory for binding NodeFactory to URL tree. - NodeFactory should be access controlled ................ r11794 | kohsuke | 2008-08-27 10:41:11 -0700 (Wed, 27 Aug 2008) | 1 line added a method to add one Node at a time ................ r11795 | kohsuke | 2008-08-27 10:41:37 -0700 (Wed, 27 Aug 2008) | 1 line added permission constatnt ................ r11796 | kohsuke | 2008-08-27 10:42:13 -0700 (Wed, 27 Aug 2008) | 1 line allowing the launch method to throw an exception. ................ r11797 | kohsuke | 2008-08-27 10:44:13 -0700 (Wed, 27 Aug 2008) | 1 line improving the handling ................ r11828 | kohsuke | 2008-08-29 11:07:16 -0700 (Fri, 29 Aug 2008) | 1 line added executor config to the sidebar. ................ r11829 | kohsuke | 2008-08-29 11:16:11 -0700 (Fri, 29 Aug 2008) | 1 line "it" should be assigned to NodeFactory ................ r11831 | kohsuke | 2008-08-29 11:44:41 -0700 (Fri, 29 Aug 2008) | 1 line formatting changes ................ r11832 | kohsuke | 2008-08-29 11:59:21 -0700 (Fri, 29 Aug 2008) | 1 line added a script to create a flashing image from any picture ................ r11833 | kohsuke | 2008-08-29 12:07:56 -0700 (Fri, 29 Aug 2008) | 1 line doc improvement. ................ r11834 | kohsuke | 2008-08-29 13:37:59 -0700 (Fri, 29 Aug 2008) | 1 line added new images to indicate that a slave is launching ................ r11835 | kohsuke | 2008-08-29 13:43:41 -0700 (Fri, 29 Aug 2008) | 1 line indicate a launching slave accordingly. ................ r11836 | kohsuke | 2008-08-29 14:02:28 -0700 (Fri, 29 Aug 2008) | 1 line added a method to remove a Node. ................ r11837 | kohsuke | 2008-08-29 14:02:38 -0700 (Fri, 29 Aug 2008) | 1 line disconnect ................ r11838 | kohsuke | 2008-08-29 14:03:22 -0700 (Fri, 29 Aug 2008) | 1 line formatting changes ................ r11839 | kohsuke | 2008-08-29 14:14:04 -0700 (Fri, 29 Aug 2008) | 1 line allowing subclasses. ................ r11841 | kohsuke | 2008-08-29 14:28:29 -0700 (Fri, 29 Aug 2008) | 1 line constructor should be the first in the definition. ................ r11842 | kohsuke | 2008-08-29 14:31:01 -0700 (Fri, 29 Aug 2008) | 1 line doc improvement. ................ r11843 | kohsuke | 2008-08-29 14:32:48 -0700 (Fri, 29 Aug 2008) | 1 line fixed a problem of using partially constructed object during launch(), because the setNode() method is called from the Computer constructor. ................ r11850 | kohsuke | 2008-08-29 14:50:36 -0700 (Fri, 29 Aug 2008) | 1 line serialize NodeFactory first so that references to them from NodeList will become references in XML. ................ r11854 | kohsuke | 2008-08-29 14:56:56 -0700 (Fri, 29 Aug 2008) | 1 line cleaning up a bit. ................ r11994 | kohsuke | 2008-09-03 14:42:11 -0700 (Wed, 03 Sep 2008) | 21 lines Fixed ArrayIndexOutOfBoundsException during replace(), when the title contains a '$' literal. The typical stack trace looks like: Caused by: java.lang.ArrayIndexOutOfBoundsException: 32 at hudson.MarkupText$SubText.start(MarkupText.java:95) at hudson.MarkupText$SubText.group(MarkupText.java:131) at hudson.MarkupText$SubText.replace(MarkupText.java:154) at hudson.MarkupText$SubText.surroundWith(MarkupText.java:83) at hudson.plugins.jira.JiraChangeLogAnnotator.annotate(JiraChangeLogAnnotator.java:37) at hudson.scm.ChangeLogSet$Entry.getMsgAnnotated(ChangeLogSet.java:117) ... 148 more Vijayan Jayaraman and I found this problem while we were looking at the server log of Hudson for OpenJFX. Adding a unit test to verify this behavior, too. ................ r12774 | kohsuke | 2008-10-27 15:03:36 -0700 (Mon, 27 Oct 2008) | 3 lines preparing for heterogenousness in Node, so that different Node can be configured with different UIs, much like how different Jobs can be configured. Creating a slave works also like creating a new job. ................ r12778 | kohsuke | 2008-10-27 15:06:51 -0700 (Mon, 27 Oct 2008) | 1 line We need to be able to create an emtpy Slave initially, so we have to do with the check in the form field validation. ................ r12779 | kohsuke | 2008-10-27 15:48:04 -0700 (Mon, 27 Oct 2008) | 1 line making the new slave page a two-step process ................ r12780 | kohsuke | 2008-10-27 15:48:24 -0700 (Mon, 27 Oct 2008) | 1 line fixed a compilation problem ................ r12781 | kohsuke | 2008-10-27 15:53:30 -0700 (Mon, 27 Oct 2008) | 1 line bug fixes ................ r12782 | kohsuke | 2008-10-27 15:58:20 -0700 (Mon, 27 Oct 2008) | 1 line bug fixes ................ r12783 | kohsuke | 2008-10-27 16:08:56 -0700 (Mon, 27 Oct 2008) | 1 line making the configuration page work for slaves ................ r12784 | kohsuke | 2008-10-27 16:35:17 -0700 (Mon, 27 Oct 2008) | 1 line added new-computer.svg ................ r12785 | kohsuke | 2008-10-27 16:37:26 -0700 (Mon, 27 Oct 2008) | 1 line hooking up the config/create pages to the UI ................ r12786 | kohsuke | 2008-10-27 16:44:40 -0700 (Mon, 27 Oct 2008) | 1 line fixed a copy method. ................ r12787 | kohsuke | 2008-10-27 16:47:33 -0700 (Mon, 27 Oct 2008) | 1 line code was broken when a slave was renamed ................ r12788 | kohsuke | 2008-10-27 16:58:04 -0700 (Mon, 27 Oct 2008) | 1 line moving out the commonality into a new tag ................ r12789 | kohsuke | 2008-10-27 17:01:21 -0700 (Mon, 27 Oct 2008) | 1 line consistent term usage ................ r12790 | kohsuke | 2008-10-27 17:03:19 -0700 (Mon, 27 Oct 2008) | 1 line retiring the configureExecutors. Slave configuration is now moved to individual slave page ................ r12791 | kohsuke | 2008-10-27 17:10:32 -0700 (Mon, 27 Oct 2008) | 1 line retired configureExecutors.jelly and completed moved its contents to somewhere else ................ r12792 | kohsuke | 2008-10-27 17:21:53 -0700 (Mon, 27 Oct 2008) | 1 line bug fix. request handling of "/descriptor/FQCN/..." was broken. ................ r12793 | kohsuke | 2008-10-27 17:27:08 -0700 (Mon, 27 Oct 2008) | 1 line NodeFactory -> Cloud to encourage consistent term usage between the code and the UI. ................ r12820 | kohsuke | 2008-10-29 10:58:20 -0700 (Wed, 29 Oct 2008) | 1 line formatting fix ................ r12821 | kohsuke | 2008-10-29 11:17:49 -0700 (Wed, 29 Oct 2008) | 1 line added classes for handling a secret and prevent accidental exposure of a secret in the persisted form ................ r12822 | kohsuke | 2008-10-29 11:32:39 -0700 (Wed, 29 Oct 2008) | 1 line added a base64 validator ................ r12831 | kohsuke | 2008-10-29 15:58:45 -0700 (Wed, 29 Oct 2008) | 1 line secret key needs to be persisted outside config.xml (and it is, already!) ................ r12832 | kohsuke | 2008-10-29 16:06:28 -0700 (Wed, 29 Oct 2008) | 1 line started working on Amazon EC2 plugin ................ r12833 | kohsuke | 2008-10-29 16:09:20 -0700 (Wed, 29 Oct 2008) | 1 line brought the same enhancement as in <textbox /> ................ r12834 | kohsuke | 2008-10-29 16:15:05 -0700 (Wed, 29 Oct 2008) | 1 line copy over the onclick handler from the original button element ................ r12835 | kohsuke | 2008-10-29 17:01:04 -0700 (Wed, 29 Oct 2008) | 1 line allow OK messages to be sent with some mark up. ................ r12836 | kohsuke | 2008-10-29 17:06:52 -0700 (Wed, 29 Oct 2008) | 1 line added connection testing. This pattern needs to be generalized since it happens often ................ r12837 | kohsuke | 2008-10-29 17:13:11 -0700 (Wed, 29 Oct 2008) | 1 line this is little better ................ r12838 | kohsuke | 2008-10-29 17:17:44 -0700 (Wed, 29 Oct 2008) | 1 line added spinner ................ r12839 | kohsuke | 2008-10-29 17:31:54 -0700 (Wed, 29 Oct 2008) | 1 line restructuring the validation button support in a form that can be readily moved to the core. ................ r12840 | kohsuke | 2008-10-29 18:01:41 -0700 (Wed, 29 Oct 2008) | 1 line added <f:validateButton/> for multi-field server-side validation ................ r12841 | kohsuke | 2008-10-29 18:03:12 -0700 (Wed, 29 Oct 2008) | 1 line logic moved to <f:validateButton/> in the core. ................ r12854 | kohsuke | 2008-10-30 13:32:58 -0700 (Thu, 30 Oct 2008) | 1 line @QueryParameter.value won't be necessary any more ................ r12855 | kohsuke | 2008-10-30 13:42:58 -0700 (Thu, 30 Oct 2008) | 1 line need a strongly-typed constructor. ................ r12860 | kohsuke | 2008-10-30 15:24:18 -0700 (Thu, 30 Oct 2008) | 1 line adding more reflection support, which in turn we use in taglibs to raise the level of abstraction. ................ r12861 | kohsuke | 2008-10-30 15:33:22 -0700 (Thu, 30 Oct 2008) | 1 line added a tag to create databinding to a<select> element from an enum property ................ r12862 | kohsuke | 2008-10-30 15:37:44 -0700 (Thu, 30 Oct 2008) | 1 line adding a smarter bi-directional binding through <f:repeatable field="..."/> ................ r12863 | kohsuke | 2008-10-30 15:47:48 -0700 (Thu, 30 Oct 2008) | 1 line making progress with the EC2 support ................ r12864 | kohsuke | 2008-10-30 16:12:34 -0700 (Thu, 30 Oct 2008) | 1 line added form field validation for AMI ID ................ r12865 | kohsuke | 2008-10-30 16:15:44 -0700 (Thu, 30 Oct 2008) | 1 line added simpler version ................ r12866 | kohsuke | 2008-10-30 16:17:15 -0700 (Thu, 30 Oct 2008) | 1 line doc improvement ................ r12867 | kohsuke | 2008-10-30 16:17:19 -0700 (Thu, 30 Oct 2008) | 1 line simplified a bit ................ r12868 | kohsuke | 2008-10-30 16:40:25 -0700 (Thu, 30 Oct 2008) | 1 line doc improvement ................ r12869 | kohsuke | 2008-10-30 17:00:57 -0700 (Thu, 30 Oct 2008) | 1 line adding the provisioning of the new slave ................ r12870 | kohsuke | 2008-10-30 17:07:27 -0700 (Thu, 30 Oct 2008) | 1 line /** {@inheritDoc} */ is the default behavior for javadoc, so there's no point in making that explicit. ................ r12871 | kohsuke | 2008-10-30 17:11:04 -0700 (Thu, 30 Oct 2008) | 1 line doc bug fix ................ r12872 | kohsuke | 2008-10-30 17:17:20 -0700 (Thu, 30 Oct 2008) | 1 line simplified a bit ................ r12873 | kohsuke | 2008-10-30 17:19:06 -0700 (Thu, 30 Oct 2008) | 1 line added RetentionStrategy for EC2 instances ................ r12874 | kohsuke | 2008-10-30 17:21:17 -0700 (Thu, 30 Oct 2008) | 1 line allowing subclasses to override the disconnect behavior. ................ r12875 | kohsuke | 2008-10-30 18:02:35 -0700 (Thu, 30 Oct 2008) | 1 line added termination ................ r12876 | kohsuke | 2008-10-30 18:05:30 -0700 (Thu, 30 Oct 2008) | 1 line forgot to rename when NodeFactory was renamed to Cloud ................ r12877 | kohsuke | 2008-10-30 18:06:08 -0700 (Thu, 30 Oct 2008) | 1 line using the console icon ................ r12878 | kohsuke | 2008-10-30 18:17:20 -0700 (Thu, 30 Oct 2008) | 1 line adding UI to remove a slave. ................ r12879 | kohsuke | 2008-10-30 18:48:57 -0700 (Thu, 30 Oct 2008) | 1 line commons-discovery now needed in stapler ................ r12880 | kohsuke | 2008-10-30 18:50:27 -0700 (Thu, 30 Oct 2008) | 1 line needs to use a newer version of stapler ................ r12881 | kohsuke | 2008-10-30 18:51:02 -0700 (Thu, 30 Oct 2008) | 1 line Bye bye CVS ................ r12882 | kohsuke | 2008-10-30 18:51:43 -0700 (Thu, 30 Oct 2008) | 1 line Bye bye CVS ................ r12896 | kohsuke | 2008-10-31 14:52:07 -0700 (Fri, 31 Oct 2008) | 1 line fixed the ordering between field and the mighty get(String) method. ................ r12897 | kohsuke | 2008-10-31 15:08:41 -0700 (Fri, 31 Oct 2008) | 1 line fixed test compilation problems ................ r12898 | kohsuke | 2008-10-31 15:11:25 -0700 (Fri, 31 Oct 2008) | 1 line marking this as a model object since it's always bound to URL. ................ r12899 | kohsuke | 2008-10-31 15:13:42 -0700 (Fri, 31 Oct 2008) | 1 line adding UI hook up to manually provision a new node ................ r12900 | kohsuke | 2008-10-31 15:14:00 -0700 (Fri, 31 Oct 2008) | 1 line after merging the trunk the version number is different ................ r12901 | kohsuke | 2008-10-31 15:21:54 -0700 (Fri, 31 Oct 2008) | 1 line adding UI hook up for provisioning a new slave ................ r12902 | kohsuke | 2008-10-31 15:45:10 -0700 (Fri, 31 Oct 2008) | 1 line adding a hook to decorate ComputerLauncher. ................ r12903 | kohsuke | 2008-10-31 15:48:21 -0700 (Fri, 31 Oct 2008) | 1 line added filtering support ................ r12904 | kohsuke | 2008-10-31 15:52:45 -0700 (Fri, 31 Oct 2008) | 1 line added view ................ r12905 | kohsuke | 2008-10-31 15:53:49 -0700 (Fri, 31 Oct 2008) | 1 line doc improvement ................ r12914 | kohsuke | 2008-11-01 17:45:57 -0700 (Sat, 01 Nov 2008) | 1 line adding code for connecting with SSH ................ r12915 | kohsuke | 2008-11-01 17:49:28 -0700 (Sat, 01 Nov 2008) | 1 line working on launchers ................ r12916 | kohsuke | 2008-11-01 18:33:12 -0700 (Sat, 01 Nov 2008) | 1 line added a method to fully read a stream ................ r12917 | kohsuke | 2008-11-01 18:33:45 -0700 (Sat, 01 Nov 2008) | 1 line bumped up stapler ................ r12918 | kohsuke | 2008-11-01 18:39:41 -0700 (Sat, 01 Nov 2008) | 1 line doc improvement. ................ r12919 | kohsuke | 2008-11-01 18:45:24 -0700 (Sat, 01 Nov 2008) | 1 line added a launcher ................ r12920 | kohsuke | 2008-11-01 18:55:02 -0700 (Sat, 01 Nov 2008) | 1 line implementing the actual ComputerLauncher ................ r12938 | kohsuke | 2008-11-02 08:56:05 -0800 (Sun, 02 Nov 2008) | 1 line support the field notation ................ r12939 | kohsuke | 2008-11-02 09:20:21 -0800 (Sun, 02 Nov 2008) | 1 line added the mechanism to execute the init script ................ r12940 | kohsuke | 2008-11-02 09:21:38 -0800 (Sun, 02 Nov 2008) | 1 line simplification ................ r12941 | kohsuke | 2008-11-02 09:36:21 -0800 (Sun, 02 Nov 2008) | 1 line adding key handling ................ r12950 | kohsuke | 2008-11-03 11:00:58 -0800 (Mon, 03 Nov 2008) | 1 line formatting changes ................ r13045 | kohsuke | 2008-11-06 15:24:32 -0800 (Thu, 06 Nov 2008) | 1 line adding time series datatype for retaining load average statistics in memory ................ r13046 | kohsuke | 2008-11-06 15:59:02 -0800 (Thu, 06 Nov 2008) | 1 line added a convenience method. ................ r13048 | kohsuke | 2008-11-06 16:21:54 -0800 (Thu, 06 Nov 2008) | 2 lines - started monitoring # of executor statistics. - exposed label to the remote API ................ r13063 | kohsuke | 2008-11-07 13:05:15 -0800 (Fri, 07 Nov 2008) | 1 line added a convenience method. ................ r13064 | kohsuke | 2008-11-07 13:11:08 -0800 (Fri, 07 Nov 2008) | 1 line monitor the length of the queue too ................ r13066 | kohsuke | 2008-11-07 14:15:56 -0800 (Fri, 07 Nov 2008) | 1 line moved the stats to its own class. ................ r13072 | kohsuke | 2008-11-07 15:40:29 -0800 (Fri, 07 Nov 2008) | 1 line adding provisioning logic based on load statistics ................ r13073 | kohsuke | 2008-11-07 15:46:00 -0800 (Fri, 07 Nov 2008) | 1 line for effective testing, we need sub-sec precision ................ r13074 | kohsuke | 2008-11-07 16:24:44 -0800 (Fri, 07 Nov 2008) | 1 line fixed a lie. ................ r13075 | kohsuke | 2008-11-07 16:25:12 -0800 (Fri, 07 Nov 2008) | 1 line bug fix ................ r13076 | kohsuke | 2008-11-07 16:30:55 -0800 (Fri, 07 Nov 2008) | 1 line avoid using deprecated methods ................ r13111 | kohsuke | 2008-11-09 11:54:23 -0800 (Sun, 09 Nov 2008) | 1 line added the Future<?> return parameter to Computer.launch(). To do this w/o breaking compatibility, renamed launch to connect. ................ r13122 | kohsuke | 2008-11-10 14:38:03 -0800 (Mon, 10 Nov 2008) | 1 line allow programmatic update of the assigned label ................ r13123 | kohsuke | 2008-11-10 14:38:40 -0800 (Mon, 10 Nov 2008) | 1 line Iterator not needed because CopyOnWriteArrayList doesn't support removal via iterator. ................ r13124 | kohsuke | 2008-11-10 14:39:24 -0800 (Mon, 10 Nov 2008) | 1 line added another Builder for tests ................ r13125 | kohsuke | 2008-11-10 14:39:48 -0800 (Mon, 10 Nov 2008) | 1 line simplified a bit. This TestEnvironment stuff needs some clearer story. ................ r13126 | kohsuke | 2008-11-10 14:46:40 -0800 (Mon, 10 Nov 2008) | 1 line IDEA complains about this. ................ r13127 | kohsuke | 2008-11-10 14:51:53 -0800 (Mon, 10 Nov 2008) | 1 line improved the error diagnostics by displaying why a provisioned node failed to launch ................ r13128 | kohsuke | 2008-11-10 14:52:12 -0800 (Mon, 10 Nov 2008) | 1 line Started a test case for NodeProvisioner ................ r13129 | kohsuke | 2008-11-10 14:52:27 -0800 (Mon, 10 Nov 2008) | 1 line formatting changes ................ r13130 | kohsuke | 2008-11-10 15:16:02 -0800 (Mon, 10 Nov 2008) | 1 line report the failure as a failure. ................ r13131 | kohsuke | 2008-11-10 16:34:23 -0800 (Mon, 10 Nov 2008) | 1 line adding a parameter to the connect method to support joining to the pending launch activity. ................ r13132 | kohsuke | 2008-11-10 16:38:31 -0800 (Mon, 10 Nov 2008) | 1 line making members public so that it can be accessed from other classes (DummyCloudImpl was the first to do this) ................ r13133 | kohsuke | 2008-11-10 16:38:58 -0800 (Mon, 10 Nov 2008) | 1 line split the cloud implementation to a separate class to allow reuse. ................ r13134 | kohsuke | 2008-11-10 16:56:27 -0800 (Mon, 10 Nov 2008) | 1 line assign unique names to support multiple jobs ................ r13135 | kohsuke | 2008-11-10 17:11:31 -0800 (Mon, 10 Nov 2008) | 1 line avoid unnecessary interruption ................ r13136 | kohsuke | 2008-11-10 17:11:41 -0800 (Mon, 10 Nov 2008) | 1 line adding another test case ................ r13137 | kohsuke | 2008-11-10 17:16:28 -0800 (Mon, 10 Nov 2008) | 1 line cleaned up a test case ................ r13138 | kohsuke | 2008-11-10 17:36:52 -0800 (Mon, 10 Nov 2008) | 1 line since the setNode method is called on every Computer just by adding a new node, don't force a new launch attempt. ................ r13139 | kohsuke | 2008-11-10 17:37:38 -0800 (Mon, 10 Nov 2008) | 1 line perform orderly shutdown by giving computers enough time to disconnect. ................ r13140 | kohsuke | 2008-11-10 17:38:08 -0800 (Mon, 10 Nov 2008) | 3 lines return Future for synchronization. This breaks binary compatibility, but I checked none of the plugins in Hudson SVN uses this, so I hope this is OK. ................ r13141 | kohsuke | 2008-11-10 17:38:46 -0800 (Mon, 10 Nov 2008) | 1 line improved diagnostics ................ r13142 | kohsuke | 2008-11-10 17:39:55 -0800 (Mon, 10 Nov 2008) | 1 line removed compiler warning ................ r13143 | kohsuke | 2008-11-10 18:02:56 -0800 (Mon, 10 Nov 2008) | 1 line hide the rounding related problem from Cloud by passing int instead of float. ................ r13144 | kohsuke | 2008-11-10 18:10:10 -0800 (Mon, 10 Nov 2008) | 1 line bug fix ................ r13145 | kohsuke | 2008-11-10 18:11:51 -0800 (Mon, 10 Nov 2008) | 1 line formatting changes ................ r13146 | kohsuke | 2008-11-10 18:15:08 -0800 (Mon, 10 Nov 2008) | 1 line moved the slave launch code to HudsonTestCase for reuse ................ r13147 | kohsuke | 2008-11-10 18:20:19 -0800 (Mon, 10 Nov 2008) | 1 line adding another test case ................ r13150 | kohsuke | 2008-11-11 07:28:53 -0800 (Tue, 11 Nov 2008) | 1 line bug fix ................ r13153 | kohsuke | 2008-11-11 14:04:21 -0800 (Tue, 11 Nov 2008) | 1 line cutting down the test size to 5 to increase the test speed ................ r13154 | kohsuke | 2008-11-11 14:04:37 -0800 (Tue, 11 Nov 2008) | 1 line improved debuggability ................ r13155 | kohsuke | 2008-11-11 14:10:04 -0800 (Tue, 11 Nov 2008) | 1 line added another convenience method ................ r13156 | kohsuke | 2008-11-11 14:10:21 -0800 (Tue, 11 Nov 2008) | 1 line further reduce the test turn around time ................ r13157 | kohsuke | 2008-11-11 14:22:03 -0800 (Tue, 11 Nov 2008) | 1 line doc improvement and clean up ................ r13158 | kohsuke | 2008-11-11 14:22:28 -0800 (Tue, 11 Nov 2008) | 1 line added a new metho ................ r13487 | kohsuke | 2008-12-09 17:17:30 -0800 (Tue, 09 Dec 2008) | 1 line SlaveTemplate needs to be able to computer # of executors. ................ r13488 | kohsuke | 2008-12-09 17:18:05 -0800 (Tue, 09 Dec 2008) | 1 line fixed a compilation problem with the latest head of the branch ................ r13851 | kohsuke | 2008-12-24 13:40:43 -0800 (Wed, 24 Dec 2008) | 82 lines fixed a dead lock reported by Jesse. Found one Java-level deadlock: ============================= "Executor #0 for master": waiting to lock monitor 0x09409bac (object 0x87474ca0, a hudson.util.CopyOnWriteMap$Hash), which is held by "main" "main": waiting to lock monitor 0x09409b48 (object 0x87474d48, a hudson.model.Hudson$MasterComputer), which is held by "Executor #0 for master" Java stack information for the threads listed above: =================================================== "Executor #0 for master": at hudson.util.CopyOnWriteMap.remove(CopyOnWriteMap.java:78) - waiting to lock <0x87474ca0> (a hudson.util.CopyOnWriteMap$Hash) at hudson.model.Hudson.removeComputer(Hudson.java:717) at hudson.model.Computer.removeExecutor(Computer.java:433) - locked <0x87474d48> (a hudson.model.Hudson$MasterComputer) at hudson.model.Executor.run(Executor.java:65) - locked <0x87474d48> (a hudson.model.Hudson$MasterComputer) "main": at hudson.model.Computer.setNumExecutors(Computer.java:338) - waiting to lock <0x87474d48> (a hudson.model.Hudson$MasterComputer) at hudson.model.Computer.setNode(Computer.java:327) at hudson.model.Hudson.updateComputer(Hudson.java:704) at hudson.model.Hudson.updateComputerList(Hudson.java:685) - locked <0x87474ca0> (a hudson.util.CopyOnWriteMap$Hash) at hudson.model.Hudson.setNodes(Hudson.java:1076) at hudson.model.Hudson.addNode(Hudson.java:1060) - locked <0x87474cb0> (a hudson.model.Hudson) at org.jvnet.hudson.test.HudsonTestCase.createSlave(HudsonTestCase.java:247) at hudson.slaves.NodeProvisionerTest.testBaselineSlaveUsage(NodeProvisionerTest.java:86) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at junit.framework.TestCase.runTest(TestCase.java:154) at org.jvnet.hudson.test.HudsonTestCase.runTest(HudsonTestCase.java:151) at junit.framework.TestCase.runBare(TestCase.java:127) at junit.framework.TestResult$1.protect(TestResult.java:106) at junit.framework.TestResult.runProtected(TestResult.java:124) at junit.framework.TestResult.run(TestResult.java:109) at junit.framework.TestCase.run(TestCase.java:118) at junit.framework.TestSuite.runTest(TestSuite.java:208) at junit.framework.TestSuite.run(TestSuite.java:203) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.apache.maven.surefire.junit.JUnitTestSet.execute(JUnitTestSet.java:213) at org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.executeTestSet(AbstractDirectoryTestSuite.java:140) at org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.execute(AbstractDirectoryTestSuite.java:127) at org.apache.maven.surefire.Surefire.run(Surefire.java:177) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.apache.maven.surefire.booter.SurefireBooter.runSuitesInProcess(SurefireBooter.java:345) at org.apache.maven.surefire.booter.SurefireBooter.run(SurefireBooter.java:241) at org.apache.maven.plugin.surefire.SurefirePlugin.execute(SurefirePlugin.java:537) at org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:447) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:539) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalWithLifecycle(DefaultLifecycleExecutor.java:480) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:459) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:311) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:278) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:143) at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:333) at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:126) at org.apache.maven.cli.MavenCli.main(MavenCli.java:282) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315) at org.codehaus.classworlds.Launcher.launch(Launcher.java:255) at org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430) at org.codehaus.classworlds.Launcher.main(Launcher.java:375) Found 1 deadlock. ................ r13852 | kohsuke | 2008-12-24 14:32:29 -0800 (Wed, 24 Dec 2008) | 1 line bug fix in the test case. ................ r13854 | kohsuke | 2008-12-24 15:20:22 -0800 (Wed, 24 Dec 2008) | 2 lines Using a new version of Rhino to get a proper exception chaining. ................ r13855 | kohsuke | 2008-12-24 15:22:13 -0800 (Wed, 24 Dec 2008) | 1 line typo ................ r13856 | kohsuke | 2008-12-24 15:37:56 -0800 (Wed, 24 Dec 2008) | 1 line CR shouldn't be in the repository ................ r13859 | kohsuke | 2008-12-24 15:50:32 -0800 (Wed, 24 Dec 2008) | 3 lines Fixed svn:eol-style. ................ r13866 | kohsuke | 2008-12-24 21:26:43 -0800 (Wed, 24 Dec 2008) | 3 lines Copying rev.13860 to retry a merge that now looks suspicious. ................ r13869 | kohsuke | 2008-12-24 22:03:46 -0800 (Wed, 24 Dec 2008) | 2 lines The 2nd merge was successful, so adopting the successful merge as the multiple-computer-per-node branch. ................ r13872 | kohsuke | 2008-12-25 07:28:37 -0800 (Thu, 25 Dec 2008) | 1 line fixed a test failure ................ r13873 | kohsuke | 2008-12-25 08:16:49 -0800 (Thu, 25 Dec 2008) | 1 line expanded NodeProvisioner to work on per-label basis ................ r13874 | kohsuke | 2008-12-25 08:27:32 -0800 (Thu, 25 Dec 2008) | 1 line bug fix ................ r13875 | kohsuke | 2008-12-25 08:33:17 -0800 (Thu, 25 Dec 2008) | 1 line bug fix ................ r13876 | kohsuke | 2008-12-25 08:45:03 -0800 (Thu, 25 Dec 2008) | 3 lines [HUDSON-2605] Strangely, I discovered that on some File, which is new File("./target/hudson-for-test"), file.exists()==false but file.getAbsoluteFile().exists()==true. It looks like this happens when $PWD of the process at the OS level is different from System.getProperty("user.dir") ................ r13878 | kohsuke | 2008-12-25 15:52:45 -0800 (Thu, 25 Dec 2008) | 1 line added a marker file ................ r13879 | kohsuke | 2008-12-25 15:53:13 -0800 (Thu, 25 Dec 2008) | 1 line use marker file to find the hudson main workspace. ................ r13883 | kohsuke | 2008-12-26 07:50:44 -0800 (Fri, 26 Dec 2008) | 1 line avoid using a deprecated method. ................ r13884 | kohsuke | 2008-12-26 07:50:59 -0800 (Fri, 26 Dec 2008) | 1 line adding more probes ................ r13885 | kohsuke | 2008-12-26 08:15:42 -0800 (Fri, 26 Dec 2008) | 1 line for analyzing test failures, capturing the output is crucial. ................ r13887 | kohsuke | 2008-12-26 11:25:12 -0800 (Fri, 26 Dec 2008) | 1 line allow sub-types to intercept mutation ................ r13888 | kohsuke | 2008-12-26 11:26:01 -0800 (Fri, 26 Dec 2008) | 1 line clouds need to be taken into account before marking a label as pointless. ................ r13889 | kohsuke | 2008-12-26 11:26:40 -0800 (Fri, 26 Dec 2008) | 3 lines fixing bugs in NodeProvisioner. Conservative estimate on idle executors have to be max, not min. ................ r13890 | kohsuke | 2008-12-26 11:42:53 -0800 (Fri, 26 Dec 2008) | 1 line turns out the problem was that we were adding multiple slaves under the same name, which confused Hudson to no end. ................ r13896 | kohsuke | 2008-12-27 07:44:20 -0800 (Sat, 27 Dec 2008) | 1 line formatting changes ................ r13897 | kohsuke | 2008-12-27 07:45:00 -0800 (Sat, 27 Dec 2008) | 1 line reprot the test name to stdout so that one can easily distinguish different tests in target/surefire-reports/xyz-output.txt ................ r13898 | kohsuke | 2008-12-27 07:54:53 -0800 (Sat, 27 Dec 2008) | 1 line doc improvement ................ r13899 | kohsuke | 2008-12-27 09:59:07 -0800 (Sat, 27 Dec 2008) | 1 line split the functionality into two classes ................ r13900 | kohsuke | 2008-12-27 10:00:29 -0800 (Sat, 27 Dec 2008) | 1 line doc improvement ................ r13901 | kohsuke | 2008-12-27 10:06:24 -0800 (Sat, 27 Dec 2008) | 1 line added 'tick' ................ r13902 | kohsuke | 2008-12-27 10:08:04 -0800 (Sat, 27 Dec 2008) | 1 line adding graph rendering of the load statistics ................ r13903 | kohsuke | 2008-12-27 10:19:41 -0800 (Sat, 27 Dec 2008) | 1 line improved graph layout ................ r13904 | kohsuke | 2008-12-27 10:21:05 -0800 (Sat, 27 Dec 2008) | 1 line Picker -> TimeScale to better reflect what it is. ................ r13905 | kohsuke | 2008-12-27 10:40:27 -0800 (Sat, 27 Dec 2008) | 1 line duplicate ................ r13906 | kohsuke | 2008-12-27 14:39:36 -0800 (Sat, 27 Dec 2008) | 1 line renamed to a shorter name ................ r13907 | kohsuke | 2008-12-27 15:03:25 -0800 (Sat, 27 Dec 2008) | 1 line added icons ................ r13908 | kohsuke | 2008-12-27 16:20:37 -0800 (Sat, 27 Dec 2008) | 1 line renamed to make 'loadStatistics' the URL binding. ................ r13909 | kohsuke | 2008-12-27 16:21:01 -0800 (Sat, 27 Dec 2008) | 1 line exposing loadStatistics for Computer for better URL binding ................ r13910 | kohsuke | 2008-12-27 16:21:16 -0800 (Sat, 27 Dec 2008) | 1 line adding UI support ................ r13911 | kohsuke | 2008-12-27 19:31:43 -0800 (Sat, 27 Dec 2008) | 1 line added some basic visualization ................ r13912 | kohsuke | 2008-12-27 19:35:10 -0800 (Sat, 27 Dec 2008) | 1 line if there's no description, don't even show it. ................ r13913 | kohsuke | 2008-12-27 19:39:26 -0800 (Sat, 27 Dec 2008) | 1 line added load statistics page for the label as well. ................ r13914 | kohsuke | 2008-12-27 19:48:55 -0800 (Sat, 27 Dec 2008) | 1 line added one more convenience method. ................ r13915 | kohsuke | 2008-12-27 19:54:29 -0800 (Sat, 27 Dec 2008) | 1 line refactored so that a different Dataset can be fed. ................ r13916 | kohsuke | 2008-12-27 19:59:20 -0800 (Sat, 27 Dec 2008) | 1 line added global load statistics lnk to the management screen. ................ r13917 | kohsuke | 2008-12-27 20:31:01 -0800 (Sat, 27 Dec 2008) | 1 line <dt>s should use the bold font to distinguish them from <dd>s ................ r13918 | kohsuke | 2008-12-27 20:35:10 -0800 (Sat, 27 Dec 2008) | 1 line added description of what the graph means. ................ r13919 | kohsuke | 2008-12-27 20:35:39 -0800 (Sat, 27 Dec 2008) | 1 line added description of what the graph means. ................ git-svn-id: https://hudson.dev.java.net/svn/hudson/trunk/hudson/main@14215 71c3de6d-444a-0410-be80-ed276b4c234a
2009-01-07 09:02:56 +08:00
}
});
}
// create a combobox.
// @param id
// ID of the <input type=text> element that becomes a combobox.
// @param valueFunction
// Function that returns all the candidates as an array
function createComboBox(id,valueFunction) {
var candidates = valueFunction();
Behaviour.addLoadEvent(function() {
var callback = function(value /*, comboBox*/) {
var items = new Array();
if (value.length > 0) { // if no value, we'll not provide anything
value = value.toLowerCase();
for (var i = 0; i<candidates.length; i++) {
if (candidates[i].toLowerCase().indexOf(value) >= 0) {
items.push(candidates[i]);
if(items.length>20)
break; // 20 items in the list should be enough
}
}
}
return items; // equiv to: comboBox.setItems(items);
};
if (document.getElementById(id) != null) {
new ComboBox(id,callback);
}
});
}