Stack Format
A stack follows specific format to interact with Heighliner platform. You can take a look at the stacks repo 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:
Field | Description |
---|---|
name | The name of the current stack |
version | The version of the current stack |
owner.name | The name of the owner of the current stack |
owner.contact | The contact information of the owner of the current stack |
description | A brief description of the current stack |
tags | A 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.
Here is an example:
parameters:
- title: kubeconfig
description: Path to your kubeconfig file
key: KUBECONFIG
type: "path"
default: ~/.kube/config
required: true
- title: github personal access token
description: Your github access token
key: GITHUB_TOKEN
type: "secret"
required: true
plans/β
This directory contains the execution plans.
hln will run the up
action against this folder.
test/β
This directory contains the testing code to verify the current stack. See this guide for more details.
cue.modsβ
This file defines the cue modules that it depends on. Heighliner will automatically fetch the CUE modules before executing the plans.