manifest

package
v0.7.0 Latest Latest
Warning

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

Go to latest
Published: Apr 2, 2021 License: Apache-2.0 Imports: 8 Imported by: 0

Documentation

Index

Constants

View Source
const DefaultManifestPath = "reliably.yaml"

Variables

This section is empty.

Functions

This section is empty.

Types

type AppInfo

type AppInfo struct {
	Name       string `yaml:"name" json:"name"`
	Owner      string `yaml:"owner" json:"owner"`
	Repository string `yaml:"repo" json:"repo"`
}

type ContinuousIntegrationInfo

type ContinuousIntegrationInfo struct {
	Type string `yaml:"type" json:"type"`
}

type Hosting

type Hosting struct {
	Provider string `yaml:"provider" json:"provider"`
}

type IAC

type IAC struct {
	Type string `yame:"type" json:"type"`
	Root string `yaml:"root" json:"root"`
}

type Manifest

type Manifest struct {
	// App          *AppInfo          `yaml:"app" json:"app"`
	ServiceLevel *Service `yaml:"slo" json:"slo"`
	Dependencies []string `yaml:"dependencies" json:"dependencies"`
	// ServiceLevel *ServiceLevel     `yaml:"service_level,omitempty" json:"service_level,omitempty"`
	// CI           *ContinuousIntegrationInfo `yaml:"ci,omitempty" json:"ci,omitempty"`
	// Hosting      *Hosting          `yaml:"hosting,omitempty" json:"hosting,omitempty"`
	// IAC          *IAC              `yaml:"infrastructure_as_code,omitempty" json:"infrastructure_as_code,omitempty"`
	Tags map[string]string `yaml:"tags,omitempty" json:"tags,omitempty"`
}

func Load

func Load(path string) (*Manifest, error)

type Service

type Service struct {
	Objective ServiceLevelObjective `yaml:"objective" json:"objective"`
	Resources []ServiceResource     `yaml:"resources" json:"resources"`
}

type ServiceLevel

type ServiceLevel struct {
	Availability       float64       `yaml:"availability" json:"availability"`
	Latency            core.Duration `yaml:"latency" json:"latency"`
	ErrorBudgetPercent float64       `yaml:"error_budget_pc" json:"error_budget_pc"`
}

type ServiceLevelObjective

type ServiceLevelObjective struct {
	Latency            core.Duration `yaml:"latency" json:"latency"`
	ErrorBudgetPercent float64       `yaml:"error_budget_percent" json:"error_budget_percent"`
}

type ServiceResource

type ServiceResource struct {
	ID       string `yaml:"id" json:"id"`
	Provider string `yaml:"provider" json:"provider"`
}

Jump to

Keyboard shortcuts

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