Skip to main content

Stack Format

A stack follows specific format to interact with Heighliner platform. You can take a look at the gin-vue stack to see how it works. In the following we will explain the format in details.

metadata.yaml

This file defines the metadata of the stack. It contains the following information:

FieldDescription
nameThe name of the current stack
versionThe version of the current stack
owner.nameThe name of the owner of the current stack
owner.contactThe contact information of the owner of the current stack
descriptionA brief description of the current stack
tagsA list of tags to index and search the stack

schemas/

This directory contains the schemas exposed to users. It can be used to render input forms and validate user inputs.

plans/

This directory contains the execution plans to setup the development environment. We will run dagger on this folder.

test/

This directory contains the testing code to verify the current stack. You can take a look at gin-vue test to learn more details of how to test.

cue.mods

Each stack can be used as a CUE module for other stacks. You can compose stacks together to create a higher-level stack. So each stack can define the CUE modules it depends on. Some can be other stacks, and others can be pure CUE libraries. Heighliner will automatically fetch the CUE modules before executing the plans.