Running the Agent in Command Line Mode (DAI Run Agent)
The DAI Run Agent runs at a command line without a graphical user interface (GUI). Thus, you can launch a Run Agent from a batch or shell script, or from within a container. You can also customize how a Run Agent operates by passing arguments with the Run Agent command at the command line. Information about how to use the Run Agent command and available options are provided below.
To use the Run Agent command, follow these steps:
-
From the command prompt, navigate to the agent directory. For example:
- For Windows:
C:\Program Files (x86)\eggplantDAIRunAgent\
- For Mac:
/Applications
- For Linux: (The path in which your
eggplantDAIRunAgent
executable is extracted to)
- For Windows:
-
Run the agent executable, and add the appropriate arguments:
- For Windows:
eggplantDAIRunAgent.exe [arguments]
- For Mac:
./eggplantDAIRunAgent [arguments]
- For Linux:
./eggplantDAIRunAgent [arguments]
- For Windows:
Using DAI Run Agent Command Line Arguments
You can specify how your DAI Run Agent operates by passing arguments with the Run Agent command at the command line. Each argument is preceded with two, concatenated dashes, like this: --argument_name
. For a full list of DAI Run Agent arguments and how to use them, see Run Agent Command Help or Table of Run Agent Command Line Arguments below. Examples of Run Agent commands are also provided below.
When the DAI Run Agent starts, it also starts an Eggplant Functional (EPF) instance in command-line mode, which is without its GUI. This is also known as the Fusion Engine. The Fusion Engine actually runs the DAI snippets. You can specify options you want this Fusion Engine to run with along with your Run Agent command. See Passing Eggplant Functional Command-Line Arguments with the Run Agent Command below for more information.
Simple Example of Running the DAI Run Agent
You can launch a fully-configured DAI Run Agent with the simple command shown below when you specify the path to an existing DAI environment .ini
file that is downloaded to your system. For more information about DAI .ini
files, see How to create a DAI Environment.
Windows:
In a CMD shell or PowerShell on Windows systems:
“C:\Program Files (x86)\eggplantDAIRunAgent\eggplantDAIRunAgent.exe” --ini-file "C:\Users\myuser\my_env.ini"
Mac/Linux:
In a bash shell terminal on a Mac or Linux-based systems:
./eggplantDAIRunAgent --ini-file "my envs/my_env.ini"
Where:
"C:\Program Files (x86)\eggplantDAIRunAgent\eggplantDAIRunAgent.exe"
is the DAI Run Agent command on Windows and./eggplantDAIRunAgent
is the DAI Run Agent command on Mac and Linux.--ini-file C:\Users\myuser\my_env.ini
on Windows and--ini-file "my envs/my_env.ini
on Mac or Linux are the DAI Run Agent arguments for the DAI.ini
file and value, which is the.ini
file location. The.ini
file location is arbitrary. Specify the location where the file is saved on your system.
On Mac, Linux and Windows, if the path to your DAI .ini
file contains spaces, you must enclose it in quotes as shown in the Mac/Linux example above.
Also, if your DAI .ini
file contains more than one environment
section you must provide the --host-url
and --env-id
arguments and values along with the --ini-file
argument in your Run Agent command. You cannot use the syntax as shown in the simple example above.
Other Examples for the DAI Run Agent
Following are examples of how to run the DAI Run Agent on different operating systems with more verbose, but optional, arguments. See Run Agent Command Help or the Table of Run Agent Command Line Arguments below for a list of available arguments.
Windows:
In a CMD shell or PowerShell on Windows systems:
“C:\Program Files (x86)\eggplantDAIRunAgent\eggplantDAIRunAgent.exe” --ini-file "C:\Users\myuser\my_env.ini" --log-level INFO --drive-port 5401
“C:\Program Files (x86)\eggplantDAIRunAgent\eggplantDAIRunAgent.exe” --ini-file "C:\Users\myuser\my_env.ini" --host-url https://server.company.com --env-id 1
Mac/Linux:
In a bash shell terminal on a Mac or Linux-based systems:
./eggplantDAIRunAgent --ini-file envs/my_env.ini --log-level INFO --drive-port 5401
./eggplantDAIRunAgent --ini-file "my envs/my_env.ini" --host-url https://server.company.com --env-id 1
Run Agent Command Help
For a full list of DAI Run Agent arguments, you can run the DAI Run Agent command with the --help
argument as shown in the following examples. You can also see the arguments in the Table of Run Agent Command Line Arguments.
Windows:
In a CMD shell or PowerShell on Windows systems:
"C:\Program Files (x86)\eggplantDAIRunAgent\eggplantDAIRunAgent.exe" --help
Mac/Linux:
In a bash shell terminal on a Mac or Linux-based systems:
./eggplantDAIRunAgent --help
Table of Run Agent Command Line Arguments
The following is a list of the supported command-line arguments and their corresponding environment variables. You can also run the Run Agent command with the --help
argument at the command line to see this list of options as described in Run Agent Command Help above.
Arguments | Environment Variables | Description |
---|---|---|
--ini-file FILE | DAI_AGENT_INI_FILE | The location of the environment settings (.ini ) file downloaded from the DAI server. The (.ini ) file is only created during loading of the downloaded ini file. Default: Windows: C:\Users\{user}\.eggplantDAI.ini (It is marked as hidden.)Mac: ~/.eggplantDAI.ini Linux: ~/.eggplantDAI.ini |
--host-url TEXT | DAI_HOST_URL | The Eggplant DAI server that you connect to, e.g. https://server.company.com . This maps to host_url in your environment settings (.ini ) file.Use this parameter in conjunction with --env-id to select the appropriate section of the environment settings (.ini ) file.If not specified, uses the first section in the .ini file. |
--env-id INTEGER | DAI_EXEC_ENV_ID | The ID of the execution environment on the DAI server. Use this parameter in conjunction with --host-url to select the appropriate section of the environment settings (.ini ) file.If not specified, uses the first section in the .ini file. |
--suite-root DIRECTORY | EGGDRIVE_SUITE_ROOT | The folder used to store downloaded suites. Eggplant Functional (EPF) suites will be uploaded and downloaded as subfolders of the specified root folder. Default: Windows: C:\ProgramData\Eggplant\agent\Suites Mac: ~/Library/Application Support/agent/suites Linux: ~/.local/share/agent/suites |
--gui [True | False] | Specifies whether or not to display the Eggplant Functional UI. Default: False | |
--drive-port INTEGER | EGGDRIVE_PORT | The port Eggplant Functional will use to listen for eggDrive commands. If not specified, it will use a randomly assigned free port. |
--log-level [INFO | DEBUG | WARNING | ERROR | TRACE] | The logging level. INFO: logs basic messages indicating the Run Agent is operating as expected.DEBUG: logs detailed messages typically used for diagnosing problems.WARNING: logs unexpected events or potential problems. This level includes the messages logged at level ERROR .ERROR: Logs errors that occurred preventing the Run Agent from functioning properly.TRACE: logs all log-level messages. Default: INFO | |
--log-folder DIRECTORY | DAI_AGENT_LOG_FOLDER | The folder used to store log files. Default: Windows: C:\ProgramData\Eggplant\agent\logs Mac: ~/Library/Logs/agent Linux: ~/.cache/agent/log |
--win-service [INSTALL | START | STOP | REMOVE | RESTART] | For management of DAI Run Agents that you want to run, or already configured to run, as a Windows service, specify the appropriate option to control the Windows service. Use this parameter with the--service-name parameter to specify the Run Agent Windows service's display name. See Running the Agent as a Windows Service for more information. [Default service name: DAI Run Agent (when you install a service but do not specify a service name)]Note: You only see this and the other Windows service options when you run the DAI Run Agent command with the --help argument on Windows. The Windows service options are not available on Mac and Linux. | |
--service-name TEXT | The display name of the installed DAI Run Agent Windows service. Use this parameter with the--win-service parameter to specify a Run Agent's Windows service display name. [Default: DAI Run Agent ]Note: You only see this and the other Windows service options when you run the DAI Run Agent command with the --help argument on Windows. The Windows service options are not available on Mac and Linux. | |
--service-desc TEXT | The description of a DAI Run Agent Windows service. Use this parameter with the --win-service parameter to set the service description. [Default: Eggplant DAI Agent ]Note: You only see this and the other Windows service options when you run the DAI Run Agent command with the --help argument on Windows. The Windows service options are not available on Mac and Linux. | |
--licenser-host TEXT | (Optional) An extra argument for specifying the RLM License Server host for the EPF instance started with this agent. | |
--licenser-password TEXT | (Optional) An extra argument for specifying a password when you use the --licenser-host option described above. | |
--version | Show the version | |
--help | Show the help message and exit. |
Passing Eggplant Functional Command-Line Arguments with the Run Agent Command
When the DAI Run Agent starts, it also starts an Eggplant Functional (EPF) instance in command-line mode (which means without its GUI) as described in What are the DAI Design and DAI Run Agent?. Eggplant Functional running in this mode is also known as the Fusion Engine. You can specify how you want the Fusion Engine to operate by passing Eggplant Functional command-line arguments along with your DAI Run Agent command and arguments.
To pass EPF arguments with the DAI Run Agent command, precede the EPF arguments with two, standalone dashes, like this: --
. The EPF arguments are distinguished from the DAI Run Agent arguments in that they are preceded with a single, concatenated dash, like this: -LicenserHost
. See an example of this syntax below.
Simple Example of Running the Run Agent with Eggplant Functional Arguments
"C:\Program Files (x86)\eggplantDAIRunAgent\eggplantDAIRunAgent.exe" --ini-file C:\my_ini.ini -- -LicenserHost <ip_address> -LicenserPassword
The example DAI Run Agent command with Eggplant Functional arguments above shows following:
"C:\Program Files (x86)\eggplantDAIRunAgent\eggplantDAIRunAgent.exe"
is the DAI Run Agent command on a Windows system.--ini-file C:\my_ini.ini
is the DAI Run Agent argument for the DAI.ini
file and value, which is the.ini
file location.--
(two, standalone, concatenated dashes) is the argument that specifies that this Run Agent command includes command-line arguments for the EPF instance it will launch.-LicenserHost <ip_address>
is the EPF command-line argument that specifies the location of the EPF instance's Reprise License Manager (RLM) Server. The<ip_address>
value would be replaced with the IP address (or host name) of the machine. Note that this example only shows 1 EPF argument. You can pass multiple EPF arguments. If you specify more than one EPF argument, you still include two-dashes argument (--
) only once before them all.-LicenserPassword
is the password for the RLM Server specified in the-LicenserHost
argument above. Note that this example shows passing this argument without a value.
Commonly Passed Eggplant Functional Arguments
Examples of EPF arguments commonly passed with the Run Agent command are provided in the table below. For information about all EPF command-line arguments, see Running from the Command Line and Runscript Command Line Options in the EPF documentation.
Arguments | Environment Variables | Description |
---|---|---|
-LicenserHost TEXT | An Eggplant Functional (EPF) argument to specify the Reprise License Manager (RLM) Server host machine. | |
-LicenserPassword TEXT | An EPF argument for the RLM Server password. |
You can specify the RLM Server for your Eggplant Functional/Fusion Engine instance in your DAI Agent command using either the DAI Run Agent arguments (--licenser-host
and --licenser-password
with their values) as described in the Table of Run Agent Command Line Arguments or using the EPF arguments (--
followed by -LicenserHost
and LicenserPassword
with their values) as shown above.
Eggplant Functional Stop and Restart Settings for Test Configurations Run with a Run Agent
When you run a test configuration with a DAI Run Agent, you can configure the length of time to run Eggplant Functional before restarting or the grace periods for poll-time stopping and restarting with the following environment variables. See Eggplant Functional Stop and Restart Settings for Test Configuration Runs for details.
Environment Variables | Default | Description |
---|---|---|
RESTART_EPF_AFTER_SECONDS | 1800 | When running a test configuration, you can configure the interval in seconds that EPF runs before restarting. This variable takes effect after the current step finishes and before moving to the next step if the defined time is exceeded. It only applies to test configurations run with the DAI Run Agent. During live runs, EPF runs continuously without restarting. If you do not want EPF to restart during your test runs, you can disable this option by setting it to 0 (zero). |
EPF_QUIT_POLL_TIME_SECONDS | 20 | The grace period for EPF to quit during the restart process. |
EPF_RESTART_POLL_TIME_SECONDS | 120 | The grace period for EPF to start up after having quit. EPF_RESTART_POLL_TIME_SECONDS does not include EPF_QUIT_POLL_TIME_SECONDS . |