Skip to main content

Proxy configuration for Talend CommandLine

Talend allows you to configure a proxy server for Talend CommandLine by editing the Maven settings file and adding new build parameters.

To configure a proxy server:

  • In the <settings> section of the Maven settings file, add the following:
      <proxies>
        <proxy>
          <id>httpProxy</id>
          <active>true</active>
          <protocol>http</protocol>
          <host><proxy_host></host>
          <port><proxy_port></port>
          <username><username></username>
          <password><password></password>
          <nonProxyHosts>localhost</nonProxyHosts>
        </proxy>
        <proxy>
          <id>httpsProxy</id>
          <active>true</active>
          <protocol>https</protocol>
          <host><proxy_host></host>
          <port><proxy_port></port>
          <username><username></username>
          <password><password></password>
          <nonProxyHosts>localhost</nonProxyHosts>
        </proxy>
      </proxies>
  • In the Maven command used to build your project, add the following parameters:
    -Dhttp.proxyHost=<proxy_host> 
    -Dhttp.proxyPort=<proxy_port> 
    -Dhttp.proxyUser=<username> 
    -Dhttp.proxyPassword=<password> 
    -Dhttp.nonProxyHosts=localhost 
    -Dhttps.proxyHost=<proxy_host> 
    -Dhttps.proxyPort=<proxy_port> 
    -Dhttps.proxyUser=<username> 
    -Dhttps.proxyPassword=<password> 
    -Dhttps.nonProxyHosts=localhost
    -Djdk.http.auth.tunneling.disabledSchemes= 
    Example:
    mvn org.talend.ci:builder-maven-plugin:<version>:generateAllPoms 
    -s <studio_path>\configuration\maven_user_settings.xml 
    -Dtalend.studio.p2.base=http://<p2_site>/base/ 
    -Dtalend.studio.p2.update=http://<p2_site>/update/ 
    -Dlicense.path=<license_path> 
    -Dhttp.proxyHost=<proxy_host> 
    -Dhttp.proxyPort=<proxy_port> 
    -Dhttp.proxyUser=<username> 
    -Dhttp.proxyPassword=<password> 
    -Dhttp.nonProxyHosts=localhost 
    -Dhttps.proxyHost=<proxy_host> 
    -Dhttps.proxyPort=<proxy_port> 
    -Dhttps.proxyUser=<username> 
    -Dhttps.proxyPassword=<password> 
    -Dhttps.nonProxyHosts=localhost
    -Djdk.http.auth.tunneling.disabledSchemes= 

About the -Djdk.http.auth.tunneling.disabledSchemes parameter:

Only basic authentication is supported to access the proxy server. As JVM disabled the basic authentication by default, you need to add this parameter in your CI commands to use it, and you can leave the parameter value empty if needed.

Note for headless Linux users:

If you execute CI commands without any GUI installed, you may get the following error:
[INFO] !ENTRY org.eclipse.equinox.security 4 0 YYYY-MM-DD HH:MM:SS
[INFO] !MESSAGE No password was found. Value of "pass" is being stored as a non-encrypted value in the node  "/org.eclipse.core.net.proxy.auth/HTTP".

This error is not a blocker, however it is a warning that indicates the server password is stored in an unsecured way. To fix this, you can add the -Declipse.password parameter in Maven command.

Example:
mvn org.talend.ci:builder-maven-plugin:<version>:generateAllPoms 
-s <studio_path>\configuration\maven_user_settings.xml 
-Dtalend.studio.p2.base=http://<p2_site>/base/ 
-Dtalend.studio.p2.update=http://<p2_site>/update/ 
-Dlicense.path=<license_path> 
-Dhttp.proxyHost=<proxy_host> 
-Dhttp.proxyPort=<proxy_port> 
-Dhttp.proxyUser=<username> 
-Dhttp.proxyPassword=<password> 
-Dhttp.nonProxyHosts=localhost 
-Dhttps.proxyHost=<proxy_host> 
-Dhttps.proxyPort=<proxy_port> 
-Dhttps.proxyUser=<username> 
-Dhttps.proxyPassword=<password> 
-Dhttps.nonProxyHosts=localhost 
-Djdk.http.auth.tunneling.disabledSchemes= 
-Declipse.password=<path_to_master_password_file>

Read the corresponding Maven Apache documentation for more information on proxy configuration.

Did this page help you?

If you find any issues with this page or its content – a typo, a missing step, or a technical error – please let us know!