private List<BuildDefinition> getBuildDefinitions( BuildDefinitionTemplate template, boolean loadRecursiveProjects ) throws ContinuumProjectBuilderException, BuildDefinitionServiceException { List<BuildDefinition> buildDefinitions = new ArrayList<BuildDefinition>(); for ( Iterator<BuildDefinition> iterator = template.getBuildDefinitions().iterator(); iterator.hasNext(); ) { BuildDefinition buildDefinition = iterator.next(); // due to CONTINUUM-1207 CONTINUUM-1436 user can do what they want with arguments // we must remove if exists --non-recursive or -N if ( !loadRecursiveProjects ) { if ( StringUtils.isEmpty( buildDefinition.getArguments() ) ) { // strange for a mvn build getLogger().info( "build definition has empty args" ); } else { String arguments = buildDefinition.getArguments().replace( "--non-recursive", "" ); arguments = arguments.replace( "-N", "" ); buildDefinition.setArguments( arguments ); } } buildDefinition.setTemplate( false ); buildDefinitions.add( buildDefinition ); } return buildDefinitions; }
buildDefinition.setTemplate( false ); buildDefinitions.add( buildDefinition );
public void addTemplateInProject( int buildDefinitionTemplateId, Project project ) throws BuildDefinitionServiceException { try { BuildDefinitionTemplate template = getBuildDefinitionTemplate( buildDefinitionTemplateId ); if ( template.getBuildDefinitions().isEmpty() ) { return; } project = store.getProjectWithBuildDetails( project.getId() ); List<BuildDefinition> buildDefs = new ArrayList<BuildDefinition>(); for ( Iterator<BuildDefinition> iterator = template.getBuildDefinitions().iterator(); iterator.hasNext(); ) { BuildDefinition bd = iterator.next(); bd = cloneBuildDefinition( bd ); bd.setTemplate( false ); bd = store.addBuildDefinition( bd ); project.addBuildDefinition( bd ); } store.updateProject( project ); } catch ( ContinuumStoreException e ) { throw new BuildDefinitionServiceException( e.getMessage(), e ); } }
buildDefinition.setTemplate( getBooleanValue( getTrimmedValue( getDefaultValue( xmlStreamReader.getElementText(), "false" ) ), "template", xmlStreamReader ) );
public ProjectGroup addBuildDefinitionTemplateToProjectGroup( int projectGroupId, BuildDefinitionTemplate template ) throws BuildDefinitionServiceException, ContinuumObjectNotFoundException { try { ProjectGroup projectGroup = projectGroupDao.getProjectGroupWithBuildDetailsByProjectGroupId( projectGroupId ); if ( template.getBuildDefinitions().isEmpty() ) { return null; } for ( BuildDefinition bd : (List<BuildDefinition>) template.getBuildDefinitions() ) { bd.setTemplate( false ); bd = buildDefinitionDao.addBuildDefinition( cloneBuildDefinition( bd ) ); projectGroup.addBuildDefinition( bd ); } projectGroupDao.updateProjectGroup( projectGroup ); return projectGroup; } catch ( ContinuumStoreException e ) { throw new BuildDefinitionServiceException( e.getMessage(), e ); } }
public void addTemplateInProject( int buildDefinitionTemplateId, Project project ) throws BuildDefinitionServiceException { try { BuildDefinitionTemplate template = getBuildDefinitionTemplate( buildDefinitionTemplateId ); if ( template.getBuildDefinitions().isEmpty() ) { return; } project = projectDao.getProjectWithBuildDetails( project.getId() ); for ( BuildDefinition bd : (List<BuildDefinition>) template.getBuildDefinitions() ) { bd = cloneBuildDefinition( bd ); bd.setTemplate( false ); bd = buildDefinitionDao.addBuildDefinition( bd ); project.addBuildDefinition( bd ); } projectDao.updateProject( project ); } catch ( ContinuumStoreException e ) { throw new BuildDefinitionServiceException( e.getMessage(), e ); } }
public BuildDefinitionTemplate getDefaultShellBuildDefinitionTemplate() throws BuildDefinitionServiceException { BuildDefinitionTemplate template = getContinuumDefaultWithType( ContinuumBuildExecutorConstants.SHELL_BUILD_EXECUTOR ); if ( template != null ) { return template; } log.info( "create default ShellBuildDefinitionTemplate" ); template = new BuildDefinitionTemplate(); template.setContinuumDefault( true ); template.setName( "Default Shell Template" ); template.setType( ContinuumBuildExecutorConstants.SHELL_BUILD_EXECUTOR ); template = addBuildDefinitionTemplate( template ); BuildDefinition bd = new BuildDefinition(); bd.setDefaultForProject( true ); bd.setSchedule( getDefaultSchedule() ); bd.setType( ContinuumBuildExecutorConstants.SHELL_BUILD_EXECUTOR ); bd.setTemplate( true ); bd.setDescription( "Default Shell Build Definition" ); return addBuildDefinitionInTemplate( template, bd, true ); }
public BuildDefinitionTemplate getDefaultMavenOneBuildDefinitionTemplate() throws BuildDefinitionServiceException { BuildDefinitionTemplate template = getContinuumDefaultWithType( ContinuumBuildExecutorConstants.MAVEN_ONE_BUILD_EXECUTOR ); if ( template != null ) { log.debug( "found default maven template " + template.getType() ); return template; } log.info( "create default MavenOneBuildDefinitionTemplate" ); template = new BuildDefinitionTemplate(); template.setContinuumDefault( true ); template.setName( "Default Maven 1 Template" ); template.setType( ContinuumBuildExecutorConstants.MAVEN_ONE_BUILD_EXECUTOR ); template = addBuildDefinitionTemplate( template ); BuildDefinition bd = new BuildDefinition(); bd.setDefaultForProject( true ); bd.setArguments( defaultM1Arguments ); bd.setGoals( defaultM1Goals ); bd.setBuildFile( "project.xml" ); bd.setSchedule( getDefaultSchedule() ); bd.setType( ContinuumBuildExecutorConstants.MAVEN_ONE_BUILD_EXECUTOR ); bd.setDescription( "Default Maven 1 Build Definition" ); bd.setTemplate( true ); return addBuildDefinitionInTemplate( template, bd, true ); }
cloneBuildDefinition.setTemplate( false ); project.addBuildDefinition( cloneBuildDefinition );
public BuildDefinitionTemplate addBuildDefinitionInTemplate( BuildDefinitionTemplate buildDefinitionTemplate, BuildDefinition buildDefinition, boolean template ) throws BuildDefinitionServiceException { try { BuildDefinitionTemplate stored = getBuildDefinitionTemplate( buildDefinitionTemplate.getId() ); stored.setName( buildDefinitionTemplate.getName() ); BuildDefinition storedBuildDefinition = getBuildDefinition( buildDefinition.getId() ); if ( storedBuildDefinition != null ) { buildDefinition = storedBuildDefinition; } buildDefinition.setTemplate( template ); //stored.addBuildDefinition( addBuildDefinition( buildDefinition ) ); stored.addBuildDefinition( buildDefinition ); return buildDefinitionTemplateDao.updateBuildDefinitionTemplate( stored ); } catch ( ContinuumStoreException e ) { throw new BuildDefinitionServiceException( e.getMessage(), e ); } }
public BuildDefinitionTemplate addBuildDefinitionInTemplate( BuildDefinitionTemplate buildDefinitionTemplate, BuildDefinition buildDefinition, boolean template ) throws BuildDefinitionServiceException { try { BuildDefinitionTemplate stored = getBuildDefinitionTemplate( buildDefinitionTemplate.getId() ); stored.setName( buildDefinitionTemplate.getName() ); BuildDefinition storedBuildDefinition = getBuildDefinition( buildDefinition.getId() ); if (storedBuildDefinition != null) { buildDefinition = storedBuildDefinition; } buildDefinition.setTemplate( template ); //stored.addBuildDefinition( addBuildDefinition( buildDefinition ) ); stored.addBuildDefinition( buildDefinition ); return store.updateBuildDefinitionTemplate( stored ); } catch ( ContinuumStoreException e ) { throw new BuildDefinitionServiceException( e.getMessage(), e ); } }
public BuildDefinitionTemplate getDefaultAntBuildDefinitionTemplate() throws BuildDefinitionServiceException { BuildDefinitionTemplate template = getContinuumDefaultWithType( ContinuumBuildExecutorConstants.ANT_BUILD_EXECUTOR ); if ( template != null ) { return template; } log.info( "create default AntBuildDefinitionTemplate" ); template = new BuildDefinitionTemplate(); template.setContinuumDefault( true ); template.setName( "Default Ant Template" ); template.setType( ContinuumBuildExecutorConstants.ANT_BUILD_EXECUTOR ); template = addBuildDefinitionTemplate( template ); BuildDefinition bd = new BuildDefinition(); bd.setDefaultForProject( true ); bd.setGoals( defaultAntGoals ); bd.setArguments( defaultAntArguments ); bd.setBuildFile( "build.xml" ); bd.setSchedule( getDefaultSchedule() ); bd.setDescription( "Default Ant Build Definition" ); bd.setTemplate( true ); bd.setType( ContinuumBuildExecutorConstants.ANT_BUILD_EXECUTOR ); return addBuildDefinitionInTemplate( template, bd, true ); }
cloned.setTemplate( false ); project.addBuildDefinition( buildDefinitionService.addBuildDefinition( cloned ) );
public BuildDefinitionTemplate getDefaultMavenTwoBuildDefinitionTemplate() throws BuildDefinitionServiceException { BuildDefinitionTemplate template = getContinuumDefaultWithType( ContinuumBuildExecutorConstants.MAVEN_TWO_BUILD_EXECUTOR ); if ( template != null ) { return template; } log.info( "create default MavenTwoBuildDefinitionTemplate" ); template = new BuildDefinitionTemplate(); template.setContinuumDefault( true ); template.setName( "Default Maven Template" ); template.setType( ContinuumBuildExecutorConstants.MAVEN_TWO_BUILD_EXECUTOR ); template = addBuildDefinitionTemplate( template ); BuildDefinition bd = new BuildDefinition(); bd.setDefaultForProject( true ); bd.setGoals( this.defaultM2Goals ); bd.setArguments( this.defaultM2Arguments ); bd.setBuildFile( "pom.xml" ); bd.setSchedule( getDefaultSchedule() ); bd.setType( ContinuumBuildExecutorConstants.MAVEN_TWO_BUILD_EXECUTOR ); bd.setDescription( "Default Maven Build Definition" ); bd.setTemplate( true ); return addBuildDefinitionInTemplate( template, bd, true ); }
public BuildDefinitionTemplate getDefaultShellBuildDefinitionTemplate() throws BuildDefinitionServiceException { BuildDefinitionTemplate template = getContinuumDefaultWithType( ContinuumBuildExecutorConstants.SHELL_BUILD_EXECUTOR ); if ( template != null ) { return template; } getLogger().info( "create default ShellBuildDefinitionTemplate" ); template = new BuildDefinitionTemplate(); template.setContinuumDefault( true ); template.setName( "default shell template" ); template.setType( ContinuumBuildExecutorConstants.SHELL_BUILD_EXECUTOR ); template = addBuildDefinitionTemplate( template ); BuildDefinition bd = new BuildDefinition(); bd.setDefaultForProject( true ); bd.setSchedule( getDefaultSchedule() ); bd.setType( ContinuumBuildExecutorConstants.SHELL_BUILD_EXECUTOR ); bd.setTemplate( true ); bd.setDescription( "default shell buildDefinition" ); return addBuildDefinitionInTemplate( template, bd, true ); }
public BuildDefinitionTemplate getDefaultMavenTwoBuildDefinitionTemplate() throws BuildDefinitionServiceException { BuildDefinitionTemplate template = getContinuumDefaultWithType( ContinuumBuildExecutorConstants.MAVEN_TWO_BUILD_EXECUTOR ); if ( template != null ) { return template; } getLogger().info( "create default MavenTwoBuildDefinitionTemplate" ); template = new BuildDefinitionTemplate(); template.setContinuumDefault( true ); template.setName( "default maven2 template" ); template.setType( ContinuumBuildExecutorConstants.MAVEN_TWO_BUILD_EXECUTOR ); template = addBuildDefinitionTemplate( template ); BuildDefinition bd = new BuildDefinition(); bd.setDefaultForProject( true ); bd.setGoals( this.defaultM2Goals ); bd.setArguments( this.defaultM2Arguments ); bd.setBuildFile( "pom.xml" ); bd.setSchedule( getDefaultSchedule() ); bd.setType( ContinuumBuildExecutorConstants.MAVEN_TWO_BUILD_EXECUTOR ); bd.setDescription( "default maven2 buildDefinition" ); bd.setTemplate( true ); return addBuildDefinitionInTemplate( template, bd, true ); }
public BuildDefinitionTemplate getDefaultAntBuildDefinitionTemplate() throws BuildDefinitionServiceException { BuildDefinitionTemplate template = getContinuumDefaultWithType( ContinuumBuildExecutorConstants.ANT_BUILD_EXECUTOR ); if ( template != null ) { return template; } getLogger().info( "create default AntBuildDefinitionTemplate" ); template = new BuildDefinitionTemplate(); template.setContinuumDefault( true ); template.setName( "default ant template" ); template.setType( ContinuumBuildExecutorConstants.ANT_BUILD_EXECUTOR ); template = addBuildDefinitionTemplate( template ); BuildDefinition bd = new BuildDefinition(); bd.setDefaultForProject( true ); bd.setGoals( defaultAntGoals ); bd.setArguments( defaultAntArguments ); bd.setBuildFile( "build.xml" ); bd.setSchedule( getDefaultSchedule() ); bd.setDescription( "default ant buildDefinition" ); bd.setTemplate( true ); bd.setType( ContinuumBuildExecutorConstants.ANT_BUILD_EXECUTOR ); return addBuildDefinitionInTemplate( template, bd, true ); }
/** * @see org.apache.maven.continuum.builddefinition.BuildDefinitionService#cloneBuildDefinition(org.apache.maven.continuum.model.project.BuildDefinition) */ public BuildDefinition cloneBuildDefinition( BuildDefinition buildDefinition ) { BuildDefinition cloned = new BuildDefinition(); cloned.setAlwaysBuild( buildDefinition.isAlwaysBuild() ); cloned.setArguments( buildDefinition.getArguments() ); cloned.setBuildFile( buildDefinition.getBuildFile() ); cloned.setBuildFresh( buildDefinition.isBuildFresh() ); cloned.setDefaultForProject( buildDefinition.isDefaultForProject() ); cloned.setDescription( buildDefinition.getDescription() ); cloned.setGoals( buildDefinition.getGoals() ); cloned.setProfile( buildDefinition.getProfile() ); cloned.setSchedule( buildDefinition.getSchedule() ); cloned.setType( buildDefinition.getType() ); cloned.setTemplate( buildDefinition.isTemplate() ); return cloned; }
public BuildDefinitionTemplate getDefaultMavenOneBuildDefinitionTemplate() throws BuildDefinitionServiceException { BuildDefinitionTemplate template = getContinuumDefaultWithType( ContinuumBuildExecutorConstants.MAVEN_ONE_BUILD_EXECUTOR ); if ( template != null ) { getLogger().debug( "found default maven template " + template.getType() ); return template; } getLogger().info( "create default MavenOneBuildDefinitionTemplate" ); template = new BuildDefinitionTemplate(); template.setContinuumDefault( true ); template.setName( "default maven1 template" ); template.setType( ContinuumBuildExecutorConstants.MAVEN_ONE_BUILD_EXECUTOR ); template = addBuildDefinitionTemplate( template ); BuildDefinition bd = new BuildDefinition(); bd.setDefaultForProject( true ); bd.setArguments( defaultM1Arguments ); bd.setGoals( defaultM1Goals ); bd.setBuildFile( "project.xml" ); bd.setSchedule( getDefaultSchedule() ); bd.setType( ContinuumBuildExecutorConstants.MAVEN_ONE_BUILD_EXECUTOR ); bd.setDescription( "default maven1 buildDefinition" ); bd.setTemplate( true ); return addBuildDefinitionInTemplate( template, bd, true ); }
/** * @see org.apache.maven.continuum.builddefinition.BuildDefinitionService#cloneBuildDefinition(org.apache.maven.continuum.model.project.BuildDefinition) */ public BuildDefinition cloneBuildDefinition( BuildDefinition buildDefinition ) { BuildDefinition cloned = new BuildDefinition(); cloned.setAlwaysBuild( buildDefinition.isAlwaysBuild() ); cloned.setArguments( buildDefinition.getArguments() ); cloned.setBuildFile( buildDefinition.getBuildFile() ); cloned.setBuildFresh( buildDefinition.isBuildFresh() ); cloned.setDefaultForProject( buildDefinition.isDefaultForProject() ); cloned.setDescription( buildDefinition.getDescription() ); cloned.setGoals( buildDefinition.getGoals() ); cloned.setProfile( buildDefinition.getProfile() ); cloned.setSchedule( buildDefinition.getSchedule() ); cloned.setType( buildDefinition.getType() ); cloned.setTemplate( buildDefinition.isTemplate() ); cloned.setUpdatePolicy( buildDefinition.getUpdatePolicy() ); return cloned; }