A license is required to use Parasoft SOAtest and Virtualize Server. If you have access to the machine where the WAR is deployed, you can edit the config.properties file in the <SOAVIRT_HOME>/WEB-INF/
directory to configure your license settings before launching the server. If you do not have access to the file or are configuring the server as part of an automated process, you can use the REST API to set license settings. In this section:
Encoding Your Password
A username and password are required to request a license from License Server or DTP for SOAtest and Virtualize Server. We strongly recommend encoding your password to ensure successful authentication and a secure connection. After the WAR is deployed on to <SOAVIRT_HOME>, you can encode your password by running:
<SOAVIRT_HOME>/scripts/encodepass.sh <YOUR_PASSWORD>
or
<SOAVIRT_HOME>/scripts/encodepass.bat <YOUR_PASSWORD>
as appropriate for your OS.
You can also run a command line instance of SOAtest or Virtualize with the -encodepass
flag. Examples:
soatestcli.exe -encodepass <YOUR_PASSWORD>
virtualizecli.exe -encodepass <YOUR_PASSWORD>
Either method will generate an encoded string that you can use in place of the password property in the SOAtest and Virtualize Server configuration file. See CLI Options for additional information about command line options.
Using a License Server License
Configure the following settings to use a license from License Server:
SOAtest and Virtualize
license.network.use.specified.server=true license.network.url=<URL for License Server in the form https://host[:port][/context-path]> virtualize.license.use_network=true virtualize.license.network.edition=performance_server_edition virtualize.license.custom_edition_features=<comma-separated list of features> virtualize.license.enabled=true soatest.license.use_network=true soatest.license.network.edition=server_edition soatest.license.custom_edition_features=<comma-separated list of features> soatest.license.enabled=true
Contact your Parasoft representative to determine the type of license your organization has purchased (for example, server_edition
). If you are using a custom edition, you need to at least specify the Service Enabled
feature for Virtualize and/or the Server API Enabled
feature for SOAtest. If your server uses the HTTPS protocol, prepend https://
to the hostname in license.network.url
.
Virtualize Only
license.network.use.specified.server=true license.network.url=<URL for License Server in the form https://host[:port][/context-path]> virtualize.license.use_network=true virtualize.license.network.edition=performance_server_edition virtualize.license.custom_edition_features=<comma-separated list of features> virtualize.license.enabled=true soatest.license.enabled=false
If your server uses the HTTPS protocol, prepend https://
to the hostname in license.network.url
.
SOAtest Only
license.network.use.specified.server=true license.network.url=<URL for License Server in the form https://host[:port][/context-path]> virtualize.license.enabled=false soatest.license.use_network=true soatest.license.network.edition=server_edition soatest.license.custom_edition_features=<comma-separated list of features> soatest.license.enabled=true
If your server uses the HTTPS protocol, prepend https://
to the hostname in license.network.url
.
See Server Configuration for additional information. For advanced configuration, see Advanced Server Configuration Options.
Using a DTP License
You can connect the SOAtest and Virtualize Server to Parasoft DTP to retrieve a license.
license.network.use.specified.server=false virtualize.license.use_network=true soatest.license.use_network=true dtp.url=<URL for DTP in the form https://host[:port][/context-path]> dtp.user=<username for account on DTP> dtp.password=<password for account on DTP>
Using a Machine-locked License
Configure the following settings to use a local license:
virtualize.license.use_network=false virtualize.license.local.password=<password sent to you from Parasoft> soatest.license.use_network=false soatest.license.local.password=<password sent to you from Parasoft>
See Server Configuration for details on license settings. For advanced configuration, see Advanced Server Configuration Options.
End User License Agreement Acceptance
Set the following property to accept the Parasoft End User License Agreement (please read the EULA at https://www.parasoft.com/license):
parasoft.eula.accepted=true
Setting a License After Starting the Server
You can set the license for the server using the REST API. You can also use the API to configure the connection to CTP (see the env.manager.*
settings in Server Configuration).
Using the REST API page from a web browser
- Start the server and open the documentation for the
preferences
endpoint:http://<HOST>:<PORT>
/soavirt/api/v6#!/preferences/preferencesPUT_config
- Click Try it out and enter your license settings as a JSON object into the New configuration input field. The documentation describes the structure of the valid objects. See the Example Requests for examples that you can copy and paste into the UI.
- Click Execute to send the request. The response body will include the configuration settings with passwords removed:
- Send a GET request to the
status
endpoint to verify the license has been set successfully:http://<HOST>:<PORT>/soavirt/api#!/status/statusGET
This will show information about the server host and the state of each license feature.
Example Requests
You can copy and paste the following JSON examples into your REST API endpoint to help you get started. Change the host, port, and any feature settings to match your license. To accept the EULA, update the "accepted" field to true
. The EULA must be accepted to use the product. You can read the EULA at https://www.parasoft.com/license.
{ "eula" : { "accepted" : false }, "license" : { "licenseServer": { "host": "<your-LS-host>", "port": <your-LS-port> }, "virtualize": { "enabled": true, "useNetwork": true, "network": { "edition": "performance_server_edition" } }, "soatest": { "enabled": true, "useNetwork": true, "network": { "edition": "server_edition" } } } }
{ "eula" : { "accepted" : false }, "license" : { "licenseServer": { "host": "<your-LS-host>", "port": <your-LS-port> }, "virtualize": { "enabled": true, "useNetwork": true, "network": { "edition": "custom_edition", "customFeatures": [ "<comma-separated-list-of-features>" ] } }, "soatest": { "enabled": true, "useNetwork": true, "network": { "edition": "custom_edition", "customFeatures": [ "<comma-separated-list-of-features>" ] } } } }
{ "eula" : { "accepted" : false }, "license" : { "dtp": { "host": "<your-DTP-host>", "port": <your-DTP-port>, "username": "<your-DTP-username>", "password": "<your-DTP-password>" }, "virtualize": { "enabled": true, "useNetwork": true, "network": { "edition": "performance_server_edition" } } } }
{ "eula" : { "accepted" : false }, "license" : { "dtp": { "host": "<your-DTP-host>", "port": <your-DTP-port>, "username": "<your-DTP-username>", "password": "<your-DTP-password>" }, "virtualize": { "enabled": true, "useNetwork": true, "network": { "edition": "performance_server_edition" } }, "soatest": { "enabled": true, "useNetwork": true, "network": { "edition": "server_edition" } } } }
{ "eula" : { "accepted" : false }, "license" : { "virtualize" : { "enabled" : true, "useNetwork" : false, "local" : { "password" : "<virtualize-password>" } }, "soatest" : { "enabled" : true, "useNetwork" : false, "local" : { "password" : "<soatest-password>" } } } }
Using the REST API from the command line
You can also apply a license via the REST API using the command line. Below is an example of how to apply a node-locked license to Virtualize.
First, you will need to get the machine ID of the remote server in order to procure your license from Parasoft. To do so using the REST API, run this command:
curl -X GET "http://server.example.com:9080/soavirt/api/v6/status?fields=machineId" -H "accept: application/json"
The machine ID will be returned in the response. For example, on a Linux server the response would look like this:
{"machineId":"LINUX2-xxxxxxx (Default)"}
Once you've received your license password from your Parasoft representative, you can apply it. To apply a node-locked license using the REST API, run the following command. Be sure to replace PASSWORD_TEXT
in the command below with your actual password.
curl -X PUT "http://server.example.com:9080/soavirt/api/v6/preferences/config" -H "accept: application/json" -H "Content-Type: application/json" -d "{\"eula\":{\"accepted\":false},\"license\":{\"virtualize\":{\"enabled\":true,\"useNetwork\":false,\"local\":{\"password\":\"PASSWORD_TEXT\"}},\"soatest\":{\"enabled\":false,\"useNetwork\":false}}}"
In the example above, the EULA has not been accepted. You will need to manually change \"eula\":{\"accepted\":false}
to \"eula\":{\"accepted\":true}
to accept the EULA. You must accept the EULA to use the product. Please read the EULA at https://www.parasoft.com/license.
To verify the product is licensed:
curl -X GET "http://server.example.com:9080/soavirt/api/v6/status" -H "accept: application/json"
In the output that is returned, look for "licensed": true
under the "virtualize"
field.