In this section:
Introduction
The Data Repository Scripts provide scripts for configuring and running a MongoDB Server as a data repository for use with SOAtest and Virtualize. These scripts support MongoDB versions 3.6 - 5.0; other versions of MongoDB are not supported by these scripts.
Using Your Own MongoDB Installation
If you already have MongoDB installed and want to use it with Parasoft products, you will need to download the Data Repository Pack from the Parasoft Marketplace.
Please note that this applies to MongoDB versions 3.6 and later; these assets should not be used with older versions. If you have an older version installed, upgrade to a newer version or download the distribution zip file provided by Parasoft by following the directions found on the Installing a Remote Data Repository Server page.
MongoDB does NOT need to be on the same machine where you are running a Parasoft product. To set up your MongoDB installation for use with Parasoft products using the scripts included with the Data Repository Pack, do the following: You can stop the repository server in Windows by pressing CTRL+C in the console or by running ./ To set up your MongoDB installation for use with Parasoft products manually (without using the scripts included with the Data Repository Pack), configure the server.conf file in the MongoDB installation. For example: You also need to set up the required authentication. See https://www.mongodb.com/docs/manual/tutorial/configure-scram-client-authentication/ for more information about authentication in MongoDB. An example user is shown below. Note that the specific roles are required. You can configure your remote data repository server to use SSL. It is not enabled by default, so you will need to follow the steps outlined below. Note that this procedure only applies to Windows and Mac installations; Linux users will need to install a distribution-specific version of MongoDB and follow the configuration directions from MongoDB. The server.conf file determines settings, such as the data repository server port (default is One script that is included in your download is init.bat (Windows) or init.sh (MacOS or Linux). This initialization script exposes command-line arguments in which you can pass various inputs that would otherwise require an interactive input, simplifying an automated deployment of the data repository server. The examples below show the arguments that are passed to initialize user credentials as well as the optional arguments for registering CTP. Note that the init.bat/sh script uses settings from the default server.conf file, in particular defaulting to port 2424 and non-SSL. If you have edited the server.conf file, you will need to deploy the data repository server manually by running the server.bat/sh, user.bat/sh and (optionally) register.bat/sh scripts yourself.Configuring MongoDB with Data Repository Scripts
win-scripts
).<host>:<port>
in a browser window, for example, localhost:2424
. You should see the following message:server.sh stop
on MacOS/Linux.Configuring MongoDB Manually
### See https://www.mongodb.com/docs/v3.6/reference/configuration-options/
### Path references are resolved relative to the environment's current directorynet:
port: 2424
bindIpAll: true
ipv6: true
#ssl:
#mode: requireSSL
#PEMKeyFile: selfsigned.pem
processManagement:
fork: true
security:
authorization: enabled
storage:
dbPath: repositories
systemLog:
quiet: true
path: logs/repo.log
destination: file
db.createUser(
{
'user' : 'admin',
'pwd' : passwordPrompt(), // or cleartext password
'roles' : [
{'role' : 'root', 'db' : 'admin'}
]
}
)
Configuring Remote Data Repository Server to Use SSL
/scripts
folder of your Data Repository Server directory. An example of the server.conf file with SSL options enabled is shown below. Consult the MongoDB configuration documentation for full configuration details (link provided in the server.conf file). Note that if you need to modify the example file or choose to manually modify your server.conf file, be conscious of the importance of proper spacing; you must use spaces, not tabs.### See https://www.mongodb.com/docs/v3.6/reference/configuration-options/
### Path references are resolved relative to the environment's current directory
net:
port: 2424
bindIpAll: true
ipv6: true
ssl:
mode: requireSSL
PEMKeyFile: selfsigned.pem
security:
authorization: enabled
storage:
dbPath: repositories
systemLog:
quiet: true
path: logs/repo.log
destination: file
Additional Information
ulimit
parameter on your server into consideration. Since data repository servers can cause many files to be open at the same time, if the ulimit
is set too low errors can occur.scripts
folder, passing the arguments through and with the right user for your environment.Advanced Configuration via the server.conf File
2424
), IPv6 connectivity, SSL options, and so on. If you want to modify the default settings, edit the server.conf file. Changes will take effect when the server is restarted.Automating Deployment with the Init Script
init.bat --username <USER> --password <PWD> [--ctp-url <CTP_URL> --ctp-username <CTP_USER> --ctp-password <CTP_PWD>] [--alias <ALIAS>]
init.sh --username <USER> --password <PWD> [--ctp-url <CTP_URL> --ctp-username <CTP_USER> --ctp-password <CTP_PWD>] [--alias <ALIAS>]