You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@continuum.apache.org by ct...@apache.org on 2009/01/06 08:33:55 UTC
svn commit: r731857 - in /continuum/branches/continuum-distributed-builds:
continuum-builder/src/main/java/org/apache/continuum/builder/distributed/manager/
continuum-builder/src/main/java/org/apache/continuum/builder/utils/
continuum-distributed-build...
Author: ctan
Date: Mon Jan 5 23:33:54 2009
New Revision: 731857
URL: http://svn.apache.org/viewvc?rev=731857&view=rev
Log:
-fixed viewing of available installations in slave
-fixed viewing of build result
Modified:
continuum/branches/continuum-distributed-builds/continuum-builder/src/main/java/org/apache/continuum/builder/distributed/manager/DefaultDistributedBuildManager.java
continuum/branches/continuum-distributed-builds/continuum-builder/src/main/java/org/apache/continuum/builder/utils/ContinuumBuildConstant.java
continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-buildagent/continuum-buildagent-api/src/main/java/org/apache/continuum/buildagent/ContinuumBuildAgentService.java
continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-buildagent/continuum-buildagent-core/src/main/java/org/apache/continuum/buildagent/ContinuumBuildAgentServiceImpl.java
continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-buildagent/continuum-buildagent-core/src/main/java/org/apache/continuum/buildagent/configuration/BuildAgentConfigurationService.java
continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-buildagent/continuum-buildagent-core/src/main/java/org/apache/continuum/buildagent/configuration/DefaultBuildAgentConfigurationService.java
continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-buildagent/continuum-buildagent-core/src/main/java/org/apache/continuum/buildagent/utils/ContinuumBuildAgentUtil.java
continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-slave/continuum-distributed-build-transport-slave-api/src/main/java/org/apache/continuum/distributed/transport/slave/SlaveBuildAgentTransportService.java
continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-slave/continuum-distributed-build-transport-slave-client/src/main/java/org/apache/continuum/distributed/transport/slave/SlaveBuildAgentTransportClient.java
continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-slave/continuum-distributed-build-transport-slave-server/src/main/java/org/apache/continuum/distributed/transport/slave/SlaveBuildAgentTransportServer.java
continuum/branches/continuum-distributed-builds/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/BuildResultAction.java
continuum/branches/continuum-distributed-builds/continuum-webapp/src/main/resources/struts.xml
Modified: continuum/branches/continuum-distributed-builds/continuum-builder/src/main/java/org/apache/continuum/builder/distributed/manager/DefaultDistributedBuildManager.java
URL: http://svn.apache.org/viewvc/continuum/branches/continuum-distributed-builds/continuum-builder/src/main/java/org/apache/continuum/builder/distributed/manager/DefaultDistributedBuildManager.java?rev=731857&r1=731856&r2=731857&view=diff
==============================================================================
--- continuum/branches/continuum-distributed-builds/continuum-builder/src/main/java/org/apache/continuum/builder/distributed/manager/DefaultDistributedBuildManager.java (original)
+++ continuum/branches/continuum-distributed-builds/continuum-builder/src/main/java/org/apache/continuum/builder/distributed/manager/DefaultDistributedBuildManager.java Mon Jan 5 23:33:54 2009
@@ -380,6 +380,11 @@
BufferedWriter out = new BufferedWriter(fstream);
out.write( ContinuumBuildConstant.getBuildOutput( context ) == null ? "" : ContinuumBuildConstant.getBuildOutput( context ) );
out.close();
+
+ //if ( buildResult.getState() != ContinuumProjectState.CANCELLED )
+ //{
+ // notifierDispatcher.buildComplete( project, buildDefinition, buildResult );
+ //}
}
catch ( ContinuumStoreException e )
{
@@ -418,6 +423,8 @@
}
projectScmRootDao.updateProjectScmRoot( scmRoot );
+
+ //notifierDispatcher.prepareBuildComplete( scmRoot );
}
catch ( ContinuumStoreException e )
{
@@ -447,18 +454,30 @@
public List<Installation> getAvailableInstallations( String buildAgentUrl )
throws ContinuumException
{
+ List<Installation> installations = new ArrayList<Installation>();
+
try
{
SlaveBuildAgentTransportClient client = new SlaveBuildAgentTransportClient( new URL( buildAgentUrl ) );
- //return client.getAvailableInstallations();
+ List<Map> installationsList = client.getAvailableInstallations();
+
+ for ( Map context : installationsList )
+ {
+ Installation installation = new Installation();
+ installation.setName( ContinuumBuildConstant.getInstallationName( context ) );
+ installation.setType( ContinuumBuildConstant.getInstallationType( context ) );
+ installation.setVarName( ContinuumBuildConstant.getInstallationVarName( context ) );
+ installation.setVarValue( ContinuumBuildConstant.getInstallationVarValue( context ) );
+ installations.add( installation );
+ }
+
+ return installations;
}
catch ( Exception e )
{
throw new ContinuumException( "Unable to get available installations of build agent", e );
}
-
- return null;
}
private List<ProjectDependency> getModifiedDependencies( BuildResult oldBuildResult, Map context )
@@ -574,7 +593,7 @@
if ( buildAgentUrl == null )
{
- throw new ContinuumException( "Unable to find build agent for project " + projectId );
+ return null;
}
try
@@ -610,7 +629,7 @@
}
catch ( Exception e )
{
- throw new ContinuumException( "", e );
+ throw new ContinuumException( "Error while retrieving build result for project" + projectId, e );
}
return map;
Modified: continuum/branches/continuum-distributed-builds/continuum-builder/src/main/java/org/apache/continuum/builder/utils/ContinuumBuildConstant.java
URL: http://svn.apache.org/viewvc/continuum/branches/continuum-distributed-builds/continuum-builder/src/main/java/org/apache/continuum/builder/utils/ContinuumBuildConstant.java?rev=731857&r1=731856&r2=731857&view=diff
==============================================================================
--- continuum/branches/continuum-distributed-builds/continuum-builder/src/main/java/org/apache/continuum/builder/utils/ContinuumBuildConstant.java (original)
+++ continuum/branches/continuum-distributed-builds/continuum-builder/src/main/java/org/apache/continuum/builder/utils/ContinuumBuildConstant.java Mon Jan 5 23:33:54 2009
@@ -62,6 +62,14 @@
public static final String KEY_PROJECT_STATE = "project-state";
+ public static final String KEY_INSTALLATION_NAME = "installation-name";
+
+ public static final String KEY_INSTALLATION_TYPE = "installation-type";
+
+ public static final String KEY_INSTALLATION_VAR_NAME = "installation-var-name";
+
+ public static final String KEY_INSTALLATION_VAR_VALUE = "installation-var-value";
+
public static int getProjectId( Map context )
{
return getInteger( context, KEY_PROJECT_ID );
@@ -152,6 +160,26 @@
return (BuildResult) getObject( context, KEY_BUILD_RESULT, defaultValue );
}
+ public static String getInstallationName( Map context )
+ {
+ return getString( context, KEY_INSTALLATION_NAME );
+ }
+
+ public static String getInstallationType( Map context )
+ {
+ return getString( context, KEY_INSTALLATION_TYPE );
+ }
+
+ public static String getInstallationVarValue( Map context )
+ {
+ return getString( context, KEY_INSTALLATION_VAR_VALUE );
+ }
+
+ public static String getInstallationVarName( Map context )
+ {
+ return getString( context, KEY_INSTALLATION_VAR_NAME );
+ }
+
// ----------------------------------------------------------------------
//
// ----------------------------------------------------------------------
Modified: continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-buildagent/continuum-buildagent-api/src/main/java/org/apache/continuum/buildagent/ContinuumBuildAgentService.java
URL: http://svn.apache.org/viewvc/continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-buildagent/continuum-buildagent-api/src/main/java/org/apache/continuum/buildagent/ContinuumBuildAgentService.java?rev=731857&r1=731856&r2=731857&view=diff
==============================================================================
--- continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-buildagent/continuum-buildagent-api/src/main/java/org/apache/continuum/buildagent/ContinuumBuildAgentService.java (original)
+++ continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-buildagent/continuum-buildagent-api/src/main/java/org/apache/continuum/buildagent/ContinuumBuildAgentService.java Mon Jan 5 23:33:54 2009
@@ -3,14 +3,12 @@
import java.util.List;
import java.util.Map;
-import org.apache.continuum.buildagent.model.Installation;
-
public interface ContinuumBuildAgentService
{
void buildProjects( List<Map> projectsBuildContext )
throws ContinuumBuildAgentException;
- List<Installation> getAvailableInstallations()
+ List<Map> getAvailableInstallations()
throws ContinuumBuildAgentException;
Map getBuildResult( int projectId )
Modified: continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-buildagent/continuum-buildagent-core/src/main/java/org/apache/continuum/buildagent/ContinuumBuildAgentServiceImpl.java
URL: http://svn.apache.org/viewvc/continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-buildagent/continuum-buildagent-core/src/main/java/org/apache/continuum/buildagent/ContinuumBuildAgentServiceImpl.java?rev=731857&r1=731856&r2=731857&view=diff
==============================================================================
--- continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-buildagent/continuum-buildagent-core/src/main/java/org/apache/continuum/buildagent/ContinuumBuildAgentServiceImpl.java (original)
+++ continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-buildagent/continuum-buildagent-core/src/main/java/org/apache/continuum/buildagent/ContinuumBuildAgentServiceImpl.java Mon Jan 5 23:33:54 2009
@@ -19,6 +19,7 @@
import org.apache.maven.continuum.model.project.BuildResult;
import org.apache.maven.continuum.project.ContinuumProjectState;
import org.codehaus.plexus.util.FileUtils;
+import org.codehaus.plexus.util.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -65,11 +66,57 @@
}
}
- //TODO: fix this
- public List<Installation> getAvailableInstallations()
+ public List<Map> getAvailableInstallations()
throws ContinuumBuildAgentException
{
- return buildAgentConfigurationService.getAvailableInstallations();
+ List<Map> installationsList = new ArrayList<Map>();
+
+ List<Installation> installations = buildAgentConfigurationService.getAvailableInstallations();
+
+ for ( Installation installation : installations )
+ {
+ Map map = new HashMap();
+
+ if ( StringUtils.isBlank( installation.getName() ) )
+ {
+ map.put( ContinuumBuildAgentUtil.KEY_INSTALLATION_NAME, "" );
+ }
+ else
+ {
+ map.put( ContinuumBuildAgentUtil.KEY_INSTALLATION_NAME, installation.getName() );
+ }
+
+ if ( StringUtils.isBlank( installation.getType() ) )
+ {
+ map.put( ContinuumBuildAgentUtil.KEY_INSTALLATION_TYPE, "" );
+ }
+ else
+ {
+ map.put( ContinuumBuildAgentUtil.KEY_INSTALLATION_TYPE, installation.getType() );
+ }
+
+ if ( StringUtils.isBlank( installation.getVarName() ) )
+ {
+ map.put( ContinuumBuildAgentUtil.KEY_INSTALLATION_VAR_NAME, "" );
+ }
+ else
+ {
+ map.put( ContinuumBuildAgentUtil.KEY_INSTALLATION_VAR_VALUE, installation.getVarValue() );
+ }
+
+ if ( StringUtils.isBlank( installation.getVarValue() ) )
+ {
+ map.put( ContinuumBuildAgentUtil.KEY_INSTALLATION_VAR_VALUE, "" );
+ }
+ else
+ {
+ map.put( ContinuumBuildAgentUtil.KEY_INSTALLATION_VAR_VALUE, installation.getVarValue() );
+ }
+
+ installationsList.add( map );
+ }
+
+ return installationsList;
}
public Map getBuildResult( int projectId )
Modified: continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-buildagent/continuum-buildagent-core/src/main/java/org/apache/continuum/buildagent/configuration/BuildAgentConfigurationService.java
URL: http://svn.apache.org/viewvc/continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-buildagent/continuum-buildagent-core/src/main/java/org/apache/continuum/buildagent/configuration/BuildAgentConfigurationService.java?rev=731857&r1=731856&r2=731857&view=diff
==============================================================================
--- continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-buildagent/continuum-buildagent-core/src/main/java/org/apache/continuum/buildagent/configuration/BuildAgentConfigurationService.java (original)
+++ continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-buildagent/continuum-buildagent-core/src/main/java/org/apache/continuum/buildagent/configuration/BuildAgentConfigurationService.java Mon Jan 5 23:33:54 2009
@@ -3,8 +3,6 @@
import java.io.File;
import java.util.List;
-import org.apache.continuum.buildagent.model.Installation;
-
public interface BuildAgentConfigurationService
{
String ROLE = BuildAgentConfigurationService.class.getName();
@@ -25,5 +23,5 @@
File getBuildOutputFile( int projectId )
throws BuildAgentConfigurationException;
- List<Installation> getAvailableInstallations();
+ List getAvailableInstallations();
}
Modified: continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-buildagent/continuum-buildagent-core/src/main/java/org/apache/continuum/buildagent/configuration/DefaultBuildAgentConfigurationService.java
URL: http://svn.apache.org/viewvc/continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-buildagent/continuum-buildagent-core/src/main/java/org/apache/continuum/buildagent/configuration/DefaultBuildAgentConfigurationService.java?rev=731857&r1=731856&r2=731857&view=diff
==============================================================================
--- continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-buildagent/continuum-buildagent-core/src/main/java/org/apache/continuum/buildagent/configuration/DefaultBuildAgentConfigurationService.java (original)
+++ continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-buildagent/continuum-buildagent-core/src/main/java/org/apache/continuum/buildagent/configuration/DefaultBuildAgentConfigurationService.java Mon Jan 5 23:33:54 2009
@@ -4,7 +4,6 @@
import java.io.IOException;
import java.util.List;
-import org.apache.continuum.buildagent.model.Installation;
import org.codehaus.plexus.util.FileUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
Modified: continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-buildagent/continuum-buildagent-core/src/main/java/org/apache/continuum/buildagent/utils/ContinuumBuildAgentUtil.java
URL: http://svn.apache.org/viewvc/continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-buildagent/continuum-buildagent-core/src/main/java/org/apache/continuum/buildagent/utils/ContinuumBuildAgentUtil.java?rev=731857&r1=731856&r2=731857&view=diff
==============================================================================
--- continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-buildagent/continuum-buildagent-core/src/main/java/org/apache/continuum/buildagent/utils/ContinuumBuildAgentUtil.java (original)
+++ continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-buildagent/continuum-buildagent-core/src/main/java/org/apache/continuum/buildagent/utils/ContinuumBuildAgentUtil.java Mon Jan 5 23:33:54 2009
@@ -87,6 +87,14 @@
public static final String KEY_PROJECT_STATE = "project-state";
+ public static final String KEY_INSTALLATION_NAME = "installation-name";
+
+ public static final String KEY_INSTALLATION_TYPE = "installation-type";
+
+ public static final String KEY_INSTALLATION_VAR_NAME = "installation-var-name";
+
+ public static final String KEY_INSTALLATION_VAR_VALUE = "installation-var-value";
+
public static Integer getProjectId( Map context )
{
return getInteger( context, KEY_PROJECT_ID );
Modified: continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-slave/continuum-distributed-build-transport-slave-api/src/main/java/org/apache/continuum/distributed/transport/slave/SlaveBuildAgentTransportService.java
URL: http://svn.apache.org/viewvc/continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-slave/continuum-distributed-build-transport-slave-api/src/main/java/org/apache/continuum/distributed/transport/slave/SlaveBuildAgentTransportService.java?rev=731857&r1=731856&r2=731857&view=diff
==============================================================================
--- continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-slave/continuum-distributed-build-transport-slave-api/src/main/java/org/apache/continuum/distributed/transport/slave/SlaveBuildAgentTransportService.java (original)
+++ continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-slave/continuum-distributed-build-transport-slave-api/src/main/java/org/apache/continuum/distributed/transport/slave/SlaveBuildAgentTransportService.java Mon Jan 5 23:33:54 2009
@@ -36,7 +36,7 @@
public Integer getProjectCurrentlyBuilding() throws Exception;
- public List<Object> getAvailableInstallations() throws Exception;
+ public List<Map> getAvailableInstallations() throws Exception;
public Boolean ping() throws Exception;
Modified: continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-slave/continuum-distributed-build-transport-slave-client/src/main/java/org/apache/continuum/distributed/transport/slave/SlaveBuildAgentTransportClient.java
URL: http://svn.apache.org/viewvc/continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-slave/continuum-distributed-build-transport-slave-client/src/main/java/org/apache/continuum/distributed/transport/slave/SlaveBuildAgentTransportClient.java?rev=731857&r1=731856&r2=731857&view=diff
==============================================================================
--- continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-slave/continuum-distributed-build-transport-slave-client/src/main/java/org/apache/continuum/distributed/transport/slave/SlaveBuildAgentTransportClient.java (original)
+++ continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-slave/continuum-distributed-build-transport-slave-client/src/main/java/org/apache/continuum/distributed/transport/slave/SlaveBuildAgentTransportClient.java Mon Jan 5 23:33:54 2009
@@ -83,10 +83,10 @@
return result;
}
- public List<Object> getAvailableInstallations()
+ public List<Map> getAvailableInstallations()
throws Exception
{
- List<Object> installations = null;
+ List<Map> installations = null;
try
{
Modified: continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-slave/continuum-distributed-build-transport-slave-server/src/main/java/org/apache/continuum/distributed/transport/slave/SlaveBuildAgentTransportServer.java
URL: http://svn.apache.org/viewvc/continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-slave/continuum-distributed-build-transport-slave-server/src/main/java/org/apache/continuum/distributed/transport/slave/SlaveBuildAgentTransportServer.java?rev=731857&r1=731856&r2=731857&view=diff
==============================================================================
--- continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-slave/continuum-distributed-build-transport-slave-server/src/main/java/org/apache/continuum/distributed/transport/slave/SlaveBuildAgentTransportServer.java (original)
+++ continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-slave/continuum-distributed-build-transport-slave-server/src/main/java/org/apache/continuum/distributed/transport/slave/SlaveBuildAgentTransportServer.java Mon Jan 5 23:33:54 2009
@@ -64,14 +64,11 @@
return result;
}
- // TODO: fix this
- public List<Object> getAvailableInstallations()
+ public List<Map> getAvailableInstallations()
throws Exception
{
- List<Object> installationsObj = null;
+ List<Map> installations = null;
- List<Installation> installations = null;
-
try
{
installations = continuumBuildAgentService.getAvailableInstallations();
@@ -82,7 +79,7 @@
log.error( "Failed to get available installations.", e );
}
- return installationsObj;
+ return installations;
}
public Map getBuildResult( int projectId )
Modified: continuum/branches/continuum-distributed-builds/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/BuildResultAction.java
URL: http://svn.apache.org/viewvc/continuum/branches/continuum-distributed-builds/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/BuildResultAction.java?rev=731857&r1=731856&r2=731857&view=diff
==============================================================================
--- continuum/branches/continuum-distributed-builds/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/BuildResultAction.java (original)
+++ continuum/branches/continuum-distributed-builds/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/BuildResultAction.java Mon Jan 5 23:33:54 2009
@@ -70,6 +70,8 @@
private String projectGroupName = "";
+ private int projectGroupId;
+
public String execute()
throws ContinuumException, ConfigurationException, IOException
{
@@ -90,6 +92,13 @@
{
Map<String, Object> map = distributedBuildManager.getBuildResult( project.getId() );
+ if ( map == null )
+ {
+ projectGroupId = project.getProjectGroup().getId();
+
+ return ERROR;
+ }
+
if ( map.size() > 0 )
{
buildResult = ContinuumBuildConstant.getBuildResult( map, null );
@@ -234,4 +243,8 @@
return projectGroupName;
}
+ public int getProjectGroupId()
+ {
+ return projectGroupId;
+ }
}
Modified: continuum/branches/continuum-distributed-builds/continuum-webapp/src/main/resources/struts.xml
URL: http://svn.apache.org/viewvc/continuum/branches/continuum-distributed-builds/continuum-webapp/src/main/resources/struts.xml?rev=731857&r1=731856&r2=731857&view=diff
==============================================================================
--- continuum/branches/continuum-distributed-builds/continuum-webapp/src/main/resources/struts.xml (original)
+++ continuum/branches/continuum-distributed-builds/continuum-webapp/src/main/resources/struts.xml Mon Jan 5 23:33:54 2009
@@ -369,6 +369,10 @@
<action name="buildResult" class="buildResult">
<result name="success">/WEB-INF/jsp/buildResult.jsp</result>
+ <result name="error" type="redirect-action">
+ <param name="actionName">projectGroupSummary</param>
+ <param name="projectGroupId">${projectGroupId}</param>
+ </result>
</action>
<action name="buildOutputText" class="buildResult">