Parameters

Parameters can be used to provide specific configurations for tasks, independent of application CLI options. They can be specified independently of which task will or should use them. The framework API provides several ways to auto-process a parameter, for example being a file, a directory, a set of files, or a set of directories. Parameters, once specified, can be required by tasks as mandatory (must be set) or optional (might be set).

All parameters are specified without an application flavor. For instance, the parameter TARGET is specified in the framework. Any application (and related task) using it will use the flavor prefix of the application to set its value. This mechanism allows to use application specific settings the the same parameter, in our example TARGET.

BROWSER - command for browser

Sets the command to start a web browser, for instance Firefox, with a URL. The setting should contain the string %URL%, which will be substituted with the actual URL at runtime. To start for instance Firefox, this variable should be set to firefox --new-tab %URL%. The browser can be given as simple command (then it needs to be in the PATRH) or as absolute command.

default value: none defined

CACHE_DIR - directory for caching settings

Sets the cache directory, used by the task build-cache and then also the loader. Caching parts of the application elements (or even all tasks) can speed up the load of an application as well as runtime behavior, such as help on a task. This feature is useful for slower systems, such as a Raspberry PI or a Cygwin environment.

default value: /var/cache/skb-framework

MANUAL_SRC - source folder for the manual

Sets the path for source files to build the application manual. For standard applications, the default value should be sufficient. In case one wants different manuals for different application modes (e.g. one for build and one for use), this parameter can be used.

default value: $FW_HOME/etc/manual

MVN_SITES - list of Maven sites, entries separated with whitespaces

This parameter should provide a list of directories that contain POM files to generate Maven sites. Use whitespaces to separate directories. Tasks that build Maven sites, such as build-mvn-site will use this parameter to find POM files. If not present, these tasks will not execute.

default value: none defined

PDF_READER - command for pdf reader

Sets the command to start a PDF reader with a given PDF file. The setting should contain the string %%, which will be substituted with the PDF file at runtime. To start for instance Evince, this variable should be set to evince %FILE%. The PDF reader can be given as simple command (then it needs to be in the PATRH) or as absolute command.

default value: none defined

SCENARIO_PATH - path for scenarios, entries separated with whitespaces

This parameter should provide a list of directories where the application can find scenarios. Use whitespaces to separate directories. If set, each directory will be parsed to load scenarios during the load of the application. All found scenarios are available to be executed at runtime.

default value: none defined

SHELL_PROMPT - sets the shell prompt

This parameter can be used to set the prompt the shell should use. It can be set to anything that the shell can execute, including the console functions of the framework. It is for instance possible to use the function PrintColor to create a prompt with colored text.

default value: `sf: `

SKB_FW_TOOL - SKB Tool

This option points to the SKB Framework Tool. This tool is an executable JAR. It is used to convert paragraphs and lists into justified text with pre-defined margins and other parameters. This is done using the SKB asciiparagraph and asciilist implementations. This setting is required to build the manual sources (text files) from the original ADOC files. In a standard installation, the JAR will be available in the bin/java folder of the framework.

default value: $FW_HOME/bin/java/skb-framework-tool-0.0.0-all.jar

TARGET - target folder

This parameter sets the target directory, where artifacts should be created in, similar to the target directory in Maven or the build directory in Gradle. If set, the directory will be tested for create and delete. Some tasks, such as clean will remove the given directory and everything in it.

default value: none defined

XTERM - command for xterm

Sets the command to start a new X terminal (Xterm) with substitution strings for title and command. The title substitution string is %TITLE%. The command substitution string is %COMMAND%. For most X terminals, it is best to use an open ended CLI option for the program, i.e. a CLI option that takes everything until the end of the command line. Most X terminal variants can be started using xterm -T %TITLE% -e %COMMAND%. For mintty on Cygwin this variable should be mintty -t %TITLE% %COMMAND%. For an XFCE4 terminal, e.g. on Ubuntu, this variable should be xfce4-terminal --disable-server --title='%TITLE%' -x %COMMAND%.

default value: none defined