Command-Line Interface
Overview
Command-Line Interface is a command-line module of the Anteater recipe engine.
It provides a workspace-based runtime for loading configuration, discovering available automation recipes, and executing them to support repeatable tasks from scripts and terminal sessions. It also includes features such as safe log masking for sensitive data, optional local command-server control, and built-in utilities for encryption, resource loading, and lightweight XML parsing.
Package documentation (package-info.java) summary:
- Core runtime API for loading configuration, discovering recipe definitions, managing the workspace lifecycle, and running tasks (including background execution and optional local command-server control).
- Log filtering utilities that mask sensitive information (for example, email addresses and configured fields in JSON-like text) immediately before it is written.
- XML-recipe execution support that parses recipes into a node tree, walks the tree, dispatches elements to commands, and manages variables/substitutions and concurrency helpers.
- Runtime-retained annotations that attach human-readable command descriptions and examples to command implementations.
- Shared, dependency-light utilities for resource loading, text formatting/masking, SPI discovery, encryption/decryption, path filtering, lightweight assertions, and small compatibility types.
- Lightweight, non-validating XML parsing utilities that build a mutable node tree model with helpers for selection/mutation and XML serialization.
In summary, this project delivers a configurable command-line application for running automation recipes: it loads a workspace configuration, finds available recipes, executes them (optionally in the background or under local command-server control), and includes safeguards to help prevent sensitive information from being written to logs.
Installation Instructions
This project uses an SVN repository.
SVN URL:
https://svn.code.sf.net/p/anteater/code/trunk/anteater-cli
Prerequisites:
- Java Development Kit (JDK) 8
- Apache Maven 3.x
- SVN client (command line
svn) - Internet access to download Maven dependencies
Checkout and build with Maven:
svn checkout https://svn.code.sf.net/p/anteater/code/trunk/anteater-cli anteater-cli
cd anteater-cli
mvn -U clean verify
Direct download:
Getting Started
Prerequisites:
- Java runtime (JRE/JDK) installed and available on
PATH - The built application JAR (or the downloaded distribution)
- A workspace configuration file (commonly
ae-config.xml) - One or more recipe definition files and any required supporting files
Basic Usage:
java -jar ae.jar
Typical Workflow:
- Obtain the application JAR (build it with Maven or download the distribution).
- Create or update your workspace configuration (for example,
ae-config.xml). - Place your recipe files in a location that can be discovered by the workspace.
- Run the CLI to execute the desired recipe(s) for your environment.
- Review the output/logs and adjust configuration or recipes as needed.
