Skip to main content

Glossary

This glossary is intended to be a comprehensive, standardized list of Expeditor terminology. It includes technical terms that are specific to Expeditor, as well as more general terms that provide useful context.

Action

A reference to a discrete unit of logic that contains the pattern for how to accomplish a specific task.

Click here for more information.

Action Filter

A configuration element that can be applied to an action to indicate whether or not the action should be executed given the context of the workload to which it is responding.

Click here for more information.

Action Set

A collection of one or more actions that are executed against a workload as part of a subscription.

Click here for more information.

Agent (Expeditor)

The process inside Expeditor responsible for handling the runtime concerns of an Expeditor project.

Click here for more information.

Agent (Buildkite)

The buildkite agent is a small, reliable and cross-platform build runner that makes it easy to run automated builds on your own infrastructure. Its main responsibilities are polling buildkite.com for work, running build jobs, reporting back the status code and output log of the job, and uploading the job’s artifacts.

Click here for more information.

Agent ID

The globally unique identifier of an Expeditor agent. For GitHub repositories, they take the form <GITHUB_ORG>/<GITHUB_REPO>:<GITHUB_BRANCH> (e.g. chef/example:main).

Click here for more information.

Build (Buildkite)

An execution instance of a Buildkite Pipeline made up of one or more jobs (i.e. when you run a pipeline, a build is created).

Click here for more information.

Built-in (Action)

A built-in is a class of action that codifies a common, repeatable patterns that require minimal configuration and are is leveraged across a wide variety of projects.

Configuration (Expeditor Agent)

Project-specific configuration that is used to drive the behavior of the Expeditor agent. It is commonly kept in the .expeditor/config.yml file.

Click here for more information.

Executor

An Expeditor-provided DSL in your Buildkite pipeline definition that encapsulates a variety of Buildkite configurations to ensure that your Buildkite job is executed in a consistent manner.

Click here for more information.

Job (Buildkite)

The execution instance of a step in a pipeline (i.e. each of the steps in the pipeline end up as jobs in the build).

Click here for more information.

Keyspace

A specific key-value pair in a large hash of key-value pairs in a YAML or other dictionary object.

---
expeditor:      # the expeditor keyspace
  defaults:     # the expeditor.defaults keyspace
    buildkite:  # the expeditor.defaults.buildkite keyspace

Named Pipeline

A Buildkite pipeline whose name indicates a convention surrounding how it should be created, managed, and used.

Click here for more information.

Organization (GitHub)

A logical entity that contains a collection of related GitHub repositories.

Click here for more information.

Organization (Buildkite)

A collection of Buildkite pipelines. At Chef, we have multiple organizations to segment public vs private pipelines.

Phase (Action Set)

Action sets are broken up into three phases: pre-commit, commit, and post-commit. An action can occur either in the pre-commit or post-commit phase.

Click here for more information.

Pipeline (Buildkite)

A template of the steps you want to run. When you run a pipeline, a build is created. Each of the steps in the pipeline end up as jobs in the build.

Click here for more information.

Pipeline Definition (Buildkite)

A YAML file that contains a list of steps that should be executed as part of a Buildkite build.

Click here for more information.

Project (Expeditor)

The conceptual representation of a GitHub software project.

Click here for more information.

Release Branch

The GitHub branch from which release artifacts are being produced.

Click here for more information.

Shim Pipeline Definition

A configuration file (usually YAML), unique to a specific use case, that is processed by Expeditor into a complete Buildkite pipeline. These pipeline definition files are not supported by the native Buildkite DSL.

You can identify shim pipeline definitions by the identifying marker in the file name. General purpose pipeline definition files have a .pipeline.yml suffix while shim pipeline definition files will have a .<SHIM_TYPE>.yml suffix (e.g. release.omnibus.yml).

Step (Buildkite)

An individual unit of work defined in a Buildkite pipeline, which when executed as part of a Buildkite build is transformed into a job

Click here for more information.

Subscription

An expression that defines what actions should be executed when an agent receives a workload.

Click here for more information.

Workload

A collection of metadata representing the details of a event that occurred on an external system.

Click here for more information.