Skip to main content

Glossary

This is a reference for foundational concepts in smelt, that are used throughout the codebase and documentation

Command

A command is the lowest level unit of work.

Each command describes:

  • A bash script that describes all the work this command contains
  • A RuntimeRequirements object to describe the CPU, memory, and timeout requirements of this command
  • A list of dependencies of other commands, that this command depends on

Target

A target is Python interface used to generate Commands. Each target can generate up to three commands:

  • the default command
  • the re-run command -- is executed if the default command fails
  • the rebuild command -- is executed prior to the re-run command if a dependent target's re-run command fails

Test lists in smelt are composed of Targets, either yaml or Python.

Project root (i.e. $GIT_ROOT)

An alias for git root -- the path that is returned by git rev-parse --show-toplevel. Often in documentation and code, this will be referred to as $GIT_ROOT

Artifact

An artifact is a file that is generated from a command executing.

Events

Events are protobuf messages that are sent by the smelt runtime when tests are executed. Events inform clients about the state of execution for each command.

Executors

Executors are ...