In this chapter:

See the Integration with DTP Enterprise Pack chapter for additional information about integrating DTP Enterprise Pack into your Development Testing Platform environment.

Installation

Make sure your system environment meets the system requirements before installation. Extract the files from the installation package. The package includes a script, dtpservices.bat for Windows and dtpservices.sh for Linux, which automates processes, such as starting up, stopping, and restarting the Extension Designer, Policy Center, and the database.

Upgrading from a Previous Version

The dtpservices scripts include a process for upgrading your current installation. If your installation contains custom flows, be sure to back them up before upgrading.

  1. Unzip the new distribution and open it in a command prompt. 
  2. Run the following command:

    dtpservices.bat upgrade --target <dir>
     

    Specify the directory of the older version with the --target argument.

Migrating PIE Slices to Extension Designer

Upgrading from PIE 1.x requires a manual migration for its database and flows. See Migrating PIE Slices to Extension Designer for additional information.

Backing Up

The dtpservices scripts include a process for backing up your current installation.

  1. Run the following command to stop DTP Enterprise Pack processes:

    dtpservices.bat stop

  2. Run the following command to create a backup archive:

    dtpservices.bat backup --target <dir> --output <dir>
     

    The --target and --output arguments are optional.

    Specify the directory you want to backup with the --target argument. If not defined, the parent of the current directory and its children are backed up.

    Specify the destination directory for the backup with the --output argument. If not specified, the backup archive will be placed in the parent of the current directory.

The following files and directories are backed up:

  • All service flows
  • All installed marketplace artifacts
  • All DTP add-ons
  • Logs directory (without pid)
  • Databases

Files stored in the Common, Components, Examples, Parameters, and Sample Widgets built-in directories are backed up, but any JSON files stored in those directories are not restored on upgrade.

Restoring a Backup Archive

The dtpservices scripts include a process for restoring backup archives.

  1. Run the following command to stop DTP Enterprise Pack processes:

    dtpservices.bat stop
     
  2. Run the following command to restore a backup archive:

    dtpservices.bat restore --src <your-backup-file.zip> --target <dir>

    Specify the archive you want to restore with the --src argument. This argument is required.

    Specify the directory you want to restore the archive to with the --target argument. This argument is optional. If not specified, the archive will be restored in the current directory.

Additional Installation Notes

  • For Windows installations, we recommend using a third-party zip compression utility, such as WinZip, WinRar, or 7Zip to extract the distribution files for installation. Microsoft Windows' built-in Uncompress utility (from Windows Explorer) has many issues—for example, directory and file name size limitations and performance issues. If you extract the DTP Enterprise Pack distribution zip file using Windows Explorer, you may get a "Path too long" error message. The same error may also result if you open the distribution with 7Zip and drag the DTP Enterprise Pack folder from the 7Zip UI to the desktop.
  • Install the pack as a local user with a local (not network-shared) home directory. The same local user should be used for installing Parasoft DTP.
  • We strongly encourage you to install the pack into a dedicated directory, such as $HOME/parasoft/dtpservices or C:\Parasoft\dtpservices. DO NOT install it into the same directory as Parasoft DTP; if you do, upgrades to one product could impact the installation of the other product(s).
  • The installed.file.lst file in the installation directory is used to track which installation files are modified and should be included in any backups. 

Enabling SSL

SSL is not enabled in DTP Enterprise Pack by default. You will need to enable SSL if you need to secure the data transported between applications in your infrastructure. If you are using an SSL-enabled reverse proxy server, you do not need to enable SSL for Parasoft applications (see Reverse Proxy Support).

To enable SSL, you must first obtain an authority-signed certificate (CA) from a provider, such as VeriSign, Symantec, or GlobalSign.

Do Not Use a Self-signed Certificate

 Unless you are implementing a reverse proxy infrastructure, only use authority-signed certificates when enabling SSL.

  1. If you have the CA, open the ssl.config.js file in an editor. This file is located in the <DTPSERVICES>/shared directory.
  2. Change the value of the enabled property to true and set the options to use your certificate. See the node.js documentation for a complete list of options. If the certificate was created with a passphrase, then be sure to include it in your configuration.
  3. Save the file.

The same ports are used when SSL is enabled for DTP Enterprise Pack, but they will all use the HTTPS protocol. DTP Enterprise Pack will also use SSL-enabled ports to communicate with DTP. If you want to send data between DTP and Enterprise Pack applications over HTTPS, you must enable SSL for both systems to make sure they work properly.

If you enable SSL for Enterprise Pack, you must also enable SSL for the DTP interface (DTP APIs always run under SSL) so that Report Center, Extension Designer, and Policy Center use the same protocol (HTTPS). If you disable SSL and are not using an SSL-enabled reverse proxy server, then passwords and other important information will transmit over the network unencrypted.

Licensing

A Parasoft DTP Enterprise license is required. Contact your Parasoft representative if you have questions about your license.

System Requirements

Operating System

Windows (64-bit only):

  • Windows 7
  • Windows 8
  • Windows 10
  • Windows Server 2008 R2
  • Windows Server 2012
  • Windows Server 2016

Linux:

  • Any Linux distribution similar to /compatible with Ubuntu 14.04/14.10 or later or RedHat Enterprise Server 6.x or later.

Solaris:

Solaris installation is not supported. If your DTP is installed on Solaris/Sparc, you can install the DTP Enterprise Pack on a separate Windows or Linux system. Parasoft does not support Solaris on x86 platform. Contact your sales representative or support for additional questions.

Hardware
  • Same as DTP (see System Requirements)
  • At least 4 GB RAM free. An additional 4 GB RAM is recommended.
Software
  • Parasoft Development Testing Platform Server 5.3.3.
  • Parasoft DTP Engines 10.2.x or later connected to Parasoft DTP
Browser
  • Microsoft Internet Explorer 11*
  • Microsoft Edge
  • Google Chrome
  • Mozilla Firefox
  • Safari

* Extension Designer cannot be run in Compatibility mode. To disable this mode:

  1. Open Internet Explorer's settings menu and choose Compatibility View settings
  2. Remove the Extension Designer from list (if it is there) and/or disable Display intranet sites in Compatibility View if Extension Designer is being viewed from the local network
Network
  • Ports 8314 and 8315. Extension Designer will use any open ports up to 8399. Each service creation will check port availability before assigning a port to the service.
  • Port 1883 available on DTP Server
  • Port 8316 for Mongo DB database

We recommend installing the Enterprise Pack and DTP on the same server. If they must be installed on different servers, they should both be installed on the same network.

  • On Windows, they should use the same domain (Active Directory) and the server's FQDN (Fully Qualified Domain Name) should be resolved by a DNS name server.
  • On Linux, the domain name must be configured and the server's FQDN should be resolved by a DNS name server.

Starting and Stopping Applications

  1. Open a command prompt and navigate to the Enterprise Pack installation directory.
  2. Run the dtpservices script for your operating system with the start argument:

    Windows:

    dtpservices.bat start 

    Linux:

    dtpservices.sh start 

The start argument starts Extension Designer, Policy Center, and database will start.

To stop DTP Enterprise Pack applications, run the dtpservices script with the stop argument:

dtpservices.bat stop

The following table lists all available commands:

CommandOutput
dtpservices.bat startStarts all servers and the database. Also see Configuring Log Rotation for the Database.
dtpservices.bat stopStops all servers and the database.
dtpservices.bat install-addon

Installs deployed slices into DTP. This command is only available if DTP and Extension Designer are installed as the same user on the same machine.

For Windows, the DTP_HOME environment variable is set if DTP is installed on the machine. For Linux, PST_HOME is set under $HOME/.pstrc_<hostname>.

dtpservices.bat statusReports the status for DTP Enterprise Pack applications and services. If you are experiencing issues with Extension Designer, Policy Center, or any of your flows, run this command to verify that components and services are running.

Potential Errors When Stopping on Linux

In some unexpected instances, you may see the following message when running the stop on Linux:    

"Time out on DTP Enterprise Pack process termination. Please kill all processes manually. (Refer to the documentation)"

This message only triggers if any of the children processes of the main DTP Enterprise Pack application (typically one of the service processes) started but was not killed completely. These processes must be terminated before starting DTP Enterprise Pack again. 

  1. Run following command:    
    pgrep node or pgrep -f <installation home>/nodejs/bin/node
    This command will print out all processes that DTP Enterprise Pack started.
  2. Run the kill command using the same argument to kill these process:
    pkill node 
    or
    pkill -f <installation home>/nodejs/bin/node

Configuring Log Rotation for the Database

You can configure the DTP Enterprise Pack database to archive log files, which eases system administration resources. The DTP Enterprise Pack startup process enables the ability to rotate database logs, but your system administrator must perform additional tasks for the database to begin archiving logs. In addition, the process is specific to the operating system running Enterprise Pack.

Linux

The logrotate command configures and starts log rotation using a configuration file. The following snippet is an example configuration file–your actual configuration file should be written according to your organization's needs:

"/home/qa/parasoft/dtpservices/logs/mongodb.log" {
  size 5M
  missingok
  rotate 5
  compress
  delaycompress
}
  1. Make sure that DTP Enterprise Pack is installed and running.
  2. Create a configuration file and save it to the local machine.
  3. Run the following command:

    logrotate -v --state ~/parasoft/dtpservices/logs/status.tmp ~<path to your configuration file>

    status.tmp is not required; you can point to any location where you have write permission. 

Windows

The logrotate command is not native on Windows. You can download a utility that provides this functionality (e.g., LogRotateWin from https://sourceforge.net/projects/logrotatewin/). A configuration file is also required to configure and start rotation. The following snippet is an example configuration file–your actual configuration file should be written according to your organization's needs:

"C:\parasoft softwares\dtpservices\logs\mongodb.log" {
  size 5M
  missingok
  rotate 5
  compress
  delaycompress
  postrotate
      "C:\parasoft softwares\dtpservices\mongodb\bin\mongo.exe"  --port 8316 --eval "db.runCommand('logRotate')" admin
  endscript
}
  1. Make sure that DTP Enterprise Pack is installed and running.
  2. Make sure that a log rotation utility for Windows is installed. These instructions assume you are using LogRotateWin.
  3. Create a configuration file and save it to the local machine.
  4. Run the following command:

    C:\Program Files (x86)\Ken Salter\LogRotate>logrotate.exe -v --state "C:\temp\status.tmp" <path to your configuration file>

    status.tmp is not required; you can point to any location where you have write permission.  

Accessing Enterprise Pack Applications

Enter the host and port number in a browser address bar to open Extension Designer and Policy Center. The following examples use the default ports, but the actual port number depends on the availability of the port. See System Requirements

  • http://<host>:8314 - Extension Designer.
  • http://<host>:8000 - Policy Center.

If SSL is enabled, the protocol will be https (see Enabling SSL).

You will also be able to access Enterprise Pack applications from the settings menu in DTP.


Policy Center will be available from the DTP applications menu.

Setup and Configuration

Extension Designer and Policy Center must be configured for use within your DTP environment. This includes:

  • Connecting to DTP
  • Configuring proxy settings (if applicable)
  • Configuring email server settings
  • Connecting to the Marketplace for downloading and installing extensions

After starting an Enterprise Pack application, choose Settings from the gear icon menu to access the configuration page.

You can also access the settings from Policy Center by choosing Settings from the gear icon menu.

See DTP Enterprise Pack Configuration for details.

Branding Extension Designer and Policy Center

You can add a custom logo to the header of Enterprise Pack applications. To add a custom logo, replace the png at /public/lib/custom-logo.png with your company logo. 

The image file must be named "custom-logo.png". The dimensions of the image container is 300px by 35px.

Important Concepts and Terminology

The following table provides working definitions of concepts and terms associated with DTP Enterprise Pack applications.

Service

In the context of this technology, a service is a group of one or more flows or artifacts that can perform specialized tasks. Services can provide custom REST endpoints, custom widgets for DTP, custom practices for Policy Center, trigger actions in third-party system, etc.

Services in DTP Enterprise Pack should not be confused with web services or components that are more generally described as services.

Flow

Flows are one or more nodes that can perform specialized tasks. Flows can be grouped into services to more evenly distribute data processing across endpoints, which results in more stable execution.

Node

Nodes are the basic building blocks for creating flows and services that can perform specialized tasks.

Artifact

Artifacts are complete services or flows that can be downloaded and installed from the marketplace (see Downloading and Installing Artifacts) or created locally and uploaded to Extension Designer.
PolicyPolicies are non-functional requirements that can be automatically monitored in an exception-based manner. See Core Policy Center Concepts for additional information.
PracticeA practice can be any means of automatically assessing the software being produced, such as static analysis, metrics analysis, code coverage, and unit testing. See Core Policy Center Concepts for additional information. 
GateGates measure compliance to one or more policies at a particular point in time. If the policy expectations are not met, the gate can prevent the software from proceeding to the next phase of the SDLC. See  Core Policy Center Concepts for additional information.

Model

If you want to perform custom calculations within the context of a flows or services, you can create a model, which defines the template for the data used to perform the specific type of calculation. Specific instances of a model are called profiles, which can be used in a flow to carry out the custom calculation. See Working with Model Profiles for additional information.

Profile

Each instance of a model is a profile. Profiles must be paired with flows that can consume the data associated with the specific type of calculation. See  Working with Model Profiles for additional information. 


  • No labels