ivy:start-test-engine
Full name:
com.axonivy.ivy.ci:project-build-plugin:8.0.7:start-test-engine
Description:
Starts the Axon.ivy Engine for integration testing. After starting
the engine the plugin provides the url of the engine in the
${test.engine.url} property. You can use this property to configure
your maven-surefire-plugin to work against this test engine.
<artifactId>maven-surefire-plugin</artifactId> ... <configuration> <argLine>-Dtest.engine.url=${test.engine.url} -Dtest.engine.app=Portal</argLine> </configuration>
Attributes:
- Requires a Maven project to be executed.
- Since version: 6.2.0.
Required Parameters
Name | Type | Since | Description |
---|---|---|---|
<ivyVersion> | String | 6.2.0 | The ivy Engine version or version-range that must be used. Must be
equal or higher than MINIMAL_COMPATIBLE_VERSION
Examples:
Default value is: 8.0.26. User property is: ivy.engine.version. |
Optional Parameters
Name | Type | Since | Description |
---|---|---|---|
<additionalClasspath> | String | 6.2.0 | Additional classpath entries for the JVM that runs the Engine User property is: ivy.engine.start.additional.classpath. |
<additionalVmOptions> | String | 6.2.0 | Additional options for the JVM that runs the Engine. To modify the
classpath or the max heap use the provided properties. User property is: ivy.engine.start.additional.vmoptions. |
<engineCacheDirectory> | File | 6.2.0 | Location where ivy engines in required version can be extracted to.
If the Engine does not yet exist, it can be automatically downloaded. Default value is: ${settings.localRepository}/.cache/ivy. User property is: ivy.engine.cache.directory. |
<engineDirectory> | File | 6.2.0 | Location where an unpacked (may pre-configured) ivy Engine in the
required version exists.
If parameter is not set it will be a sub-directory of the engineCacheDirectory. If the Engine does not yet exist, it can be automatically downloaded. User property is: ivy.engine.directory. |
<engineLogFile> | File | 6.2.0 | The file where the engine start is logged Default value is: ${project.build.directory}/testEngineOut.log. User property is: ivy.engine.start.log. |
<maxmem> | String | 6.2.0 | The maximum heap (-Xmx) that is used for starting and running the
Engine Default value is: 2048m. User property is: ivy.engine.start.maxmem. |
<skipTest> | boolean | 6.2.0 | Set to true to skip the engine start. Default value is: false. User property is: maven.test.skip. |
<startTimeoutInSeconds> | Integer | 6.2.0 | The maximum amount of seconds that we wait for a engine to start Default value is: 120. User property is: ivy.engine.start.timeout.seconds. |
<testEngine> | String | 8.0.4 | Configure if the test engine gets copied to the maven target
folder. With this you can start each test cycle with a clean
engine. Integration tests may leave resources like deployed
projects behind which may lead to unwanted side effects on the next
test cycle.
Default value is: COPY_FROM_CACHE. User property is: ivy.test.engine. |
Parameter Details
<additionalClasspath>
Additional classpath entries for the JVM that runs the Engine
- Type: java.lang.String
- Since: 6.2.0
- Required: No
- User Property: ivy.engine.start.additional.classpath
<additionalVmOptions>
Additional options for the JVM that runs the Engine. To modify the
classpath or the max heap use the provided properties.
- Type: java.lang.String
- Since: 6.2.0
- Required: No
- User Property: ivy.engine.start.additional.vmoptions
<engineCacheDirectory>
Location where ivy engines in required version can be extracted to.
If the Engine does not yet exist, it can be automatically downloaded.
- Type: java.io.File
- Since: 6.2.0
- Required: No
- User Property: ivy.engine.cache.directory
- Default: ${settings.localRepository}/.cache/ivy
<engineDirectory>
Location where an unpacked (may pre-configured) ivy Engine in the
required version exists.
If parameter is not set it will be a sub-directory of the engineCacheDirectory.
If the Engine does not yet exist, it can be automatically downloaded.
- Type: java.io.File
- Since: 6.2.0
- Required: No
- User Property: ivy.engine.directory
<engineLogFile>
The file where the engine start is logged
- Type: java.io.File
- Since: 6.2.0
- Required: No
- User Property: ivy.engine.start.log
- Default: ${project.build.directory}/testEngineOut.log
<ivyVersion>
The ivy Engine version or version-range that must be used. Must be
equal or higher than MINIMAL_COMPATIBLE_VERSION
Examples:
- "6.1.2" means ivyVersion = 6.1.2
- "[6.1.0,7.0.0)" means 6.1.0 <= ivyVersion < 7.0.0
- "(6.0.0,]" means ivyVersion > 6.0.0
- Type: java.lang.String
- Since: 6.2.0
- Required: Yes
- User Property: ivy.engine.version
- Default: 8.0.26
<maxmem>
The maximum heap (-Xmx) that is used for starting and running the
Engine
- Type: java.lang.String
- Since: 6.2.0
- Required: No
- User Property: ivy.engine.start.maxmem
- Default: 2048m
<skipTest>
Set to true to skip the engine start.
- Type: boolean
- Since: 6.2.0
- Required: No
- User Property: maven.test.skip
- Default: false
<startTimeoutInSeconds>
The maximum amount of seconds that we wait for a engine to start
- Type: java.lang.Integer
- Since: 6.2.0
- Required: No
- User Property: ivy.engine.start.timeout.seconds
- Default: 120
<testEngine>
Configure if the test engine gets copied to the maven target
folder. With this you can start each test cycle with a clean
engine. Integration tests may leave resources like deployed
projects behind which may lead to unwanted side effects on the next
test cycle.
- COPY_FROM_CACHE = copy the engine if it comes from the engineCacheDirectory.
- MODIFY_EXISTING = don't copy the engine, this could lead to unforeseen behaviour if the same engine is used multiple times.
- COPY_FROM_TEMPLATE = always copy the engine. If
you have a preconfigured engine in the engineDirectory
it will be copied as well.
- Note: that we advise you to move the configuration of such engine to the build cycle itself instead of using a preconfigured one.
- Type: java.lang.String
- Since: 8.0.4
- Required: No
- User Property: ivy.test.engine
- Default: COPY_FROM_CACHE