Installation
Command line and graphical user interface
The installation of best4Automic is largely platform-independent and can be carried out in just a few steps. Due to the OpenJFX library used, one release of best4Automic is delivered as a ZIP archive for Unix systems and another for Windows systems. All other components of a release are otherwise identical in the archives.
Requirements
Before installation, a number of preconditions must be checked. To ensure that a supported platform is available, the operating system used should correspond to one of the following tested platforms:
- Unix - e.g. IBM AIX® (7.2 TL5, 7.3 TL2 - TL3) or Oracle Solaris® (11.3, 11.4)
- Linux - e.g. SUSE Linux Enterprise Server (SLES)® (15) or RedHat Enterprise Linux (RHEL)® (8, 9, 10) Microsoft Windows® (Server 2019, 2022, 2025)
If you have a different UNIX-compatible or Windows system, best4Automic can still work. In any case, the following conditions must be met:
- Oracle Java 17 or OpenJDK 17 in a 64-bit version must be installed on the system. It is sufficient to use the Java Runtime Environment (JRE) (JDK is not necessary). Java versions prior to 17 are not supported.
- The hardware must correspond to an x86 64-bit architecture and the operating system must also be a 64-bit version.
Implementation
If these requirements are met, best4Automic can be installed on the system.
In order for best4Automic to work with the installed version of Automic Automation Engine, it must be installed in version 21 or higher. The patch level is not relevant.
Powershell 5.0 is required for the b4A.ps1 start script and the Powershell actions.
The graphical user interface of best4Automic is implemented using the OpenJFX library. This is currently only available for Linux and Windows systems. So that best4Automic can also be used on older Unix systems, a special start script - b4A-cli - is supplied that forces best4Automic into a command line mode. The OpenJFX library is replaced by an internal variant of best4Automic. This forced command line mode can also be used for Windows systems by using the start script b4A-cli.ps1.
Release archive
The installation process consists solely of unpacking the release archive in the desired directory. It is recommended to unpack the archive with the user who will also execute the modules.
The package contains directories that are structured as described below:
bin
contains start scripts for the best4Automic modules. For Unix systems there is the script b4A
and for Windows systems the scripts b4A.bat
and b4A.ps1
. There are also the start scripts b4A-cli
and b4A-cli.ps1
for command line mode.
lib contains all necessary jar archives for best4Automic. For 3rd party libraries, the corresponding license information can be found in a subdirectory
conf
contains configuration files for the best4Automic modules. The central configuration files defaults.conf
and modules.conf
are delivered. There are more details about the configuration mechanism in one of the following chapters.
data is the standard output directory for modules that create output files.
REST-API
The distribution for the REST API of best4Automic is published in two variants, each as a separate archive, as the installation is different. The first variant is primarily based on the mechanisms of Apache Tomcat®. The archive is published in WAR format and can therefore be installed via the publishing mechanisms of Apache Tomcat®. The second variant is published in ZIP format and is a standalone version that does not require an additional web server as it comes with an embedded Eclipse Jetty®.
Tomcat version
Prerequisites
This version of the REST API from best4Automic can be operated on any platform that is also supported by Apache Tomcat®. There are the following additional requirements
Apache Tomcat® must be installed in version 10 or higher Apache Tomcat® must be operated with at least Java 17
Implementation
The following steps must be carried out before installation:
-
Unpack the WAR archive
-
Configure the b4A release and store the certificate as described in this section
-
Create users from the b4A connection and provide them with at least the following rights for the service area:
- Read rights to all objects of the services
- View executions and reports of the service objects
- Right to preview PromptSets and variable objects
- Write access to the XML variable in which the configuration is stored
- Privilege for viewing messages from his user group
- Assign user group for the service area
-
Create user groups
-
Pack WAR archive
-
Deployment on the Apache Tomcat®
The installation follows the procedure for web applications on a Apache Tomcat® server, which is described in the documentation.
Release archive
The war archive contains the following directories
WEB-INF All necessary Java libraries
- META-INF
- Meta information about the web application
- org
- Startup program for the REST application
- conf
- Configuration directory for best4Automic
- lib
- Compliance tests, 3rd party licenses and other internally required files
- data
- Default directories for generated output files of the b4A modules
Standalone version
Requirements
This version of the REST-API of best4Automic is basically executable on all platforms that support Java 17.
Implementation
The following steps must be carried out before starting:
-
Unpack the ZIP archive
-
Configure the b4A release and store the certificate as described in this section
-
Create users from the b4A connection and provide them with at least the following rights for the service area:
- Read rights to all objects of the services
- View executions and reports of the service objects
- Right to preview PromptSets and variable objects
- Write access to the XML variable in which the configuration is stored
- Privilege for viewing messages from his user group
- Assign user group for the service area
-
Create user groups
The b4A RESTful API can then be started.
java -jar .\b4A-rest-launcher.jar
The default port is 8080. If this is to be changed, it can be specified as a JVM option.
java -Dserver.port=8081 -jar ./b4A-rest-launcher.jar
The following JVM options can be specified to configure SSL:
server.ssl.key-store=./keystore.jks
server.ssl.key-store-password=secret
server.ssl.key-password=another-secret
Alternatively, PEM-encoded files can also be used instead of Java KeyStore files. In this case, the following JVM options must be specified:
server.ssl.certificate=classpath:my-cert.crt
server.ssl.certificate-private-key=classpath:my-cert.key
server.ssl.trust-certificate=classpath:ca-cert.crt
For more information see Spring Boot SSL
Release archive
The ZIP archive contains the following directories and files
conf Configuration directory for best4Automic
- data
- Default output directory for best4Automic
- lib
- External datasources, 3rd party licenses and other internally required files
logs Standard logs directory
- b4A-rest-launcher.jar
- JAR file to be executed
Automatic launch
There are several ways to automatically start the b4A Server or the b4A RESTful API as a standalone variant. Some of these are shown below as examples.
Automic Service Manager
Both b4A services can be started like the Automic Automation Engine services via the Service Manager. A line like the following must be used in the SMD file of the Service Manager under Microsoft Windows®:
VAR B4A_SERVER_CMD;powershell.exe -command "Start-Process powershell.exe -ArgumentList '-File C:\best4automic\bin\b4A-cli.ps1 --server' -NoNewWindow -PassThru -Wait"
DEFINE B4A_SERVER;*B4A_SERVER_CMD;c:\best4automic\bin
Under Linux it would look like this:
VAR B4A_SERVER_CMD;/opt/best4Automic/bin/b4A-cli --server
DEFINE B4A_SERVER;*B4A_SERVER_CMD;/opt/best4Automic/bin
It works similarly for the b4A RESTful API in the standalone version:
VAR B4A_SERVER_CMD;java -Dserver.port=8443 -Dserver.ssl.certificate=/path/to/certificate/cert.pem -Dserver.ssl.certificate-private-key=/path/to/certificate/private.key -jar b4A-rest-launcher.jar
DEFINE B4A_SERVER;*B4A_SERVER_CMD;/opt/best4Automic-rest-v4
System service
The b4A services can also be started as system services. The following is an example of the integration of b4A RESTful API in the systemd on Linux systems.
To do this, a file b4a-rest.service must be created in the directory /etc/systemd/system
with the following content.
[Unit]
Description=b4A RESTful API Standalone
After=network.target
[Service]
Type=simple
Restart=always
ExecStart=java -Dserver.port=8081 -Dserver.ssl.certificate=/path/to/certificate/cert.pem -Dserver.ssl.certificate-private-key=/path/to/certificate/private.key -jar b4A-rest-launcher.jar
WorkingDirectory=/opt/best4Automic-rest-v4
User=b4a
[Install]
WantedBy=multi-user.target
Third Party Software
The best4Automic Solution is based on some open source components that are required by some modules. The respective license or preambles of the licenses are included in the distribution.
- jgit
- gherkin
- diffutils
- gson
- OpenJFX
- Apache Groovy
- Apache Commons IO
- Jayway JsonPath
- Springboot