CI builder-related Maven parameters
These parameters are detailed in the embedded help of the plugin (see the generate-mojo.html file) and can be used either in the mavenOpts (Jenkins)/mavenOptions(Azure DevOps) or the mvn(Jenkins)/options (Azure DevOps) commands of your CI build definition.
mvn org.talend.ci:builder-maven-plugin:<version>:help
-Ddetail=true
-s F:/<your_studio>/configuration\maven_user_settings.xml
mvn org.talend.ci:builder-maven-plugin:<version>:help
-Dgoal=generateAllPoms
-Ddetail=true
-s F:/<your_studio>/configuration\maven_user_settings.xml
Maven parameter | Value | |
---|---|---|
Talend CommandLine parameters | -Dlicense.path | Path to the license of your Talend product. If the licence path value is a URL and credentials are needed to access it, use the -Dlicense.remote.user and -Dlicense.remote.password parameters. You can use this parameter at build time to update an expired license. To change a license, you can use this parameter and add the -Dinstaller.clean=true parameter if you are not using the mvn org.talend.ci:builder-maven-plugin:8.0.4:install command. |
(Only supported for users with Talend Studio 8.0.1 R2024-04 or
lower) -Dtalend.studio.p2.base |
The URL of the repository for Talend Studio feature packages, or the path to the unzipped folder of the Talend_Full_Studio_p2_repository-YYYYMMDD_HHmm-VA.B.C.zip archive for Talend Studio feature packages. Example for the URL of the official Talend repository for Talend Studio feature packages:
Example for the path to the unzipped folder of the archive for Talend Studio feature packages:
For more information, see Setting up update repositories for Talend Studio and Continuous Integration. Starting from version 8.0.1 R2024-05, the CI Builder parameter -Dtalend.studio.p2.base is no longer supported nor required. |
|
-Dtalend.studio.p2.update |
The URL of the repository for Talend Studio updates, or the path to the unzipped folder of the patch zip assigned to you or the archive for Talend Studio updates. If you want to migrate your projects to a newer version, you need to install patches, including Talend Studio monthly updates, manual patches, and component patches, using this parameter at build time. The main advantage of this parameter is that it allows you to test and apply a patch on one or several existing projects using CI before applying the patch to Talend Studio. Example for the URL of the official Talend repository for the latest Talend Studio monthly update:
Example for the path to the unzipped folder of the archive for a Talend Studio monthly update:
For more information, see Setting up update repositories for Talend Studio and Continuous Integration. |
|
-Dhttp.proxy* and -Dhttps.proxy* parameters + -Djdk.http.auth.tunneling.disabledSchemes |
The URL of the proxy server you want to use. This feature is available from 8.0 R2023-12 onwards. Example:
For more information, see Proxy configuration for Talend CommandLine. |
|
(Optional) -Declipse.keyring and -Declipse.password -Dtalend.studio.p2.base.user and -Dtalend.studio.p2.base.pwd -Dtalend.studio.p2.update.user and -Dtalend.studio.p2.update.pwd |
If basic authentication is enabled in the Talend Studio update repositories, use these parameters to enter the credentials encrypted using the Eclipse secure storage. This feature is available from 8.0 R2022-09 onwards. Example:
For more information on how to encrypt the credentials in the Talend Studio configuration files, see Basic authentication for update repositories in Talend Studio. |
|
(Optional) -Dproduct.path |
Path to the Talend CommandLine installation directory. Example:
From Talend CI Builder version 8.0.4 onwards (available from R2022-04), Talend CommandLine can be downloaded and installed automatically during build time. |
|
(Optional) -Dp2Installer.path |
Path to the Installer files. If -Dproduct.path is specified (deprecated) then the Talend CommandLine will be installed in the value specified for this parameter. Example:
This
allows you to use different paths for different product versions.
|
|
(Optional) -DexecuteRawScript and -DscriptFile |
Used along with the mvn org.talend.ci:builder-maven-plugin:8.0.X:executeScript command to run a custom script that will contain all CI parameters to be executed. By default, this parameter is set to false. Example:
For more information on the differences between -DexecuteRawScript=true and -DexecuteRawScript=false, see Executing a custom script on your projects. |
|
(Optional) -Dinstaller.clean |
Performs a clean installation and removes the
.metadata folder under your CI workspace directory
before reinstalling Talend CommandLine. Example: -Dinstaller.clean=true |
|
(Optional) -Dinstall.org.eclipse.ecf.provider.filetransfer.httpclient4.retrieve.connectTimeout -Dinstall.org.eclipse.ecf.provider.filetransfer.httpclient4.retrieve.readTimeout -Dinstall.org.eclipse.ecf.provider.filetransfer.httpclient4.browse.connectTimeout -Dinstall.org.eclipse.equinox.p2.transport.ecf.retry | Timeout settings in milliseconds to indicate how long to wait for the
connection to open before throwing an error, as well as the number of
connection attempts. These parameters help prevent the CI server from being
blocked when it does not receive a response soon enough. Their default values
are all 12000 milliseconds. Example:
|
|
(Optional) -Dgeneration.type |
Type local as the value to generate the sources of
your artifacts and Tests locally without having to keep the Talend CommandLine up and running during the build
execution. Example:
The server generation type is no longer supported. |
|
(Optional) -DcveReportFilePath |
Allows you to define the path where you want to store the report containing
the list of fixed vulnerabilities in your artifacts. This parameter can only be used with the org.talend.ci:builder-maven-plugin:<version>:detectCVE Maven command. For more information, see Detecting the fixed vulnerabilities (CVEs) of your artifacts while building. Example:
|
|
(Optional) -Dcommandline.skip |
Type true as the value to skip the source code
generation of your artifacts. This parameter can only be used if you have previously generated your artifacts using Talend CommandLine. Example:
|
|
(Optional) -Dtalend.profile.module |
Allows you to activate or deactivate profiles when generating POM files by
setting its value to true or
false. If you have not installed the 8.0 R2022-06 Talend Studio monthly update or a later one provided by Talend and if a main project has duplicated reference projects, you need to add this parameter and set its value to true when generating POM files for the main project to avoid duplicate projects module definition in the POM files and then specify profiles using the -P parameter when building projects and artifacts using the Maven package command. For more information, see Generating POM files for your projects. If your projects are migrated from version 7.1, 7.2, or 7.3, the profiles can be activated or deactivated via selecting or clearing the Set reference project modules in profile check box under the view in the Project Settings dialog box in Talend Studio. You can override the profile settings in Talend Studio via the -Dtalend.profile.module parameter when generating POM files using CI. Example for activating profiles:
|
|
(Optional) -Dtalend.exclude.deleted |
Allows you to exclude modules of deleted items from the POM files by
setting its value to true when generating POM files for
your
projects. Example:
|
|
(Optional) -DprojectFilter |
Allows you to build specific projects. Regular expressions are
supported. Example of filter on all projects with a name starting with CI:
Example
of filter on two specific projects projectA and
projectB:
|
|
(Optional) -DitemFilter and -Dfilter.include.dependencies=true |
Allows you to build specific project items. Regular expressions are
supported. You can use the additional -Dfilter.include.dependencies=true parameter to include all the dependencies of your filtered project items, and to make the POM generation faster. Note that if -DitemFilter is used together with -DprojectFilter, -DitemFilter will be applied only on the projects filtered by -DprojectFilter. If the filtered projects have any reference projects that are not filtered by -DprojectFilter, the POM files will be generated for all items in these reference projects. For examples on how to use this parameter, see Filtering project items. |
|
(Optional) -Dstudio.forceMavenOnline=true |
In case of dependency error when building or scheduling the execution of
Jobs in offline mode, allows Talend Studio to download dependencies according to what is defined in your Maven settings
file. The error you may get is the following: Plugin X.Y.Z or one of its dependencies could not be resolved: Cannot access central It can also be avoided by Generating POM files for your projects before build time as these POM files would then contain all the dependencies needed to execute your Jobs. |
|
(Optional) -Dworkspace |
Allows you to define the current workspace project for which you want to
build artifacts. It can be used with different Maven builder commands like org.talend.ci:builder-maven-plugin:8.0.X:detectCVE or org.talend.ci:builder-maven-plugin:8.0.X:generateAllPoms for example. Example:
|
|
-Dpatch.path | Path to the patch you have installed or want to install (manual patches,
custom component patches, hotfixes, etc.). Note that this parameter is deprecated from 8.0 R2022-04 onwards. Alternatively, you can use the -Dtalend.studio.p2.update parameter. Example
if you have installed the patch
locally:
Example
of patch to
download:
If you don’t already have a Nexus account, ask Talend Support to provide you with one. If credentials are needed to access the remote patch location, use the -Dpatch.remote.user and -Dpatch.remote.password parameters. The patch.remote.password parameter can set a password encrypted by Maven. |
|
-DforceUpdate | Forces the installation of Talend CommandLine from the update site, even if a local installation is present. Note that this parameter is deprecated from 8.0 R2022-04 onwards. Alternatively, you can use the -Dinstaller.clean parameter. Example: -DforceUpdate=true |
|
Custom component parameters | -Dcomponents.* | When deploying Jobs that use custom components to an artifact repository,
specifies the repository in which the component libraries are stored. This is only required for the custom components created using Talend Component Kit. For more information, read this documentation. Example 1 with Bearer
Token authentication to JFrog Artifactory
repository:
Example
2 with user/password
authentication:
Information noteNote: For
older javajet-based components, see How to share a custom component in Talend Studio.
|
(Optional)
-Djvm.arguments |
Specifies JVM arguments if needed, for example, to increase the memory
available to Talend CommandLine. If you have installed the 8.0 R2022-07 Talend Studio monthly update or a later one provided by Talend, the JVM arguments are also applied to the Eclipse p2 director application that is used for installing Talend CommandLine. For more information, see Installing software using the p2 director application. Example:
|
|
(Optional) -Dstudio.allow.java.internal.access |
To prevent Java class access errors at build time, add this parameter with a true value. Example:
Information noteWarning: Jobs built this way cannot be executed with Java 8.
For more information on this option and how to enable it in the Talend Studio project settings, read the Talend Studio documentation. |
|
(Optional) -Dcodes.compile.failOnError |
To prevent the CI build to fail when encountering some routines with
compilation errors that are not used in the artifacts you are building, add
this parameter with a false value to skip them and
continue the
compilation. Example:
|