Autopilot SDK Structure

The source code for the Autopilot SDK is composed of 3 core directories:

CLI Design

The ap CLI is designed to manage the full lifecycle of the Operator, from code generation, build, and deployment.

Autopilot Operators can be built and deployed via standard means (e.g. go build, docker, kubectl apply). The ap CLI is designed to simplify this process, without being a required component.

Codegen Design

The codegen package contains the root Run, Load and Generate functions which are used to generate code and other project files from the autopilot.yaml file.

It contains subpackages model, templates, and util.

For the full list of files generated by Autopilot, see generate.go#projectFiles and generate.go#phaseFiles.

Pkg Design

pkg contains the core libraries for running Autopilot Operators. It is broken up into the following subpackages: