Before running AppVet, the AppVet system must be configured. Figure 4-1
shows the AppVet system and related configurations.
AppVet configurations. (Enlarge)
AppVet involves the following configurations:
- AppVet: AppVet must be configured using the
configuration file. This file is used by AppVet to configure various
attributes of AppVet including logging and timeout values. The schema
AppVetProperties.xml is defined in
AppVet Properties Schema.
- MySQL: AppVet requires that MySQL be configured with a
database and relational tables to support AppVet functionality. The
schemas for the AppVet database are defined in Database Schema.
- Tool Adapter: AppVet requires that a tool adapter
configuration file be defined for each tool service used by AppVet. A
tool adapter configuration file describes information about a tool
service and is used by AppVet to connect to the service and typically
do not require additional modification by the AppVet administrator.
With the exception of some reserved internal tools for AppVet
registration and pre-processing, a tool adapter configuration file is
provided by the vendor or owner of the tool service. Both registration
and pre-processing adapters are included with AppVet. The schema for a
tool adapter is defined in Tool Service Adapter Schema.
- Apache Tomcat: Apache Tomcat does not need to be
configured to run AppVet. However, Tomcat may need to be configured to
support the hosting organization's deployment requirements (e.g.,
using SSL). Such configurations are beyond the scope of this document.
- Tool Service: A tool service may have its own internal
configuration file (shown as
Figure 4-1). We show this file here in order to distinguish it from a
tool adapter configuration file that is defined by the vendor or owner
of the tool service but used by AppVet. AppVet does not use a tool
service's configuration file.
4.2 AppVet Installer
All AppVet configurations are generated using the AppVet Installer. The
AppVet installer generates and configures the following items:
- AppVet MySQL database and relational tables
- Registration and pre-processing tool adapters
Before running the AppVet Installer, set the environment variable
to a directory path on the host system. It is recommended to use a path
that does not contain spaces or special characters. For example, use
Next, launch the AppVet Installer from the
Eclipse project by right clicking on
Run As > Java Application
. This will bring up the AppVet
installer application as shown in Figure 4-2.
Figure 4-2. AppVet
to view the Host dialog as shown in Figure 4-3.
Figure 4-3. Host dialog. (Enlarge)
The Host dialog provides the following options:
- Use FQDN: This option defines
a fully qualified domain name (FQDN) and should be used if an FQDN exists for the host server. An example of an FQDN is "myhost.example.com". Note that when accessing AppVet from a web browser, this FQDN must be used.
- Use IP: This option defines the IP address of the host server and should be used if no FQDN is available for the host server. The IP address may be either static or dynamic. If the IP address is dynamic, the IP address must be changed in the HostType->Hostname tag of the AppVet Properties.xml file. Note that when accessing AppVet from a web browser, this IP address must be used.
- Keep Apps: This option should be selected if apps
should be archived on the system. If this option is not selected, apps
will be deleted after they are processed. Note that keeping apps on
the system may result in significant disk space usage.
to view the Administrator dialog as shown in Figure 4-4.
Enter the AppVet administrator account information. Note that additional
administrators can be added later.
Figure 4-4. Admin dialog. (Enlarge)
to view the Platform dialog as shown in Figure 4-5. Select
SSL if Secure Socket Layer is enabled for your Tomcat server. In
addition, enter the primary port of your Tomcat server. Note that this
match your Tomcat
configuration. Further note that Tomcat uses port 8080 as the default non-SSL port and port 8443 as the default SSL port. When accessing AppVet from a web browser, this port must be specified (e.g., https://myhost.example.com:8443/appvet
). Next, add your MySQL username and password. Note that adding an
incorrect MySQL username or password will result in errors when running
Figure 4-5. Platform dialog. (Enlarge)
to view the AppVet installation progress as shown in
Figure 4-6. Admin dialog. (Enlarge)
After running the AppVet installer, the
directory is generated as shown in Figure 4-7.
Figure 4-7. AppVet
files directory. (Enlarge)
The AppVet files directory contains three subdirectories:
directory is used as permanent storage for tool reports as well as
temporary storage for uploaded apps. The
directory contains the main AppVet configuration file
and a set of tool service adapters defined in
. In Figure 4-7, two internal tools,
are defined as well as two other tools,
directory contains the AppVet log
is initially configured with default values for operational use and
should be appropriate in most cases. However, for AppVet development, it
is best to edit
and change the XPath value in
. In addition, change the XPath value in
. These changes will configure AppVet to display
log messages to the Eclipse console.
AppVet accesses a tool service using a tool service adapter
. A tool
service adapter is an XML configuration file that defines properties of
a tool service including the service's required (REST) API parameters. A
tool service adapter's structure is defined by the
Tool Service Adapter Schema
. Typically, tool service adapters will be defined
and published by the tool service provider. Thus, tool service adapters
require little or no configuration by the AppVet administrator.
Adding a new tool service to AppVet involves adding a new tool
service adapter to the
adding a new tool configuration file, AppVet automatically adds a new
entry for the tool into the database. Note that newly added tools are
not applied to previously processed apps. Instead, a tool status of
is displayed for such apps.
Tool services can be removed from AppVet by removing their
corresponding adapter from the
directory. Removing a tool from AppVet will hide results for the tool
even if an app has been previously processed by the tool. However,
AppVet will continue to store all previously generated results for the
tool in its repository. If the tool is later re-added to the system,
AppVet will display the tool's results for previously processed apps. To
ensure proper operation of AppVet, ensure that Tomcat is shut down
before adding or removing a tool service adapter.
The AppVet administrator must ensure that tool service
adapters for all desired tools are present in
. Do not include adapters for tool
services that are not available to AppVet or that AppVet cannot
authenticate to. Doing so will lead to AppVet system errors for those