mirror of
https://github.com/Alfresco/alfresco-sdk.git
synced 2025-07-31 17:39:14 +00:00
Merge branch 'sdk-4.0' into sdk-4/documentation-update
This commit is contained in:
@@ -3,6 +3,14 @@
|
|||||||
|
|
||||||
SET COMPOSE_FILE_PATH=%CD%\target\classes\docker\docker-compose.yml
|
SET COMPOSE_FILE_PATH=%CD%\target\classes\docker\docker-compose.yml
|
||||||
|
|
||||||
|
IF [%M2_HOME%]==[] (
|
||||||
|
SET MVN_EXEC=mvn
|
||||||
|
)
|
||||||
|
|
||||||
|
IF NOT [%M2_HOME%]==[] (
|
||||||
|
SET MVN_EXEC=%M2_HOME%\bin\mvn
|
||||||
|
)
|
||||||
|
|
||||||
IF [%1]==[] (
|
IF [%1]==[] (
|
||||||
echo "Usage: %0 {build_start|start|stop|purge|tail|reload_share|reload_acs|build_test|test}"
|
echo "Usage: %0 {build_start|start|stop|purge|tail|reload_share|reload_acs|build_test|test}"
|
||||||
GOTO END
|
GOTO END
|
||||||
@@ -50,6 +58,7 @@ IF %1==build_test (
|
|||||||
CALL :build
|
CALL :build
|
||||||
CALL :start
|
CALL :start
|
||||||
CALL :test
|
CALL :test
|
||||||
|
CALL :tail_all
|
||||||
CALL :down
|
CALL :down
|
||||||
GOTO END
|
GOTO END
|
||||||
)
|
)
|
||||||
@@ -79,25 +88,28 @@ EXIT /B 0
|
|||||||
:build
|
:build
|
||||||
docker rmi alfresco-content-services-${rootArtifactId}:development
|
docker rmi alfresco-content-services-${rootArtifactId}:development
|
||||||
docker rmi alfresco-share-${rootArtifactId}:development
|
docker rmi alfresco-share-${rootArtifactId}:development
|
||||||
call mvn clean install -DskipTests
|
call %MVN_EXEC% clean install -DskipTests
|
||||||
EXIT /B 0
|
EXIT /B 0
|
||||||
:build_share
|
:build_share
|
||||||
docker-compose -f "%COMPOSE_FILE_PATH%" kill ${rootArtifactId}-share
|
docker-compose -f "%COMPOSE_FILE_PATH%" kill ${rootArtifactId}-share
|
||||||
docker-compose -f "%COMPOSE_FILE_PATH%" rm -f ${rootArtifactId}-share
|
docker-compose -f "%COMPOSE_FILE_PATH%" rm -f ${rootArtifactId}-share
|
||||||
docker rmi alfresco-share-${rootArtifactId}:development
|
docker rmi alfresco-share-${rootArtifactId}:development
|
||||||
call mvn clean install -DskipTests -pl ${rootArtifactId}-share-jar
|
call %MVN_EXEC% clean install -DskipTests -pl ${rootArtifactId}-share-jar
|
||||||
EXIT /B 0
|
EXIT /B 0
|
||||||
:build_acs
|
:build_acs
|
||||||
docker-compose -f "%COMPOSE_FILE_PATH%" kill ${rootArtifactId}-acs
|
docker-compose -f "%COMPOSE_FILE_PATH%" kill ${rootArtifactId}-acs
|
||||||
docker-compose -f "%COMPOSE_FILE_PATH%" rm -f ${rootArtifactId}-acs
|
docker-compose -f "%COMPOSE_FILE_PATH%" rm -f ${rootArtifactId}-acs
|
||||||
docker rmi alfresco-content-services-${rootArtifactId}:development
|
docker rmi alfresco-content-services-${rootArtifactId}:development
|
||||||
call mvn clean install -DskipTests -pl ${rootArtifactId}-platform-jar
|
call %MVN_EXEC% clean install -DskipTests -pl ${rootArtifactId}-platform-jar
|
||||||
EXIT /B 0
|
EXIT /B 0
|
||||||
:tail
|
:tail
|
||||||
docker-compose -f "%COMPOSE_FILE_PATH%" logs -f
|
docker-compose -f "%COMPOSE_FILE_PATH%" logs -f
|
||||||
EXIT /B 0
|
EXIT /B 0
|
||||||
|
:tail_all
|
||||||
|
docker-compose -f "%COMPOSE_FILE_PATH%" logs --tail="all"
|
||||||
|
EXIT /B 0
|
||||||
:test
|
:test
|
||||||
call mvn verify -pl integration-tests
|
call %MVN_EXEC% verify -pl integration-tests
|
||||||
EXIT /B 0
|
EXIT /B 0
|
||||||
:purge
|
:purge
|
||||||
docker volume rm ${rootArtifactId}-acs-volume
|
docker volume rm ${rootArtifactId}-acs-volume
|
||||||
|
@@ -3,6 +3,12 @@
|
|||||||
|
|
||||||
export COMPOSE_FILE_PATH=${symbol_dollar}{PWD}/target/classes/docker/docker-compose.yml
|
export COMPOSE_FILE_PATH=${symbol_dollar}{PWD}/target/classes/docker/docker-compose.yml
|
||||||
|
|
||||||
|
if [ -z "${symbol_dollar}{M2_HOME}" ]; then
|
||||||
|
export MVN_EXEC="mvn"
|
||||||
|
else
|
||||||
|
export MVN_EXEC="${symbol_dollar}{M2_HOME}/bin/mvn"
|
||||||
|
fi
|
||||||
|
|
||||||
start() {
|
start() {
|
||||||
docker volume create ${rootArtifactId}-acs-volume
|
docker volume create ${rootArtifactId}-acs-volume
|
||||||
docker volume create ${rootArtifactId}-db-volume
|
docker volume create ${rootArtifactId}-db-volume
|
||||||
@@ -31,29 +37,33 @@ purge() {
|
|||||||
build() {
|
build() {
|
||||||
docker rmi alfresco-content-services-${rootArtifactId}:development
|
docker rmi alfresco-content-services-${rootArtifactId}:development
|
||||||
docker rmi alfresco-share-${rootArtifactId}:development
|
docker rmi alfresco-share-${rootArtifactId}:development
|
||||||
mvn clean install -DskipTests=true
|
${symbol_dollar}MVN_EXEC clean install -DskipTests=true
|
||||||
}
|
}
|
||||||
|
|
||||||
build_share() {
|
build_share() {
|
||||||
docker-compose -f ${symbol_dollar}COMPOSE_FILE_PATH kill ${rootArtifactId}-share
|
docker-compose -f ${symbol_dollar}COMPOSE_FILE_PATH kill ${rootArtifactId}-share
|
||||||
yes | docker-compose -f ${symbol_dollar}COMPOSE_FILE_PATH rm -f ${rootArtifactId}-share
|
yes | docker-compose -f ${symbol_dollar}COMPOSE_FILE_PATH rm -f ${rootArtifactId}-share
|
||||||
docker rmi alfresco-share-${rootArtifactId}:development
|
docker rmi alfresco-share-${rootArtifactId}:development
|
||||||
mvn clean install -DskipTests=true -pl ${rootArtifactId}-share-jar
|
${symbol_dollar}MVN_EXEC clean install -DskipTests=true -pl ${rootArtifactId}-share-jar
|
||||||
}
|
}
|
||||||
|
|
||||||
build_acs() {
|
build_acs() {
|
||||||
docker-compose -f ${symbol_dollar}COMPOSE_FILE_PATH kill ${rootArtifactId}-acs
|
docker-compose -f ${symbol_dollar}COMPOSE_FILE_PATH kill ${rootArtifactId}-acs
|
||||||
yes | docker-compose -f ${symbol_dollar}COMPOSE_FILE_PATH rm -f ${rootArtifactId}-acs
|
yes | docker-compose -f ${symbol_dollar}COMPOSE_FILE_PATH rm -f ${rootArtifactId}-acs
|
||||||
docker rmi alfresco-content-services-${rootArtifactId}:development
|
docker rmi alfresco-content-services-${rootArtifactId}:development
|
||||||
mvn clean install -DskipTests=true -pl ${rootArtifactId}-platform-jar
|
${symbol_dollar}MVN_EXEC clean install -DskipTests=true -pl ${rootArtifactId}-platform-jar
|
||||||
}
|
}
|
||||||
|
|
||||||
tail() {
|
tail() {
|
||||||
docker-compose -f ${symbol_dollar}COMPOSE_FILE_PATH logs -f
|
docker-compose -f ${symbol_dollar}COMPOSE_FILE_PATH logs -f
|
||||||
}
|
}
|
||||||
|
|
||||||
|
tail_all() {
|
||||||
|
docker-compose -f ${symbol_dollar}COMPOSE_FILE_PATH logs --tail="all"
|
||||||
|
}
|
||||||
|
|
||||||
test() {
|
test() {
|
||||||
mvn verify -pl integration-tests
|
${symbol_dollar}MVN_EXEC verify -pl integration-tests
|
||||||
}
|
}
|
||||||
|
|
||||||
case "${symbol_dollar}1" in
|
case "${symbol_dollar}1" in
|
||||||
@@ -92,6 +102,7 @@ case "${symbol_dollar}1" in
|
|||||||
build
|
build
|
||||||
start
|
start
|
||||||
test
|
test
|
||||||
|
tail_all
|
||||||
down
|
down
|
||||||
;;
|
;;
|
||||||
test)
|
test)
|
||||||
|
@@ -3,6 +3,14 @@
|
|||||||
|
|
||||||
SET COMPOSE_FILE_PATH=%CD%\target\classes\docker\docker-compose.yml
|
SET COMPOSE_FILE_PATH=%CD%\target\classes\docker\docker-compose.yml
|
||||||
|
|
||||||
|
IF [%M2_HOME%]==[] (
|
||||||
|
SET MVN_EXEC=mvn
|
||||||
|
)
|
||||||
|
|
||||||
|
IF NOT [%M2_HOME%]==[] (
|
||||||
|
SET MVN_EXEC=%M2_HOME%\bin\mvn
|
||||||
|
)
|
||||||
|
|
||||||
IF [%1]==[] (
|
IF [%1]==[] (
|
||||||
echo "Usage: %0 {build_start|start|stop|purge|tail|build_test|test}"
|
echo "Usage: %0 {build_start|start|stop|purge|tail|build_test|test}"
|
||||||
GOTO END
|
GOTO END
|
||||||
@@ -38,6 +46,7 @@ IF %1==build_test (
|
|||||||
CALL :build
|
CALL :build
|
||||||
CALL :start
|
CALL :start
|
||||||
CALL :test
|
CALL :test
|
||||||
|
CALL :tail_all
|
||||||
CALL :down
|
CALL :down
|
||||||
GOTO END
|
GOTO END
|
||||||
)
|
)
|
||||||
@@ -60,13 +69,16 @@ EXIT /B 0
|
|||||||
EXIT /B 0
|
EXIT /B 0
|
||||||
:build
|
:build
|
||||||
docker rmi alfresco-content-services-${rootArtifactId}:development
|
docker rmi alfresco-content-services-${rootArtifactId}:development
|
||||||
call mvn clean install -DskipTests
|
call %MVN_EXEC% clean install -DskipTests
|
||||||
EXIT /B 0
|
EXIT /B 0
|
||||||
:tail
|
:tail
|
||||||
docker-compose -f "%COMPOSE_FILE_PATH%" logs -f
|
docker-compose -f "%COMPOSE_FILE_PATH%" logs -f
|
||||||
EXIT /B 0
|
EXIT /B 0
|
||||||
|
:tail_all
|
||||||
|
docker-compose -f "%COMPOSE_FILE_PATH%" logs --tail="all"
|
||||||
|
EXIT /B 0
|
||||||
:test
|
:test
|
||||||
call mvn verify
|
call %MVN_EXEC% verify
|
||||||
EXIT /B 0
|
EXIT /B 0
|
||||||
:purge
|
:purge
|
||||||
docker volume rm ${rootArtifactId}-acs-volume
|
docker volume rm ${rootArtifactId}-acs-volume
|
||||||
|
@@ -3,6 +3,12 @@
|
|||||||
|
|
||||||
export COMPOSE_FILE_PATH=${symbol_dollar}{PWD}/target/classes/docker/docker-compose.yml
|
export COMPOSE_FILE_PATH=${symbol_dollar}{PWD}/target/classes/docker/docker-compose.yml
|
||||||
|
|
||||||
|
if [ -z "${symbol_dollar}{M2_HOME}" ]; then
|
||||||
|
export MVN_EXEC="mvn"
|
||||||
|
else
|
||||||
|
export MVN_EXEC="${symbol_dollar}{M2_HOME}/bin/mvn"
|
||||||
|
fi
|
||||||
|
|
||||||
start() {
|
start() {
|
||||||
docker volume create ${rootArtifactId}-acs-volume
|
docker volume create ${rootArtifactId}-acs-volume
|
||||||
docker volume create ${rootArtifactId}-db-volume
|
docker volume create ${rootArtifactId}-db-volume
|
||||||
@@ -22,15 +28,19 @@ purge() {
|
|||||||
|
|
||||||
build() {
|
build() {
|
||||||
docker rmi alfresco-content-services-${rootArtifactId}:development
|
docker rmi alfresco-content-services-${rootArtifactId}:development
|
||||||
mvn clean install -DskipTests=true
|
${symbol_dollar}MVN_EXEC clean install -DskipTests=true
|
||||||
}
|
}
|
||||||
|
|
||||||
tail() {
|
tail() {
|
||||||
docker-compose -f ${symbol_dollar}COMPOSE_FILE_PATH logs -f
|
docker-compose -f ${symbol_dollar}COMPOSE_FILE_PATH logs -f
|
||||||
}
|
}
|
||||||
|
|
||||||
|
tail_all() {
|
||||||
|
docker-compose -f ${symbol_dollar}COMPOSE_FILE_PATH logs --tail="all"
|
||||||
|
}
|
||||||
|
|
||||||
test() {
|
test() {
|
||||||
mvn verify
|
${symbol_dollar}MVN_EXEC verify
|
||||||
}
|
}
|
||||||
|
|
||||||
case "${symbol_dollar}1" in
|
case "${symbol_dollar}1" in
|
||||||
@@ -59,6 +69,7 @@ case "${symbol_dollar}1" in
|
|||||||
build
|
build
|
||||||
start
|
start
|
||||||
test
|
test
|
||||||
|
tail_all
|
||||||
down
|
down
|
||||||
;;
|
;;
|
||||||
test)
|
test)
|
||||||
|
@@ -3,6 +3,14 @@
|
|||||||
|
|
||||||
SET COMPOSE_FILE_PATH=%CD%\target\classes\docker\docker-compose.yml
|
SET COMPOSE_FILE_PATH=%CD%\target\classes\docker\docker-compose.yml
|
||||||
|
|
||||||
|
IF [%M2_HOME%]==[] (
|
||||||
|
SET MVN_EXEC=mvn
|
||||||
|
)
|
||||||
|
|
||||||
|
IF NOT [%M2_HOME%]==[] (
|
||||||
|
SET MVN_EXEC=%M2_HOME%\bin\mvn
|
||||||
|
)
|
||||||
|
|
||||||
IF [%1]==[] (
|
IF [%1]==[] (
|
||||||
echo "Usage: %0 {build_start|start|stop|purge|tail|reload_share|build_test|test}"
|
echo "Usage: %0 {build_start|start|stop|purge|tail|reload_share|build_test|test}"
|
||||||
GOTO END
|
GOTO END
|
||||||
@@ -44,6 +52,7 @@ IF %1==build_test (
|
|||||||
CALL :build
|
CALL :build
|
||||||
CALL :start
|
CALL :start
|
||||||
CALL :test
|
CALL :test
|
||||||
|
CALL :tail_all
|
||||||
CALL :down
|
CALL :down
|
||||||
GOTO END
|
GOTO END
|
||||||
)
|
)
|
||||||
@@ -70,19 +79,22 @@ EXIT /B 0
|
|||||||
:build
|
:build
|
||||||
docker rmi alfresco-content-services-${rootArtifactId}:development
|
docker rmi alfresco-content-services-${rootArtifactId}:development
|
||||||
docker rmi alfresco-share-${rootArtifactId}:development
|
docker rmi alfresco-share-${rootArtifactId}:development
|
||||||
call mvn clean install -DskipTests
|
call %MVN_EXEC% clean install -DskipTests
|
||||||
EXIT /B 0
|
EXIT /B 0
|
||||||
:build_share
|
:build_share
|
||||||
docker-compose -f "%COMPOSE_FILE_PATH%" kill ${rootArtifactId}-share
|
docker-compose -f "%COMPOSE_FILE_PATH%" kill ${rootArtifactId}-share
|
||||||
docker-compose -f "%COMPOSE_FILE_PATH%" rm -f ${rootArtifactId}-share
|
docker-compose -f "%COMPOSE_FILE_PATH%" rm -f ${rootArtifactId}-share
|
||||||
docker rmi alfresco-share-${rootArtifactId}:development
|
docker rmi alfresco-share-${rootArtifactId}:development
|
||||||
call mvn clean install -DskipTests
|
call %MVN_EXEC% clean install -DskipTests
|
||||||
EXIT /B 0
|
EXIT /B 0
|
||||||
:tail
|
:tail
|
||||||
docker-compose -f "%COMPOSE_FILE_PATH%" logs -f
|
docker-compose -f "%COMPOSE_FILE_PATH%" logs -f
|
||||||
EXIT /B 0
|
EXIT /B 0
|
||||||
|
:tail_all
|
||||||
|
docker-compose -f "%COMPOSE_FILE_PATH%" logs --tail="all"
|
||||||
|
EXIT /B 0
|
||||||
:test
|
:test
|
||||||
call mvn verify
|
call %MVN_EXEC% verify
|
||||||
EXIT /B 0
|
EXIT /B 0
|
||||||
:purge
|
:purge
|
||||||
docker volume rm ${rootArtifactId}-acs-volume
|
docker volume rm ${rootArtifactId}-acs-volume
|
||||||
|
@@ -3,6 +3,12 @@
|
|||||||
|
|
||||||
export COMPOSE_FILE_PATH=${symbol_dollar}{PWD}/target/classes/docker/docker-compose.yml
|
export COMPOSE_FILE_PATH=${symbol_dollar}{PWD}/target/classes/docker/docker-compose.yml
|
||||||
|
|
||||||
|
if [ -z "${symbol_dollar}{M2_HOME}" ]; then
|
||||||
|
export MVN_EXEC="mvn"
|
||||||
|
else
|
||||||
|
export MVN_EXEC="${symbol_dollar}{M2_HOME}/bin/mvn"
|
||||||
|
fi
|
||||||
|
|
||||||
start() {
|
start() {
|
||||||
docker volume create ${rootArtifactId}-acs-volume
|
docker volume create ${rootArtifactId}-acs-volume
|
||||||
docker volume create ${rootArtifactId}-db-volume
|
docker volume create ${rootArtifactId}-db-volume
|
||||||
@@ -26,22 +32,26 @@ purge() {
|
|||||||
|
|
||||||
build() {
|
build() {
|
||||||
docker rmi alfresco-share-${rootArtifactId}:development
|
docker rmi alfresco-share-${rootArtifactId}:development
|
||||||
mvn clean install -DskipTests=true
|
${symbol_dollar}MVN_EXEC clean install -DskipTests=true
|
||||||
}
|
}
|
||||||
|
|
||||||
build_share() {
|
build_share() {
|
||||||
docker-compose -f ${symbol_dollar}COMPOSE_FILE_PATH kill ${rootArtifactId}-share
|
docker-compose -f ${symbol_dollar}COMPOSE_FILE_PATH kill ${rootArtifactId}-share
|
||||||
yes | docker-compose -f ${symbol_dollar}COMPOSE_FILE_PATH rm -f ${rootArtifactId}-share
|
yes | docker-compose -f ${symbol_dollar}COMPOSE_FILE_PATH rm -f ${rootArtifactId}-share
|
||||||
docker rmi alfresco-share-${rootArtifactId}:development
|
docker rmi alfresco-share-${rootArtifactId}:development
|
||||||
mvn clean install -DskipTests=true
|
${symbol_dollar}MVN_EXEC clean install -DskipTests=true
|
||||||
}
|
}
|
||||||
|
|
||||||
tail() {
|
tail() {
|
||||||
docker-compose -f ${symbol_dollar}COMPOSE_FILE_PATH logs -f
|
docker-compose -f ${symbol_dollar}COMPOSE_FILE_PATH logs -f
|
||||||
}
|
}
|
||||||
|
|
||||||
|
tail_all() {
|
||||||
|
docker-compose -f ${symbol_dollar}COMPOSE_FILE_PATH logs --tail="all"
|
||||||
|
}
|
||||||
|
|
||||||
test() {
|
test() {
|
||||||
mvn verify
|
${symbol_dollar}MVN_EXEC verify
|
||||||
}
|
}
|
||||||
|
|
||||||
case "${symbol_dollar}1" in
|
case "${symbol_dollar}1" in
|
||||||
@@ -75,6 +85,7 @@ case "${symbol_dollar}1" in
|
|||||||
build
|
build
|
||||||
start
|
start
|
||||||
test
|
test
|
||||||
|
tail_all
|
||||||
down
|
down
|
||||||
;;
|
;;
|
||||||
test)
|
test)
|
||||||
|
@@ -9,6 +9,12 @@
|
|||||||
<name>Archetypes IT</name>
|
<name>Archetypes IT</name>
|
||||||
<description>Archetypes Integration Tests</description>
|
<description>Archetypes Integration Tests</description>
|
||||||
|
|
||||||
|
<properties>
|
||||||
|
<slf4j.version>1.7.12</slf4j.version>
|
||||||
|
<maven.compiler.source>1.8</maven.compiler.source>
|
||||||
|
<maven.compiler.target>1.8</maven.compiler.target>
|
||||||
|
</properties>
|
||||||
|
|
||||||
<parent>
|
<parent>
|
||||||
<groupId>org.alfresco.maven</groupId>
|
<groupId>org.alfresco.maven</groupId>
|
||||||
<artifactId>alfresco-sdk-aggregator</artifactId>
|
<artifactId>alfresco-sdk-aggregator</artifactId>
|
||||||
@@ -29,6 +35,18 @@
|
|||||||
<version>4.8.1</version>
|
<version>4.8.1</version>
|
||||||
<scope>test</scope>
|
<scope>test</scope>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.slf4j</groupId>
|
||||||
|
<artifactId>slf4j-api</artifactId>
|
||||||
|
<version>${slf4j.version}</version>
|
||||||
|
<scope>test</scope>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.slf4j</groupId>
|
||||||
|
<artifactId>slf4j-simple</artifactId>
|
||||||
|
<version>${slf4j.version}</version>
|
||||||
|
<scope>test</scope>
|
||||||
|
</dependency>
|
||||||
</dependencies>
|
</dependencies>
|
||||||
|
|
||||||
<build>
|
<build>
|
||||||
@@ -55,6 +73,14 @@
|
|||||||
</goals>
|
</goals>
|
||||||
</execution>
|
</execution>
|
||||||
</executions>
|
</executions>
|
||||||
|
<configuration>
|
||||||
|
<systemPropertyVariables>
|
||||||
|
<org.slf4j.simpleLogger.defaultLogLevel>DEBUG</org.slf4j.simpleLogger.defaultLogLevel>
|
||||||
|
<org.slf4j.simpleLogger.showDateTime>false</org.slf4j.simpleLogger.showDateTime>
|
||||||
|
<org.slf4j.simpleLogger.showThreadName>false</org.slf4j.simpleLogger.showThreadName>
|
||||||
|
<org.slf4j.simpleLogger.showLogName>false</org.slf4j.simpleLogger.showLogName>
|
||||||
|
</systemPropertyVariables>
|
||||||
|
</configuration>
|
||||||
</plugin>
|
</plugin>
|
||||||
</plugins>
|
</plugins>
|
||||||
</build>
|
</build>
|
||||||
|
@@ -3,6 +3,8 @@ package org.alfresco.maven.archetype;
|
|||||||
import org.apache.maven.it.VerificationException;
|
import org.apache.maven.it.VerificationException;
|
||||||
import org.apache.maven.it.Verifier;
|
import org.apache.maven.it.Verifier;
|
||||||
import org.junit.Before;
|
import org.junit.Before;
|
||||||
|
import org.slf4j.Logger;
|
||||||
|
import org.slf4j.LoggerFactory;
|
||||||
|
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
@@ -14,6 +16,8 @@ import java.io.IOException;
|
|||||||
*/
|
*/
|
||||||
public abstract class AbstractArchetypeIT {
|
public abstract class AbstractArchetypeIT {
|
||||||
|
|
||||||
|
private static final Logger LOG = LoggerFactory.getLogger(AbstractArchetypeIT.class);
|
||||||
|
|
||||||
protected static final File ROOT = new File("target/test-classes/");
|
protected static final File ROOT = new File("target/test-classes/");
|
||||||
protected static final String LOG_FILENAME = "log.txt";
|
protected static final String LOG_FILENAME = "log.txt";
|
||||||
protected static final String ERROR_FILENAME = "error.txt";
|
protected static final String ERROR_FILENAME = "error.txt";
|
||||||
@@ -46,11 +50,16 @@ public abstract class AbstractArchetypeIT {
|
|||||||
/**
|
/**
|
||||||
* Generate a new project from an archetype and verify the generation was successful.
|
* Generate a new project from an archetype and verify the generation was successful.
|
||||||
*/
|
*/
|
||||||
protected void generateProjectFromArchetype() throws Exception {
|
protected void generateProjectFromArchetype(final Logger logger) throws Exception {
|
||||||
|
LOG.info("---------------------------------------------------------------------");
|
||||||
|
LOG.info("Generating a new project from the archetype {}:{}:{}", archetypeProperties.getArchetypeGroupId(), archetypeProperties.getArchetypeArtifactId(),
|
||||||
|
archetypeProperties.getArchetypeVersion());
|
||||||
|
LOG.info("---------------------------------------------------------------------");
|
||||||
Verifier verifier = new Verifier(ROOT.getAbsolutePath());
|
Verifier verifier = new Verifier(ROOT.getAbsolutePath());
|
||||||
verifier.setSystemProperties(archetypeProperties.getSystemProperties());
|
verifier.setSystemProperties(archetypeProperties.getSystemProperties());
|
||||||
verifier.setAutoclean(false);
|
verifier.setAutoclean(false);
|
||||||
verifier.executeGoal("archetype:generate");
|
verifier.executeGoal("archetype:generate");
|
||||||
|
printVerifierLog("PROJECT GENERATION", verifier, logger);
|
||||||
verifier.verifyErrorFreeLog();
|
verifier.verifyErrorFreeLog();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -62,12 +71,27 @@ public abstract class AbstractArchetypeIT {
|
|||||||
*/
|
*/
|
||||||
protected ProcessBuilder getProcessBuilder(final String goalToExecute) {
|
protected ProcessBuilder getProcessBuilder(final String goalToExecute) {
|
||||||
ProcessBuilder pb = new ProcessBuilder(getCommand(), goalToExecute);
|
ProcessBuilder pb = new ProcessBuilder(getCommand(), goalToExecute);
|
||||||
|
LOG.trace("ProcessBuilder environment: {}", pb.environment().toString());
|
||||||
pb.directory(new File(projectPath));
|
pb.directory(new File(projectPath));
|
||||||
pb.redirectOutput(new File(projectPath + File.separator + LOG_FILENAME));
|
pb.redirectOutput(new File(projectPath + File.separator + LOG_FILENAME));
|
||||||
pb.redirectError(new File(projectPath + File.separator + ERROR_FILENAME));
|
pb.redirectError(new File(projectPath + File.separator + ERROR_FILENAME));
|
||||||
return pb;
|
return pb;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Print the content of the log file of a {@link Verifier} into a specific {@link Logger}.
|
||||||
|
*
|
||||||
|
* @param prefix the prefix to print before each line
|
||||||
|
* @param verifier the {@link Verifier} to print its log file content
|
||||||
|
* @param logger the {@link Logger} to print the log content
|
||||||
|
*/
|
||||||
|
protected void printVerifierLog(final String prefix, final Verifier verifier, final Logger logger) throws Exception {
|
||||||
|
logger.info("[{}] - {}", prefix, "Standard output");
|
||||||
|
verifier.loadFile(verifier.getBasedir(), verifier.getLogFileName(), false).forEach(line -> logger.info("[{}] - {}", prefix, line));
|
||||||
|
logger.info("[{}] - {}", prefix, "Error output");
|
||||||
|
verifier.loadFile(verifier.getBasedir(), ERROR_FILENAME, false).forEach(line -> logger.info("[{}] - {}", prefix, line));
|
||||||
|
}
|
||||||
|
|
||||||
private String getCommand() {
|
private String getCommand() {
|
||||||
return projectPath + File.separator + (System.getProperty("os.name").startsWith("Windows") ? WINDOWS_EXEC : LINUX_EXEC);
|
return projectPath + File.separator + (System.getProperty("os.name").startsWith("Windows") ? WINDOWS_EXEC : LINUX_EXEC);
|
||||||
}
|
}
|
||||||
|
@@ -2,12 +2,16 @@ package org.alfresco.maven.archetype;
|
|||||||
|
|
||||||
import org.apache.maven.it.Verifier;
|
import org.apache.maven.it.Verifier;
|
||||||
import org.junit.Test;
|
import org.junit.Test;
|
||||||
|
import org.slf4j.Logger;
|
||||||
|
import org.slf4j.LoggerFactory;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Integration tests for the all-in-one archetype.
|
* Integration tests for the all-in-one archetype.
|
||||||
*/
|
*/
|
||||||
public class AllInOneArchetypeIT extends AbstractArchetypeIT {
|
public class AllInOneArchetypeIT extends AbstractArchetypeIT {
|
||||||
|
|
||||||
|
private static final Logger LOGGER = LoggerFactory.getLogger(AllInOneArchetypeIT.class);
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected ArchetypeProperties createArchetypeProperties() {
|
protected ArchetypeProperties createArchetypeProperties() {
|
||||||
return ArchetypeProperties.builder()
|
return ArchetypeProperties.builder()
|
||||||
@@ -23,7 +27,11 @@ public class AllInOneArchetypeIT extends AbstractArchetypeIT {
|
|||||||
@Test
|
@Test
|
||||||
public void whenGenerateProjectFromArchetypeThenAProperProjectIsCreated() throws Exception {
|
public void whenGenerateProjectFromArchetypeThenAProperProjectIsCreated() throws Exception {
|
||||||
|
|
||||||
generateProjectFromArchetype();
|
generateProjectFromArchetype(LOGGER);
|
||||||
|
|
||||||
|
LOGGER.info("---------------------------------------------------------------------");
|
||||||
|
LOGGER.info("Building the generated project {}", archetypeProperties.getProjectArtifactId());
|
||||||
|
LOGGER.info("---------------------------------------------------------------------");
|
||||||
|
|
||||||
// Since creating the archetype was successful, we now want to actually build the generated project executing the integration tests
|
// Since creating the archetype was successful, we now want to actually build the generated project executing the integration tests
|
||||||
// Execute a purge to ensure old data don't make the test fail
|
// Execute a purge to ensure old data don't make the test fail
|
||||||
@@ -36,6 +44,7 @@ public class AllInOneArchetypeIT extends AbstractArchetypeIT {
|
|||||||
Verifier verifier = new Verifier(projectPath);
|
Verifier verifier = new Verifier(projectPath);
|
||||||
verifier.setAutoclean(false);
|
verifier.setAutoclean(false);
|
||||||
verifier.setLogFileName(LOG_FILENAME);
|
verifier.setLogFileName(LOG_FILENAME);
|
||||||
|
printVerifierLog("PROJECT BUILD", verifier, LOGGER);
|
||||||
verifier.verifyErrorFreeLog();
|
verifier.verifyErrorFreeLog();
|
||||||
verifier.verifyTextInLog("Tests run: 5, Failures: 0, Errors: 0, Skipped: 0");
|
verifier.verifyTextInLog("Tests run: 5, Failures: 0, Errors: 0, Skipped: 0");
|
||||||
}
|
}
|
||||||
|
@@ -2,12 +2,16 @@ package org.alfresco.maven.archetype;
|
|||||||
|
|
||||||
import org.apache.maven.it.Verifier;
|
import org.apache.maven.it.Verifier;
|
||||||
import org.junit.Test;
|
import org.junit.Test;
|
||||||
|
import org.slf4j.Logger;
|
||||||
|
import org.slf4j.LoggerFactory;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Integration tests for the platform jar archetype.
|
* Integration tests for the platform jar archetype.
|
||||||
*/
|
*/
|
||||||
public class PlatformJarArchetypeIT extends AbstractArchetypeIT {
|
public class PlatformJarArchetypeIT extends AbstractArchetypeIT {
|
||||||
|
|
||||||
|
private static final Logger LOGGER = LoggerFactory.getLogger(PlatformJarArchetypeIT.class);
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected ArchetypeProperties createArchetypeProperties() {
|
protected ArchetypeProperties createArchetypeProperties() {
|
||||||
return ArchetypeProperties.builder()
|
return ArchetypeProperties.builder()
|
||||||
@@ -22,12 +26,17 @@ public class PlatformJarArchetypeIT extends AbstractArchetypeIT {
|
|||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void whenGenerateProjectFromArchetypeThenAProperProjectIsCreated() throws Exception {
|
public void whenGenerateProjectFromArchetypeThenAProperProjectIsCreated() throws Exception {
|
||||||
generateProjectFromArchetype();
|
generateProjectFromArchetype(LOGGER);
|
||||||
|
|
||||||
|
LOGGER.info("---------------------------------------------------------------------");
|
||||||
|
LOGGER.info("Building the generated project {}", archetypeProperties.getProjectArtifactId());
|
||||||
|
LOGGER.info("---------------------------------------------------------------------");
|
||||||
|
|
||||||
// Since creating the archetype was successful, we now want to actually build the generated project
|
// Since creating the archetype was successful, we now want to actually build the generated project
|
||||||
Verifier verifier = new Verifier(projectPath);
|
Verifier verifier = new Verifier(projectPath);
|
||||||
verifier.setAutoclean(false);
|
verifier.setAutoclean(false);
|
||||||
verifier.executeGoal("install");
|
verifier.executeGoal("install");
|
||||||
|
printVerifierLog("PROJECT BUILD", verifier, LOGGER);
|
||||||
verifier.verifyErrorFreeLog();
|
verifier.verifyErrorFreeLog();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -2,12 +2,16 @@ package org.alfresco.maven.archetype;
|
|||||||
|
|
||||||
import org.apache.maven.it.Verifier;
|
import org.apache.maven.it.Verifier;
|
||||||
import org.junit.Test;
|
import org.junit.Test;
|
||||||
|
import org.slf4j.Logger;
|
||||||
|
import org.slf4j.LoggerFactory;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Integration tests for the share jar archetype.
|
* Integration tests for the share jar archetype.
|
||||||
*/
|
*/
|
||||||
public class ShareJarArchetypeIT extends AbstractArchetypeIT {
|
public class ShareJarArchetypeIT extends AbstractArchetypeIT {
|
||||||
|
|
||||||
|
private static final Logger LOGGER = LoggerFactory.getLogger(ShareJarArchetypeIT.class);
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected ArchetypeProperties createArchetypeProperties() {
|
protected ArchetypeProperties createArchetypeProperties() {
|
||||||
return ArchetypeProperties.builder()
|
return ArchetypeProperties.builder()
|
||||||
@@ -22,12 +26,17 @@ public class ShareJarArchetypeIT extends AbstractArchetypeIT {
|
|||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void whenGenerateProjectFromArchetypeThenAProperProjectIsCreated() throws Exception {
|
public void whenGenerateProjectFromArchetypeThenAProperProjectIsCreated() throws Exception {
|
||||||
generateProjectFromArchetype();
|
generateProjectFromArchetype(LOGGER);
|
||||||
|
|
||||||
|
LOGGER.info("---------------------------------------------------------------------");
|
||||||
|
LOGGER.info("Building the generated project {}", archetypeProperties.getProjectArtifactId());
|
||||||
|
LOGGER.info("---------------------------------------------------------------------");
|
||||||
|
|
||||||
// Since creating the archetype was successful, we now want to actually build the generated project
|
// Since creating the archetype was successful, we now want to actually build the generated project
|
||||||
Verifier verifier = new Verifier(projectPath);
|
Verifier verifier = new Verifier(projectPath);
|
||||||
verifier.setAutoclean(false);
|
verifier.setAutoclean(false);
|
||||||
verifier.executeGoal("install");
|
verifier.executeGoal("install");
|
||||||
|
printVerifierLog("PROJECT BUILD", verifier, LOGGER);
|
||||||
verifier.verifyErrorFreeLog();
|
verifier.verifyErrorFreeLog();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user