I'll start looking at this when I swap out Maven SCM to do everything for us.

On 21-Jul-08, at 4:16 AM, Stephen Connolly wrote:

I'm having problems getting this set up to work from behind a http proxy.

I've set up subversion's servers file correctly

Here's what I get from the bootstrap:

started
ERROR: svn: No credential to try. Authentication failed
org.tmatesoft.svn.core.SVNCancelException: svn: No credential to try.
Authentication failed
at
org .tmatesoft .svn.core.internal.wc.SVNErrorManager.error(SVNErrorManager.java:65)
at
org .tmatesoft .svn .core.internal.io.dav.DAVUtil.findStartingProperties(DAVUtil.java:126)
at
org .tmatesoft .svn .core .internal .io.dav.DAVConnection.fetchRepositoryUUID(DAVConnection.java:88)
at
org .tmatesoft .svn .core .internal.io.dav.DAVRepository.testConnection(DAVRepository.java:85)
at
hudson.scm.SubversionSCM $DescriptorImpl.checkRepositoryPath(SubversionSCM.java:1282)
at
hudson.scm.SubversionSCM.repositoryLocationsExist(SubversionSCM.java: 1343)
at hudson.scm.SubversionSCM.checkout(SubversionSCM.java:340)
at hudson.scm.SubversionSCM.checkout(SubversionSCM.java:304)
at hudson.model.AbstractProject.checkout(AbstractProject.java:586)
at
hudson.model.AbstractBuild $AbstractRunner.checkout(AbstractBuild.java:251) at hudson.model.AbstractBuild$AbstractRunner.run(AbstractBuild.java: 225)
at hudson.model.Run.run(Run.java:778)
at hudson.model.Build.run(Build.java:85)
at hudson.model.ResourceController.execute(ResourceController.java:70)
at hudson.model.Executor.run(Executor.java:88)
Caused by: org.tmatesoft.svn.core.SVNCancelException: svn: No credential to
try. Authentication failed
at
org .tmatesoft .svn.core.internal.wc.SVNErrorManager.cancel(SVNErrorManager.java:30)
at
org .tmatesoft .svn .core .internal .wc .DefaultSVNAuthenticationManager .getFirstAuthentication(DefaultSVNAuthenticationManager.java:164)
at
org .tmatesoft .svn .core .internal .io .dav .http.HTTPConnection.promptSSLClientCertificate(HTTPConnection.java: 563)
at
org .tmatesoft .svn .core .internal.io.dav.http.HTTPConnection.request(HTTPConnection.java:316)
at
org .tmatesoft .svn .core .internal.io.dav.http.HTTPConnection.request(HTTPConnection.java:246)
at
org .tmatesoft .svn .core .internal.io.dav.http.HTTPConnection.request(HTTPConnection.java:234)
at
org .tmatesoft .svn .core.internal.io.dav.DAVConnection.doPropfind(DAVConnection.java:97)
at
org .tmatesoft .svn.core.internal.io.dav.DAVUtil.getProperties(DAVUtil.java:57)
at
org .tmatesoft .svn.core.internal.io.dav.DAVUtil.getResourceProperties(DAVUtil.java: 62)
at
org .tmatesoft .svn.core.internal.io.dav.DAVUtil.getStartingProperties(DAVUtil.java: 92)
at
org .tmatesoft .svn .core.internal.io.dav.DAVUtil.findStartingProperties(DAVUtil.java:114)
... 13 more
finished: FAILURE

The hudson.zip I'm using has md5sum of

17ac6aa6bcbc9a56862202a68f2a42a8  hudson.zip

Any pointers to what else I need to configure?

I'd like to try this out on our heterogeneous build farm

-Stephen

On Sun, Jul 20, 2008 at 2:14 AM, Jason van Zyl <[EMAIL PROTECTED]> wrote:

On 19-Jul-08, at 6:42 PM, Dennis Lundberg wrote:

No, I don't have Cygwin installed, and I'm seeing the same problem that
Benjamin is.

The problem is that the config.xml for maven-2.1.x-IT-support and
maven-2.1.x-ITs use this:

<builders>
 <hudson.tasks.Shell>
   <command> ...</command>
 </hudson.tasks.Shell>
</builders>

To be able to run such a job in Hudson, it requires the presence of a
"sh"
executable, which doesn't exist on Windows, unless you have Cygwin
installed.


We could make an installation like below and that's not a problem. I can also make another executor for Hudson using the Plexus CLI utils so that
it
just works on any platform. I'll add the installation for now and make
another bundle.



The following steps are needed to make the Hudson configuration platform
independent:

1. Create a "MavenInstallation" configuration for Hudson in
runtime/hudson.tasks.Maven.xml that defines the bootstrapped Maven.

<?xml version='1.0' encoding='UTF-8'?>
<hudson.tasks.Maven_-DescriptorImpl>
<installations>
 <hudson.tasks.Maven_-MavenInstallation>
   <name>Maven 2.1 SNAPSHOT (built by Hudson)</name>
   <mavenHome>@[EMAIL PROTECTED]</mavenHome>
 </hudson.tasks.Maven_-MavenInstallation>
</installations>
</hudson.tasks.Maven_-DescriptorImpl>


2. Replace the <hudson.tasks.Shell> builders with <hudson.tasks.Maven>
for
maven-2.1.x-IT-support. It should look like this:

 <hudson.tasks.Maven>
   <targets>[EMAIL PROTECTED]@ clean install</targets>
   <mavenName>Maven 2.1 SNAPSHOT (built by Hudson)</mavenName>
 </hudson.tasks.Maven>


3. Replace the <hudson.tasks.Shell> builders with <hudson.tasks.Maven>
for
maven-2.1.x-ITs. It should look like this:

 <hudson.tasks.Maven>
   <targets>[EMAIL PROTECTED]@ -Prun-its clean test</targets>
   <mavenName>Maven 2.1 SNAPSHOT (built by Hudson)</mavenName>
 </hudson.tasks.Maven>


Jason van Zyl wrote:

Brian and Dennis were both running under Windows and Brian didn't have
Cygwin installed. Not sure what Dennis had on his machine.
On 18-Jul-08, at 2:47 PM, Benjamin Bentmann wrote:

Brian E. Fox wrote:

What dependency on cygwin?

I am referring to this error while trying to build
maven-2.1.x-IT-support:

[workspace] $ sh -xe <snip>\Temp\hudson39040.sh
The system cannot find the file specified
FATAL: Command execution failed
java.io.IOException: Cannot run program "sh" (in directory
"M:\hudson\runtime\jobs\maven-2.1.x-IT-support\workspace"):
CreateProcess
error=2, The system cannot find the specified file
 at java.lang.ProcessBuilder.start(Unknown Source)
 at hudson.Proc$LocalProc.<init>(Proc.java:104)
 at hudson.Proc$LocalProc.<init>(Proc.java:82)
at hudson.Launcher$LocalLauncher.createLocalProc(Launcher.java: 291)
 at hudson.Launcher$LocalLauncher.launch(Launcher.java:282)
 at hudson.Launcher.launch(Launcher.java:120)
 at hudson.Launcher.launch(Launcher.java:72)
 at
hudson.tasks.CommandInterpreter.perform(CommandInterpreter.java:60)
 at
hudson.tasks.CommandInterpreter.perform(CommandInterpreter.java:34)
 at hudson.model.Build$RunnerImpl.build(Build.java:130)
 at hudson.model.Build$RunnerImpl.doRun(Build.java:105)
 at
hudson.model.AbstractBuild$AbstractRunner.run(AbstractBuild.java: 231)
 at hudson.model.Run.run(Run.java:778)
 at hudson.model.Build.run(Build.java:85)
 at
hudson.model.ResourceController.execute(ResourceController.java:70)
 at hudson.model.Executor.run(Executor.java:88)
Caused by: java.io.IOException: CreateProcess error=2, The system
cannot
find the specified file
 at java.lang.ProcessImpl.create(Native Method)
 at java.lang.ProcessImpl.<init>(Unknown Source)
 at java.lang.ProcessImpl.start(Unknown Source)
 ... 16 more
finished: FAILURE

That batch script seems overly complicated, what's it doing that
the other .bat isn't?

First of all: What "other. bat" file exactly are you referring to?

To make sure I wasn't fooled by my browser's cache, I just redownloaded the Hudson package from Jason's public_html directory on people which
was
last modified on 2008-07-17 21:31:17. Unpacking this ZIP gives me

           440 create.sh
     2.441.718 haven-1.0.jar
    19.810.714 hudson.war
           142 start.sh
<DIR>          templates

i.e. there is no Windows batch file at all, only two Unix shell
scripts.

Next up, I manually simulated the commands from start.sh. The
config.xml
generated by haven for maven-2.1.x-IT-support contains

<builders>
<hudson.tasks.Shell>
  <command>( cd ${WORKSPACE}/core-integration-tests-support;
M2_HOME=M:\hudson\runtime/apache-maven-2.1-SNAPSHOT;
M:\hudson\runtime/apache-maven-2.1-SNAPSHOT/bin/mvn
-Dmaven.repo.local=M:\hudson\runtime\repos\integration clean install
)</command>
</hudson.tasks.Shell>
</builders>

which again is no batch file and causes the build to fail on Windows
without cygwin on the PATH since "sh" is not a standard Windows
executable
(see error above).

So my best guess is, that we are talking about two different bundles?

Regarding the purpose of the batch files I posted: The ones you quoted
are merely two lines, effectively the same as the current shell
scripts.
The only difference is that I preferred to use "-f" to specify the
POMs
instead of changing the current directory. I mailed about that
previously
with Jason.

The one I posted before (hudson.bat), yes you're right, that's overly complex. The second "if" testing for the existence of %HUDSON_HOME% can
be
removed since that is handled by haven.


Benjamin

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Thanks,
Jason
----------------------------------------------------------
Jason van Zyl
Founder,  Apache Maven
jason at sonatype dot com
----------------------------------------------------------
believe nothing, no matter where you read it,
or who has said it,
not even if i have said it,
unless it agrees with your own reason
and your own common sense.
-- Buddha
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


--
Dennis Lundberg

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Thanks,

Jason

----------------------------------------------------------
Jason van Zyl
Founder,  Apache Maven
jason at sonatype dot com
----------------------------------------------------------

A party which is not afraid of letting culture,
business, and welfare go to ruin completely can
be omnipotent for a while.

-- Jakob Burckhardt


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Thanks,

Jason

----------------------------------------------------------
Jason van Zyl
Founder,  Apache Maven
jason at sonatype dot com
----------------------------------------------------------

A party which is not afraid of letting culture,
business, and welfare go to ruin completely can
be omnipotent for a while.

  -- Jakob Burckhardt


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to