Basic install

This topic describes how to install Release in a standard installation - either a simple setup with the default configuration, or a manual setup in which you can choose specific options. If you are installing Release in a production-ready environment that includes options like a separate database server, load balancing for your Release servers, an active/active cluster configuration for your Release servers, and other security, monitoring, and performance considerations, see Production environment install.

There are two methods to install Release:

Install Release using a CLI or terminal

This procedure installs Release as a service or daemon using the CLI.

Java considerations

Ensure that the JAVA_HOME environment variable is set correctly for the user or service that will run the Release service.

  • Unix-based systems: Set the location of the Java executable by updating the XL_RELEASE_HOME/bin/.wrapper-env.sh script.

  • Microsoft Windows systems: Include the location of Java/bin in the Windows Path environment variable and set the location of the Java executable by updating the XL_RELEASE_HOME/bin/.wrapper-env.cmd script.
    Important: Make sure the below snippet is added in the xlr-wrapper-win.conf file to avoid service command length characters issues.

    wrapper.java.app.relativize_classapth=true

Start the installation

  1. If you have an Enterprise Edition of Release, download your license file at the Deploy/Release Software Distribution site, this site requires an enterprise customer log-in.
  2. Create an installation directory, such as: /opt/xebialabs/xl-release or C:\Program Files\Release. This directory will be referred to as XL_RELEASE_SERVER_HOME.
  3. Extract the downloaded Release server ZIP file to your newly created directory. Important: Install the Release server as a non-root user such as xlrelease.
  4. Go to and open xl-release/conf/xl-release-license.lic in a text editor.
  5. Copy and paste your license key into this file and save it.
  6. Ensure that the server is configured so that it can start without input from the user. For example, if a repository keystore password is required, paste it into XL_RELEASE_SERVER_HOME/conf/xl-release-server.conf.
  7. Open a command line prompt or terminal.
  8. Point to your installation directory /xl-release-x.x.x-server/bin
  9. Depending on your OS, execute a command from the table below to start the server setup wizard.

    Operating system Command
    Microsoft Windows run.cmd -setup
    Unix-based systems run.sh -setup

    Note: To stop the setup wizard, enter exitsetup. All changes to the configuration will be discarded.

Choose an installation type

The following message is displayed: Do you want to use the simple setup?

There are two types of installation using a terminal or CLI. Depending on your requirements, select one of the following:

  • Install Release using a simple setup: A simple setup is for a quick installation and uses the default settings.
  • Install Release using a manual setup: A manual setup gives you control of all Release installation settings.

Install Release using a simple setup

If you choose the simple setup, Release will install with the following settings:

  • The server will run with security enabled.
  • The server will not use secure communication between the Release GUI and the Release server.
  • The server will listen on Release’s standard HTTP port (5516).
  • The server will use / as the context root.
  • The server will use a minimum of 30 and a maximum of 150 threads.

To install Release using the simple setup:

  1. Provide a password for the admin user. To use the default password of admin, press Enter twice.
  2. At the generate an encryption key prompt:

    • Enter yes to generate a new key.
    • Enter no to use the encryption key that is built-in to Release.
  3. At the password encryption key prompt, enter a password to secure the key. If you do not want to provide a password, press Enter twice. You will be required to enter this password when Release starts.
  4. At the configuration summary prompt, enter yes to complete or no to exit the setup.
  5. A URL is displayed. To access Release, open this URL in a browser. Note: If you did not a enter license key into the license file before you installed Release, you will be prompted to enter it now.
  6. Shut down Release:

    Operating system Shortcut
    Microsoft Windows Ctrl + c
    Unix-based systems Ctrl + c

Install Release using a manual setup

A manual setup gives you control of all Release installation settings. To install Release using a manual setup:

  1. Provide a password for the admin user. To use the default password of admin, press Enter twice.
  2. At the generate an encryption key prompt, enter yes to generate a new key, or no to use the built-in encryption key.
  3. At the enable SLL prompt:

    • Enter yes to enable SSL between the Release GUI and the Release server.
    • Enter no to disable SSL.
  4. If SSL is enabled:

    • At the generate a keystore with a self-signed certificate prompt:

      • Enter yes to generate. You will be prompted to enter the truststore path and password. Note: Release uses a built-in Jetty server that requires a certificate with the name jetty to be present in the keystore.
      • Enter no to skip.
    • At the Enable mutual SSL prompt:

      • Enter yes to enable.
      • Enter no to skip.

      Note: Mutual SSL allows two parties to simultaneously authenticate each other. For an explanation of how mutual SSL works, see this article.

  5. Enter the HTTP bind address where you want the server to listen. This URL will be used in email notifications that are sent from the Release server. Ensure the HTTP bind address is not already in use. Example: localhost:5516.
  6. Enter the port address where you want the server to listen.
  7. Enter the web content root where Release will run. For example, /xl-release or /your-context-root.
  8. Enter the public URL to access Release.
  9. Enter the minimum number of threads the HTTP server should use. The recommended minimum number of threads is 3 per client or 30 for 10 concurrent users. After setup is complete, you can see the thread configuration in the threads.min and threads.max settings in the XL_RELEASE_SERVER_HOME/conf/xl-release-server.conf file.
  10. Enter the maximum number of threads the HTTP server should use. The recommended maximum number or threads is 3 per client or 150 for 50 concurrent users.
  11. At the configuration summary, enter yes to complete or no to exit the setup.
  12. A URL is displayed. To access Release, open this URL in a browser. If you did not a enter license key into the license file before you installed Release, you will be prompted to enter it now.
  13. Log in using the username and password you set during the install process.
  14. Shut down Release:

    Operating system Shortcut
    Microsoft Windows Ctrl + c
    Unix-based systems Ctrl + c

Configure the service

You can configure your Release installation as a service or daemon.

Unix-based systems

  1. As root, execute XL_RELEASE_SERVER_HOME/bin/install-service.sh. This command will install the service with the name xl-release and the title Release Server.
  2. Enter the username you defined, or admin, if you used the default username.
  3. To start Release, execute run.sh.
  4. Log in using the username and password you set during the install process.

Microsoft Windows

  1. Ensure that the JDK java process is available on the PATH or in the JAVA_HOME environment property. See Java considerations for details.
  2. As an administrator, execute XL_RELEASE_SERVER_HOME\bin\install-service.cmd. This command will install the service with the name xl-release and the title Release Server.
  3. Enter the username you defined, or admin, if you used the default username.
  4. To start Release, execute run.cmd.
  5. Log in using the username and password you set during the install process.

For more information on Release start type and server options, see Start Release.

Release server directory structure

The following directory structure exists in the installation directory:

  • archive: Embedded archive / reporting database
  • bin: Server startup scripts
  • conf: Configuration files
  • ext: Release extensions in exploded format
  • hotfix: Contains hotfixes that correct issues with the server software
  • lib: Binary libraries
  • log: Server log files
  • plugins: Release extensions that are packaged as plugins
  • repository: Embedded Release database

The installation directory is referred to as XL_RELEASE_SERVER_HOME.