types

package
v0.2.1 Latest Latest
Warning

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

Go to latest
Published: Apr 11, 2019 License: MIT Imports: 6 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// DryRun is the string used to defined a dryrun plan
	DryRun = "dryrun"
	// Repairable will ensure that the act of running the orchestrator against the project can be recovered
	Repairable = "repairable"
	// Destruction implies that the state of the project is not important and makes no promises of bring things back
	Destruction = "destruction"
)

Variables

This section is empty.

Functions

This section is empty.

Types

type Deny added in v0.2.0

type Deny struct {
	Protocol string   `json:"protocol" yaml:"protocol"`
	Ports    []string `json:"ports" yaml:"ports"`
}

Deny is allow setting of network controls

type Exclude added in v0.2.0

type Exclude struct {
	Labels    map[string]string `json:"labels" yaml:"labels" description:"define the labels to ignore resource "`
	Zones     []string          `json:"zones" yaml:"zones" description:"define the zones to ignore"`
	Regions   []string          `json:"regions" yaml:"regions" description:"define the regions to ignore"`
	Wildcards []string          `` /* 126-byte string literal not displayed */
}

Exclude defines the values / properties to avoid when running this

type Firewall added in v0.2.0

type Firewall struct {
	Project   string
	Name      string
	Id        uint64
	Instances []Instance
	Labels    map[string]string
}

Firewall defines the internal structure of what the orchestrator needs to know to restore operations

type Instance

type Instance struct {
	Id      uint64
	Name    string
	Zone    string
	Region  string
	Project string
	Labels  map[string]string
}

Instance defines all the required values for the internal structure so that the orchestrator can restore it back the original state.

type Metadata

type Metadata struct {
	Once    sync.Once
	Regions []string
	Zones   []string
}

Metadata stores all the relevant cloud data that needs to be computed at runtime.

type Mode

type Mode string

type Plan

type Plan struct {
	Mode     string   `json:"mode" yaml:"mode" description:"defines how aggressive each step is preformed"`
	Projects []string `json:"projects" yaml:"projects" description:"define each Google Cloud Project to operate in"`
	Steps    []Step   `json:"steps" yaml:"steps"`
}

Plan defines the structure of the game day

func LoadPlan

func LoadPlan(filepath string) (*Plan, error)

LoadPlan will read the filepath and try load it into a valid plan

type Services

type Services struct {
	Compute *compute.Service
}

type Settings added in v0.2.0

type Settings struct {
	Network []struct {
		Project string `json:"project" yaml:"project"`
		Network string `json:"network" yaml:"network"`
		Deny    []Deny `json:"deny" yaml:"deny"`
	}
}

Settings defines all the required info to either give to the minions or ensure that the minions don't use that data

type Step

type Step struct {
	Name        string        `json:"name" yaml:"name"`
	Description string        `json:"description" yaml:"description"`
	Operations  []string      `json:"operations" yaml:"operations" description:"It is the name of the loaded minions in the orchestrator"`
	Projects    []string      `json:"projects" yaml:"projects"`
	Exclude     Exclude       `json:"exclude" yaml:"exclude" description:"define all the things to exclude on"`
	Settings    Settings      `json:"settings" yaml:"settings"`
	Wait        time.Duration `json:"wait" yaml:"wait"`
	Sample      float32       `` /* 134-byte string literal not displayed */
}

Step defines what operations to run during the war game

Jump to

Keyboard shortcuts

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