actions

package
v0.0.0-...-614ca16 Latest Latest
Warning

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

Go to latest
Published: Apr 5, 2023 License: MIT Imports: 28 Imported by: 0

Documentation

Index

Constants

View Source
const (
	ActionBeforeDeploy = "BeforeDeploy"
	ActionAfterDeploy  = "AfterDeploy"
	ActionManual       = "Manual"
)

Variables

This section is empty.

Functions

This section is empty.

Types

type Action

type Action interface {
	Execute(ctx ActionContext) error
}

type ActionConditions

type ActionConditions struct {
	When             ActionSchedule         `yaml:"when"`
	EnvironmentRoles []core.EnvironmentRole `yaml:"environmentRoles,omitempty"`
}

type ActionSchedule

type ActionSchedule string

type ActionSchedules

type ActionSchedules []ActionSchedule

func (ActionSchedules) Contains

func (f ActionSchedules) Contains(schedule ActionSchedule) bool

func (ActionSchedules) MarshalYAML

func (f ActionSchedules) MarshalYAML() (interface{}, error)

func (*ActionSchedules) UnmarshalYAML

func (f *ActionSchedules) UnmarshalYAML(unmarshal func(interface{}) error) error

type AppAction

type AppAction struct {
	core.ConfigShared `yaml:",inline"`

	When               ActionSchedules       `yaml:"when,flow,omitempty" json:"when,omitempty"`
	Where              core.EnvironmentRoles `yaml:"where,omitempty"`
	WhereFilter        filter.MatchMapConfig `yaml:"whereFilter,omitempty" json:"where,omitempty"`
	MaxAttempts        int                   `yaml:"maxAttempts,omitempty" json:"maxAttempts,omitempty"`
	Timeout            time.Duration         `yaml:"timeout,omitempty" json:"timeout,omitempty"`
	Interval           time.Duration         `yaml:"interval,omitempty" json:"interval,omitempty"`
	Vault              *VaultAction          `yaml:"vault,omitempty" json:"vault,omitempty"`
	Script             *ScriptAction         `yaml:"script,omitempty" json:"script,omitempty"`
	Bosun              *BosunAction          `yaml:"bosun,omitempty" json:"bosun,omitempty"`
	Test               *TestAction           `yaml:"test,omitempty" json:"test,omitempty"`
	DNSTest            *DNSTestAction        `yaml:"dnsTest,omitempty"`
	Mongo              *MongoAction          `yaml:"mongo,omitempty" json:"mongo,omitempty"`
	MongoAssert        *MongoAssertAction    `yaml:"mongoAssert,omitempty" json:"mongoAssert,omitempty"`
	HTTP               *HTTPAction           `yaml:"http,omitempty" json:"http,omitempty"`
	ExcludeFromRelease bool                  `yaml:"excludeFromRelease,omitempty" json:"excludeFromRelease,omitempty"`
}

func (*AppAction) Execute

func (a *AppAction) Execute(ctx ActionContext) error

func (*AppAction) GetActions

func (a *AppAction) GetActions() []Action

func (*AppAction) GetEnvironmentName

func (a *AppAction) GetEnvironmentName() (string, bool)

func (*AppAction) MakeSelfContained

func (a *AppAction) MakeSelfContained(ctx ActionContext) error

MakeSelfContained removes imports all file dependencies into literals, then deletes those dependencies.

type BosunAction

type BosunAction []string

func (BosunAction) Execute

func (a BosunAction) Execute(ctx ActionContext) error

type DNSTestAction

type DNSTestAction struct {
	Namespace   string `yaml:"namespace"`
	ServiceName string `yaml:"serviceName"`
	DomainName  string `yaml:"domainName"`
}

func (*DNSTestAction) Execute

func (a *DNSTestAction) Execute(ctx ActionContext) error

type HTTPAction

type HTTPAction struct {
	URL     string                 `yaml:"url" json:"url"`
	Method  string                 `yaml:"method" json:"method"`
	Headers map[string]string      `yaml:"headers" json:"headers"`
	Body    map[string]interface{} `yaml:"body,omitempty" json:"body"`
	Raw     string                 `yaml:"raw,omitempty" json:"raw,omitempty"`
	OKCodes []int                  `yaml:"okCodes,omitempty,flow" json:"okCodes,omitempty"` // codes which should be treated as OK (passing). Defaults to [200, 201, 202, 204].
}

func (*HTTPAction) Execute

func (a *HTTPAction) Execute(ctx ActionContext) error

type MongoAction

type MongoAction struct {
	ConnectionName string           `yaml:"connectionName,omitempty"`
	Connection     mongo.Connection `yaml:"connection" json:"connection"`
	DatabaseFile   string           `yaml:"databaseFile" json:"databaseFile"`
	RebuildDB      bool             `yaml:"rebuildDb"`
	Script         string           `yaml:"script,omitempty"`
}

func (*MongoAction) Execute

func (a *MongoAction) Execute(ctx ActionContext) error

type MongoAssertAction

type MongoAssertAction struct {
	ConnectionName      string                 `yaml:"connectionName,omitempty"`
	Connection          mongo.Connection       `yaml:"connection" json:"connection"`
	Database            string                 `yaml:"database,omitempty" json:"database,omitempty"`
	Collection          string                 `yaml:"collection" json:"collection"`
	Query               map[string]interface{} `yaml:"query" json:"query"`
	ExpectedResultCount int64                  `yaml:"expectedResultCount" json:"expectedResultCount"`
}

func (*MongoAssertAction) Execute

func (a *MongoAssertAction) Execute(ctx ActionContext) error

type ScriptAction

type ScriptAction string

func (*ScriptAction) Execute

func (a *ScriptAction) Execute(ctx ActionContext) error

type SelfContainer

type SelfContainer interface {
	MakeSelfContained(ctx ActionContext) error
}

type TestAction

type TestAction struct {
	Exec *command.Command `yaml:"exec,omitempty" json:"exec,omitempty"`
	HTTP string           `yaml:"http,omitempty" json:"http,omitempty"`
	TCP  string           `yaml:"tcp,omitempty" json:"tcp,omitempty"`
}

func (*TestAction) Execute

func (t *TestAction) Execute(ctx ActionContext) error

type VaultAction

type VaultAction struct {
	CacheKey string             `yaml:"cacheKey,omitempty" json:"cacheKey"`
	File     string             `yaml:"file,omitempty" json:"file,omitempty"`
	Layout   *vault.VaultLayout `yaml:"layout,omitempty" json:"layout,omitempty"`
	Literal  string             `yaml:"literal,omitempty" json:"literal,omitempty"`
}

func (*VaultAction) Execute

func (a *VaultAction) Execute(ctx ActionContext) error

func (*VaultAction) MakeSelfContained

func (a *VaultAction) MakeSelfContained(ctx ActionContext) error

Jump to

Keyboard shortcuts

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