Command-Line Interface

Maven Central

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:

Download Jar

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:

  1. Obtain the application JAR (build it with Maven or download the distribution).
  2. Create or update your workspace configuration (for example, ae-config.xml).
  3. Place your recipe files in a location that can be discovered by the workspace.
  4. Run the CLI to execute the desired recipe(s) for your environment.
  5. Review the output/logs and adjust configuration or recipes as needed.