See Integration with DTP Enterprise Pack for additional information about integrating DTP Enterprise Pack into your DTP environment. In this chapter:

Installation

DTP Enterprise Pack is packaged in the DTP installer. See New DTP Installations for instructions on how to install Enterprise Pack during DTP installation.

Upgrading

If you are upgrading from DTP Enterprise Pack 5.3.2 or older, you will need to upgrade to DTP Enterprise 5.3.3 prior to upgrading to 5.4.0. See Upgrading DTP and DTP Enterprise Pack for additional information and instructions on how to upgrade. 

Upgrading Using the dtpservices Script

DTP Enterprise Pack ships with a script that you can execute to perform administration tasks for Extension Designer, Policy Center, and the Enterprise Pack database. If your installation contains custom flows, be sure to back them up before upgrading.

  1. Open a command prompt and navigate to the [DTP_HOME]/dtpservices directory. 
  2. Run the following command:

    dtpservices.bat upgrade --target <dir>
     

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


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

DTP Enterprise Pack ships with a script that you can execute to perform administration tasks for Extension Designer, Policy Center, and the Enterprise Pack database. The script includes 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:

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

DTP Enterprise Pack ships with a script that you can execute to perform administration tasks for Extension Designer, Policy Center, and the Enterprise Pack database. The script includes 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.\

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.

 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.

Starting and Stopping Enterprise Pack 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 

    You can also stop and start DTP Enterprise Pack applications from the DTP console. See Starting DTP Services on Linux/Solaris

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

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.

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

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.

Configuring Enterprise Pack Applications

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

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.