manifest

package
v0.3.8 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 27, 2018 License: MIT Imports: 6 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func CheckManifestExists

func CheckManifestExists(objectStore core.ObjectStore) bool

func InitialiseNewManifest added in v0.3.5

func InitialiseNewManifest(objectStore core.ObjectStore) error

InitaliseNewManifest creates a new manifest with a survey

func WriteManifestObject added in v0.3.5

func WriteManifestObject(objectStore core.ObjectStore, manifest *Manifest) error

WriteManifestToDisk - Write the final manifest to disk

Types

type Environment

type Environment struct {
	// An allowlist of allowed accountID's for this enviroment.
	// This restricts where stacks in this project can be deployed to.
	// This is a harm minimisation feature, intended to limit damage from human error.
	AccountIDs []string `yaml:"AccountIDs,omitempty"`

	// A list of Parameters to substiture into the Parameters field of all stacks in this
	// project.
	Parameters map[string]string `yaml:"Parameters,omitempty"`

	// A set of default tags to apply to stacks created in an environment
	Tags map[string]string `yaml:"Tags,omitempty"`
}

Environment specific parameters

func (*Environment) IsAllowlistedAccount added in v0.3.6

func (env *Environment) IsAllowlistedAccount(acctID string) bool

type InitialisePrompter added in v0.3.5

type InitialisePrompter interface {
	// contains filtered or unexported methods
}

type Manifest

type Manifest struct {
	// Name of this Kombustion project, this can be used to prefix stack names
	Name string `yaml:"Name"`

	// Region is the default region stacks will be deployed to
	Region string `yaml:"Region"`

	// A list of plugins used in this project
	Plugins map[string]Plugin `yaml:"Plugins,omitempty"`

	// An array of architectures this project will be used in. This can be used to limit the number
	// of plugins downloaded.
	// If omitted a plugin will download for all achitectures.
	Architectures []string `yaml:"Architectures,omitempty"`

	// A map of enviroment specific configuration
	Environments map[string]Environment `yaml:"Environments,omitempty"`

	// A flag to indicate if default exports should be added to stacks in this project
	// this defaults to false
	GenerateDefaultOutputs bool `yaml:"GenerateDefaultOutputs"`

	// A set of default tags that will be applied to created stacks
	Tags map[string]string `yaml:"Tags"`
}

Manifest - kombustion.yaml manifest file

func GetManifestObject added in v0.3.5

func GetManifestObject(objectStore core.ObjectStore, path ...string) (*Manifest, error)

type Plugin

type Plugin struct {
	// The name of the plugin to include
	// In the initial version of plugin management, this must be a github url
	Name string `yaml:"Name"`

	// The version to download of the plugin
	// In the initial version this must be a tag on the github url, or
	// `latest` which will use the latest tag.
	Version string `yaml:"Version"`

	// TODO: implement Plugin Aliases
	// This will be useful if two plugins want to use the same namespace
	// Ideally, that wouldn't happen. Ideally.
	Alias string `yaml:"Alias"`
}

Plugin specification inside the manifest

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL