...
- configuration section with the following parameters
- token or tokenFile - set with a token or a file containing the token obtained from the SeaLights dashboard
- If you create a Build Session ID externally, provide the following fields:
- buildSessionId or buildSessionIdFile - Set with a build session id or a file containing the build session id created by the config step
- createBuildSessionId - Set to false
- If you want to create a Build Session ID using the SeaLights Maven plugin, provide the following fields:
- createBuildSessionId - Set to true
- appName - Name of the application as you want to see it on the SeaLights dashboard
- branchName - Name of the branch as you want to see it on the SeaLights dashboard
- buildName - Name of the build as you want to see it on the SeaLights dashboard
- packagesIncluded - Comma-separated list of packages to include in scan. Note: This is defining a subset, so it must include the astrix to include all sub packages/classes
- packagesExcluded - (Optional) Comma-separated list of packages to include in scan. Note: This is defining a subset, so it must include the astrix to include all sub packages/classes
- executionType - Provide which executions need to handled by the Maven plugin
- full - Execute both the build scanner and the test listener
- testsonly - Execute only the test listener
- filesincluded - (Optional) Set to the binary files to scan. Default: *.class
- filesexcluded - (Optional) Set to the binary files to excluded from the scan. Default:*test-classes*
- workspacepath - Set to with the path to the binary files to scan (Different per module). Default: ${project.build.outputDirectory}
Note: there are rare cases that this needs to be changed. Make sure you really need to change it before doing so. - recursive - (Optional) Set to true to scan all the subdirectories of workspacepath. Default: true
- includeResources - (Optional) Set to include the token and build session ID files in the built resources
- testStage - (Optional) Set the name of the test stage as will be displayed on the SeaLights dashboard
- labId - (Optional) Unique ID for a set of test labs in case multiple labs are running simultaneously
- filesStorage - Set to the temp folder for the agent to create temporary files in. For example /tmp
- logEnabled - Set to true if you want a log to be created
- logLevel - Set the log level to create. For example INFO
- proxy - (Optional) Address of proxy to run connection through
- sealightsJvmParams - Entry to provide JVM params to the SeaLights agent. It should be of the format {"key1":"val1", "key2":"val2"}
- metadata section with CI details
- jobName - Set to the name of the build job. For example ${JOB_NAME}
- logsUrl - Set to the link that the SeaLights dashboard should provide to view the build log. For example ${BUILD_URL}/console
- enabled - (Optional) Set to false to disable SeaLights agent. Default: true.
Note |
---|
- If you override the surefire <argLine>...</argLine> then you need to add the SeaLights parameters inside the override value. See Surefire integration
- Do not call the JSON file 'sealights.json' as the agent uses this file name for override options
- For troubleshooting purpose, you can use
"buildName":"SL_Timestamp" in your JSON file to have the Sealights Maven plugin generating automatically a time stamp (yyyy.MM.dd-hh.mm format) as a default buildname
|
...
If you have configured the argLine for surefire and/or failsafe, the integration will include adding @{sealightsArgLine} to them.
This can be updated/overridden by adding and updating the following parameters to the json file:
- surefireArgLine - Whatever is defined here will be updated in the argLine of surefire if it exists. By default '@{sealightsArgLine}'
- failsafeArgLine - Whatever is defined here will be updated in the argLine of failsafe if it exists. By default '@{sealightsArgLine} -Dsl.testStage="Integration Tests"'
Code Block |
---|
title | Sample of Surefire and Failsafe argLine update |
---|
|
"surefireArgLine": "-Xms1280m -Xmx1280m @{sealightsArgLine}"
"failsafeArgLine": "-Xmx8192m @{sealightsArgLine} -Dsl.testStage=\"Integration Tests\"" |
...
Code Block |
---|
language | bash |
---|
theme | Confluence |
---|
linenumbers | true |
---|
|
echo "Downloading Sealights Agents..."
wget -nv https://agents.sealights.co/sealights-java/sealights-java-latest.zip
unzip -o sealights-java-latest.zip
echo "Sealights agent version used is:" `cat sealights-java-version.txt`
echo '{
"tokentokenFile": "${SL_TOKEN}./sltoken.txt",
"createBuildSessionId": true,
"appName": "${JOB_NAME}",
"branchName": "${GIT_BRANCH}",
"buildName": "${BUILD_NUMBER}",
"packagesIncluded": "*com.example.*",
"packagesExcluded": "",
"filesIncluded": "*.class",
"filesExcluded": "*test-classes*",
"recursive": true,
"includeResources": true,
"testStage": "Unit Tests",
"labId": null,
"executionType": "full",
"logEnabled": false,
"logDestination": "console",
"logLevel": "warn",
"logFolder": "/tmp",
"sealightsJvmParams": {},
"enabled": true,
"filesStorage": "/tmp"
}' > slmaven.json
echo "Updating POM with Sealights..."
java -jar sl-build-scanner.jar -pom -configfile slmaven.json -workspacepath . |
...