1 package org.apache.continuum.release.distributed.manager;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 import org.apache.continuum.configuration.BuildAgentConfigurationException;
23 import org.apache.continuum.model.repository.LocalRepository;
24 import org.apache.continuum.release.model.PreparedRelease;
25 import org.apache.maven.continuum.model.project.Project;
26 import org.apache.maven.continuum.release.ContinuumReleaseException;
27 import org.apache.maven.shared.release.ReleaseResult;
28
29 import java.util.List;
30 import java.util.Map;
31 import java.util.Properties;
32
33
34 public interface DistributedReleaseManager
35 {
36 Map getReleasePluginParameters( int projectId, String pomFilename )
37 throws ContinuumReleaseException, BuildAgentConfigurationException;
38
39 List<Map<String, String>> processProject( int projectId, String pomFilename, boolean autoVersionSubmodules )
40 throws ContinuumReleaseException, BuildAgentConfigurationException;
41
42 String releasePrepare( Project project, Properties releaseProperties, Map<String, String> releaseVersion,
43 Map<String, String> developmentVersion, Map<String, String> environments, String username )
44 throws ContinuumReleaseException, BuildAgentConfigurationException;
45
46 ReleaseResult getReleaseResult( String releaseId )
47 throws ContinuumReleaseException, BuildAgentConfigurationException;
48
49 Map<String, Object> getListener( String releaseId )
50 throws ContinuumReleaseException, BuildAgentConfigurationException;
51
52 void removeListener( String releaseId )
53 throws ContinuumReleaseException, BuildAgentConfigurationException;
54
55 @Deprecated
56 String getPreparedReleaseName( String releaseId )
57 throws ContinuumReleaseException;
58
59 Map<String, String> getPreparedReleases( String groupId, String artifactId )
60 throws ContinuumReleaseException;
61
62 void releasePerform( int projectId, String releaseId, String goals, String arguments, boolean useReleaseProfile,
63 LocalRepository repository, String username )
64 throws ContinuumReleaseException, BuildAgentConfigurationException;
65
66 String releasePerformFromScm( int projectId, String goals, String arguments, boolean useReleaseProfile,
67 LocalRepository repository, String scmUrl, String scmUsername, String scmPassword,
68 String scmTag, String scmTagBase, Map environments, String username )
69 throws ContinuumReleaseException, BuildAgentConfigurationException;
70
71 void releaseRollback( String releaseId, int projectId )
72 throws ContinuumReleaseException, BuildAgentConfigurationException;
73
74 String releaseCleanup( String releaseId )
75 throws ContinuumReleaseException, BuildAgentConfigurationException;
76
77 List<Map<String, Object>> getAllReleasesInProgress()
78 throws ContinuumReleaseException, BuildAgentConfigurationException;
79
80 String getDefaultBuildagent( int projectId );
81
82 PreparedRelease getPreparedRelease( String releaseId, String releaseType )
83 throws ContinuumReleaseException;
84 }