use of org.guvnor.ala.build.Binary in project kie-wb-common by kiegroup.
the class MavenDependencyConfigExecutorTest method testMavenDependencyAPI.
@Test
public void testMavenDependencyAPI() throws Exception {
final String groupId = "org.guvnor.ala";
final String artifactId = "maven-ala-artifact-test";
final String version = "1";
final String artifactPath = "/org/guvnor/ala/maven-ala-artifact-test/1/maven-ala-artifact-test-1.pom";
final String oldSettingsXmlPath = System.getProperty(CUSTOM_SETTINGS_PROPERTY);
try {
final Path settingsXmlPath = generateSettingsXml();
System.setProperty(CUSTOM_SETTINGS_PROPERTY, settingsXmlPath.toString());
MavenSettings.reinitSettings();
installArtifactLocally(groupId, artifactId, version);
final BuildRegistry buildRegistry = new InMemoryBuildRegistry();
final Pipeline pipe = PipelineFactory.newBuilder().addConfigStage("Maven Artifact", new MavenDependencyConfigImpl()).buildAs("my pipe");
final PipelineExecutor executor = new PipelineExecutor(singletonList(new MavenDependencyConfigExecutor(buildRegistry)));
executor.execute(new Input() {
{
put("artifact", groupId + ":" + artifactId + ":pom:" + version);
}
}, pipe, System.out::println);
final List<Binary> allBinaries = buildRegistry.getAllBinaries();
assertNotNull(allBinaries);
assertEquals(1, allBinaries.size());
assertTrue(allBinaries.get(0) instanceof MavenBinary);
final MavenBinary binary = (MavenBinary) allBinaries.get(0);
assertEquals("Maven", binary.getType());
assertEquals(artifactId, binary.getName());
assertEquals(groupId, binary.getGroupId());
assertEquals(artifactId, binary.getArtifactId());
assertEquals(version, binary.getVersion());
assertEquals(Paths.get(m2Folder.getPath(), artifactPath).toString(), binary.getPath().toString());
} finally {
if (oldSettingsXmlPath == null) {
System.clearProperty(CUSTOM_SETTINGS_PROPERTY);
} else {
System.setProperty(CUSTOM_SETTINGS_PROPERTY, oldSettingsXmlPath);
}
MavenSettings.reinitSettings();
}
}
use of org.guvnor.ala.build.Binary in project kie-wb-common by kiegroup.
the class MavenProjectConfigExecutorTest method testAPI.
@Test
public void testAPI() {
final SourceRegistry sourceRegistry = new InMemorySourceRegistry();
final BuildRegistry buildRegistry = new InMemoryBuildRegistry();
final Pipeline pipe = PipelineFactory.newBuilder().addConfigStage("Git Source", new MyGitConfig()).addConfigStage("Maven Project", new MavenProjectConfigImpl()).addConfigStage("Maven Build Config", new MavenBuildConfigImpl()).addConfigStage("Maven Build", new MavenBuildExecConfigImpl()).buildAs("my pipe");
final PipelineExecutor executor = new PipelineExecutor(asList(new GitConfigExecutor(sourceRegistry), new MavenProjectConfigExecutor(sourceRegistry), new MavenBuildConfigExecutor(), new MavenBuildExecConfigExecutor(buildRegistry)));
executor.execute(new Input() {
{
put("repo-name", "drools-workshop-pipe");
put("create-repo", "true");
put("branch", "master");
put("out-dir", tempPath.getAbsolutePath());
put("origin", gitUrl);
}
}, pipe, System.out::println);
List<Repository> allRepositories = sourceRegistry.getAllRepositories();
assertEquals(1, allRepositories.size());
Repository repo = allRepositories.get(0);
List<Project> allProjects = sourceRegistry.getAllProjects(repo);
assertEquals(1, allProjects.size());
List<Binary> allBinaries = buildRegistry.getAllBinaries();
assertEquals(1, allBinaries.size());
assertMavenBinary(allBinaries.get(0), allProjects.get(0));
final String tempDir = sourceRegistry.getAllProjects(repo).get(0).getTempDir();
executor.execute(new Input() {
{
put("project-temp-dir", tempDir);
put("repo-name", "drools-workshop-pipe");
put("branch", "master");
}
}, pipe, System.out::println);
allRepositories = sourceRegistry.getAllRepositories();
assertEquals(1, allRepositories.size());
repo = allRepositories.get(0);
allProjects = sourceRegistry.getAllProjects(repo);
assertEquals(2, allProjects.size());
allBinaries = buildRegistry.getAllBinaries();
assertEquals(1, allBinaries.size());
assertMavenBinary(allBinaries.get(0), allProjects.get(1));
}
use of org.guvnor.ala.build.Binary in project kie-wb-common by kiegroup.
the class MavenProjectConfigExecutorTest method testReuseTmpDirectoryAPI.
@Test
public void testReuseTmpDirectoryAPI() {
final SourceRegistry sourceRegistry = new InMemorySourceRegistry();
final BuildRegistry buildRegistry = new InMemoryBuildRegistry();
final Pipeline pipe = PipelineFactory.newBuilder().addConfigStage("Git Source", new MyGitConfig()).addConfigStage("Maven Project", new MavenProjectConfigImpl()).addConfigStage("Maven Build Config", new MavenBuildConfigImpl()).addConfigStage("Maven Build", new MavenBuildExecConfigImpl()).buildAs("my pipe");
final PipelineExecutor executor = new PipelineExecutor(asList(new GitConfigExecutor(sourceRegistry), new MavenProjectConfigExecutor(sourceRegistry), new MavenBuildConfigExecutor(), new MavenBuildExecConfigExecutor(buildRegistry)));
executor.execute(new Input() {
{
put("repo-name", "drools-workshop-pipe2");
put("create-repo", "true");
put("branch", "master");
put("out-dir", tempPath.getAbsolutePath());
put("origin", gitUrl);
}
}, pipe, System.out::println);
List<Repository> allRepositories = sourceRegistry.getAllRepositories();
assertEquals(1, allRepositories.size());
Repository repo = allRepositories.get(0);
List<Project> allProjects = sourceRegistry.getAllProjects(repo);
assertEquals(1, allProjects.size());
List<Binary> allBinaries = buildRegistry.getAllBinaries();
assertEquals(1, allBinaries.size());
assertMavenBinary(allBinaries.get(0), allProjects.get(0));
final String tempDir = sourceRegistry.getAllProjects(repo).get(0).getTempDir();
executor.execute(new Input() {
{
put("project-temp-dir", tempDir);
put("repo-name", "drools-workshop-pipe2");
put("branch", "master");
}
}, pipe, System.out::println);
allRepositories = sourceRegistry.getAllRepositories();
assertEquals(1, allRepositories.size());
repo = allRepositories.get(0);
allProjects = sourceRegistry.getAllProjects(repo);
assertEquals(2, allProjects.size());
allBinaries = buildRegistry.getAllBinaries();
assertEquals(1, allBinaries.size());
assertMavenBinary(allBinaries.get(0), allProjects.get(1));
}
use of org.guvnor.ala.build.Binary in project kie-wb-common by kiegroup.
the class OpenShiftMavenDeployer method deploy.
public boolean deploy(List<Binary> binaries) throws Exception {
URL nexusContentURL = getNexusContentURL(true);
if (nexusContentURL == null) {
return false;
}
String origCustomSettingsProp = System.getProperty(CUSTOM_SETTINGS_PROPERTY);
try {
System.setProperty(CUSTOM_SETTINGS_PROPERTY, generateSettingsXml());
MavenSettings.reinitSettings();
for (Binary binary : binaries) {
MavenBinary mavenBinary = (MavenBinary) binary;
File pom = new File(mavenBinary.getProject().getTempDir(), "pom.xml");
Properties props = new Properties();
boolean isSnapshot = mavenBinary.getVersion().endsWith("SNAPSHOT");
String nexusRepoUrl = nexusContentURL + "repositories/" + (isSnapshot ? "snapshots/" : "releases/");
props.setProperty("altDeploymentRepository", "nexus::default::" + nexusRepoUrl);
MavenBuildExecutor.executeMaven(pom, props, new String[] { "deploy" });
}
} finally {
if (origCustomSettingsProp != null) {
System.setProperty(CUSTOM_SETTINGS_PROPERTY, origCustomSettingsProp);
} else {
System.clearProperty(CUSTOM_SETTINGS_PROPERTY);
}
MavenSettings.reinitSettings();
}
return true;
}
use of org.guvnor.ala.build.Binary in project kie-wb-common by kiegroup.
the class InMemoryBuildRegistryTest method registerBinary.
@Test
public void registerBinary() {
Binary binary = mock(Binary.class);
when(binary.getName()).thenReturn(BINARY_NAME);
buildRegistry.registerBinary(binary);
List<Binary> result = buildRegistry.getAllBinaries();
assertTrue(result.contains(binary));
}
Aggregations