]> git.argeo.org Git - gpl/argeo-slc.git/blob - org.argeo.slc.factory/src/org/argeo/slc/rpmfactory/RpmFactory.java
Adapt to changes in Argeo Commons
[gpl/argeo-slc.git] / org.argeo.slc.factory / src / org / argeo / slc / rpmfactory / RpmFactory.java
1 package org.argeo.slc.rpmfactory;
2
3 import java.io.File;
4 import java.util.List;
5
6 import javax.jcr.Node;
7
8 /**
9 * Defines a build environment. This information is typically used by other
10 * components performing the various actions related to RPM build.
11 */
12 public interface RpmFactory {
13 //
14 // DIRECT ACTIONS ON JCR REPOSITORY
15 //
16 public void indexWorkspace(String workspace);
17
18 public Node newDistribution(String distributionId);
19
20 //
21 // CONFIG FILES GENERATION
22 //
23 /** Creates a mock config file. */
24 public File getMockConfigFile(String arch, String branch);
25
26 /** Creates a yum config file. */
27 public File getYumRepoFile(String arch);
28
29 //
30 // WORKSPACES
31 //
32 public String getStagingWorkspace();
33
34 /**
35 * @return the name of the testing workspace, or null if and only if the
36 * testing workspace was not enabled.
37 */
38 public String getTestingWorkspace();
39
40 public String getStableWorkspace();
41
42 public File getWorkspaceDir(String workspace);
43
44 //
45 // ARCH DEPENDENT INFOS
46 //
47 public List<String> getArchs();
48
49 public String getMockConfig(String arch);
50
51 public String getIdWithArch(String arch);
52
53 public File getResultDir(String arch);
54
55 //
56 // DEPLOYMENT
57 //
58 public String getGitBaseUrl();
59
60 public Boolean isDeveloperInstance();
61
62 }