SYMBOL INDEX (539 symbols across 74 files) FILE: cal/cal.go function IsWorkday (line 23) | func IsWorkday(t time.Time) bool { function isWeekday (line 27) | func isWeekday(t time.Time) bool { FILE: cal/cal_test.go function TestIsWorkday (line 37) | func TestIsWorkday(t *testing.T) { function parse (line 47) | func parse(s string) time.Time { FILE: chaosmonkey.go constant App (line 25) | App Group = iota constant Stack (line 27) | Stack constant Cluster (line 29) | Cluster type AppConfig (line 35) | type AppConfig struct type Group (line 49) | type Group method String (line 167) | func (g Group) String() string { type Exception (line 56) | type Exception struct method Matches (line 195) | func (ex Exception) Matches(account, stack, detail, region string) bool { type Instance (line 64) | type Instance interface type Termination (line 91) | type Termination struct type Tracker (line 98) | type Tracker interface type ErrorCounter (line 104) | type ErrorCounter interface type Decryptor (line 110) | type Decryptor interface type Env (line 116) | type Env interface type AppConfigGetter (line 122) | type AppConfigGetter interface type Checker (line 135) | type Checker interface type Terminator (line 144) | type Terminator interface type Outage (line 152) | type Outage interface type ErrViolatesMinTime (line 159) | type ErrViolatesMinTime struct method Error (line 208) | func (e ErrViolatesMinTime) Error() string { function NewAppConfig (line 182) | func NewAppConfig(exceptions []Exception) AppConfig { function exFieldMatches (line 204) | func exFieldMatches(field, value string) bool { FILE: chaosmonkey_test.go function TestExceptionMatches (line 23) | func TestExceptionMatches(t *testing.T) { FILE: clock/clock.go type Clock (line 21) | type Clock interface function New (line 27) | func New() Clock { type SystemClock (line 32) | type SystemClock struct method Now (line 35) | func (cl SystemClock) Now() time.Time { FILE: cmd/chaosmonkey/main.go function main (line 34) | func main() { FILE: command/chaosmonkey.go constant Version (line 41) | Version = "2.0.2" function printVersion (line 43) | func printVersion() { function Usage (line 54) | func Usage() { function init (line 174) | func init() { function Execute (line 180) | func Execute() { function init (line 401) | func init() { function logOnPanic (line 407) | func logOnPanic(errCounter chaosmonkey.ErrorCounter) { function getConfig (line 418) | func getConfig() (*config.Monkey, error) { type nullSchedStore (line 428) | type nullSchedStore struct method Retrieve (line 431) | func (n nullSchedStore) Retrieve(date time.Time) (*schedule.Schedule, ... method Publish (line 436) | func (n nullSchedStore) Publish(date time.Time, sched *schedule.Schedu... FILE: command/dumpconfig.go function DumpConfig (line 26) | func DumpConfig(c chaosmonkey.AppConfigGetter, app string) { FILE: command/dumpmonkeyconfig.go function DumpMonkeyConfig (line 24) | func DumpMonkeyConfig(cfg *config.Monkey) { FILE: command/eligible.go function Eligible (line 29) | func Eligible(g chaosmonkey.AppConfigGetter, d deploy.Deployment, app, a... FILE: command/fetchschedule.go function FetchSchedule (line 29) | func FetchSchedule(s schedstore.SchedStore, cfg *config.Monkey) { function today (line 50) | func today(cfg *config.Monkey) time.Time { FILE: command/install.go constant scheduleCommand (line 27) | scheduleCommand = "schedule" constant terminateCommand (line 28) | terminateCommand = "terminate" constant scriptContent (line 29) | scriptContent = `#!/bin/bash type CurrentExecutable (line 35) | type CurrentExecutable interface function Install (line 41) | func Install(cfg *config.Monkey, exec CurrentExecutable, db mysql.MySQL) { function InstallCron (line 48) | func InstallCron(cfg *config.Monkey, exec CurrentExecutable) { function setupCron (line 66) | func setupCron(cfg *config.Monkey, executablePath string) error { function setupTerminationScript (line 102) | func setupTerminationScript(cfg *config.Monkey, executablePath string) e... function generateScriptContent (line 120) | func generateScriptContent(cmdName string, cfg *config.Monkey, executabl... FILE: command/install_test.go function assertHasSameContent (line 27) | func assertHasSameContent(fileName string, expectedContent string) error { function initInstallationConfig (line 41) | func initInstallationConfig(script string, cron string, log string, term... function TestInstallationWithDefaultCron (line 52) | func TestInstallationWithDefaultCron(t *testing.T) { function TestInstallationWithUserDefinedCron (line 85) | func TestInstallationWithUserDefinedCron(t *testing.T) { FILE: command/migrate.go function Migrate (line 23) | func Migrate(db mysql.MySQL) { FILE: command/osutil.go type ChaosmonkeyExecutable (line 23) | type ChaosmonkeyExecutable struct method ExecutablePath (line 27) | func (e ChaosmonkeyExecutable) ExecutablePath() (string, error) { function EnsureFileAbsent (line 32) | func EnsureFileAbsent(path string) error { FILE: command/outage.go function Outage (line 25) | func Outage(ou chaosmonkey.Outage) { FILE: command/regions.go function DumpRegions (line 26) | func DumpRegions(cluster, account string, spin spinnaker.Spinnaker) { FILE: command/schedule.go function Schedule (line 33) | func Schedule(g chaosmonkey.AppConfigGetter, ss schedstore.SchedStore, c... function do (line 59) | func do(d deploy.Deployment, g chaosmonkey.AppConfigGetter, ss schedstor... function deploySchedule (line 80) | func deploySchedule(s *schedule.Schedule, ss schedstore.SchedStore, cfg ... function registerWithCron (line 101) | func registerWithCron(s *schedule.Schedule, cfg *config.Monkey) error { FILE: command/schedule_int_test.go function TestScheduleCommand (line 33) | func TestScheduleCommand(t *testing.T) { function countEntries (line 78) | func countEntries(buf []byte) int { type mockAPI (line 83) | type mockAPI struct method Publish (line 87) | func (a mockAPI) Publish(date time.Time, sched *schedule.Schedule) err... method Retrieve (line 91) | func (a mockAPI) Retrieve(date time.Time) (*schedule.Schedule, error) { method Get (line 96) | func (a mockAPI) Get(name string) (*chaosmonkey.AppConfig, error) { method Check (line 103) | func (a mockAPI) Check(term chaosmonkey.Termination, appCfg *chaosmonk... FILE: command/schedule_test.go function addToSchedule (line 30) | func addToSchedule(t *testing.T, sched *schedule.Schedule, timeString st... function newClusterGroup (line 39) | func newClusterGroup(app, account, cluster, region string) grp.InstanceG... function TestRegisterWithCron (line 43) | func TestRegisterWithCron(t *testing.T) { function TestCronOutputInSortedOrder (line 94) | func TestCronOutputInSortedOrder(t *testing.T) { FILE: command/terminate.go function Terminate (line 28) | func Terminate(d deps.Deps, app string, account string, region string, s... FILE: config/config_test.go function TestGetStringSlice (line 19) | func TestGetStringSlice(t *testing.T) { FILE: config/monkey.go type Monkey (line 35) | type Monkey struct method setDefaults (line 47) | func (m *Monkey) setDefaults() { method setupEnvVarReader (line 81) | func (m *Monkey) setupEnvVarReader() { method configureRemote (line 153) | func (m *Monkey) configureRemote() error { method SetRemoteProvider (line 173) | func (m *Monkey) SetRemoteProvider(provider string, endpoint string, p... method Set (line 182) | func (m *Monkey) Set(key string, value interface{}) { method readRemoteConfig (line 188) | func (m *Monkey) readRemoteConfig() error { method Enabled (line 196) | func (m *Monkey) Enabled() (bool, error) { method Leashed (line 203) | func (m *Monkey) Leashed() (bool, error) { method ScheduleEnabled (line 209) | func (m *Monkey) ScheduleEnabled() (bool, error) { method getDynamicBool (line 213) | func (m *Monkey) getDynamicBool(param string) (bool, error) { method AccountEnabled (line 223) | func (m *Monkey) AccountEnabled(account string) (bool, error) { method Accounts (line 239) | func (m *Monkey) Accounts() ([]string, error) { method StartHour (line 264) | func (m *Monkey) StartHour() int { return m.v.GetInt(param.StartHour) } method EndHour (line 270) | func (m *Monkey) EndHour() int { method Location (line 276) | func (m *Monkey) Location() (*time.Location, error) { method CronPath (line 282) | func (m *Monkey) CronPath() string { method TermPath (line 288) | func (m *Monkey) TermPath() string { method TermAccount (line 294) | func (m *Monkey) TermAccount() string { method MaxApps (line 300) | func (m *Monkey) MaxApps() int { method Trackers (line 306) | func (m *Monkey) Trackers() ([]string, error) { method ErrorCounter (line 312) | func (m *Monkey) ErrorCounter() string { method getStringSlice (line 316) | func (m *Monkey) getStringSlice(key string) ([]string, error) { method SpinnakerEndpoint (line 340) | func (m *Monkey) SpinnakerEndpoint() string { method SpinnakerCertificate (line 346) | func (m *Monkey) SpinnakerCertificate() string { method SpinnakerEncryptedPassword (line 353) | func (m *Monkey) SpinnakerEncryptedPassword() string { method SpinnakerUser (line 359) | func (m *Monkey) SpinnakerUser() string { method SpinnakerX509Cert (line 364) | func (m *Monkey) SpinnakerX509Cert() string { method SpinnakerX509Key (line 369) | func (m *Monkey) SpinnakerX509Key() string { method Decryptor (line 374) | func (m *Monkey) Decryptor() string { method OutageChecker (line 380) | func (m *Monkey) OutageChecker() string { method DatabaseHost (line 385) | func (m *Monkey) DatabaseHost() string { method DatabasePort (line 390) | func (m *Monkey) DatabasePort() int { method DatabaseUser (line 395) | func (m *Monkey) DatabaseUser() string { method DatabaseName (line 401) | func (m *Monkey) DatabaseName() string { method DatabaseEncryptedPassword (line 407) | func (m *Monkey) DatabaseEncryptedPassword() string { method BindPFlag (line 412) | func (m *Monkey) BindPFlag(parameter string, flag *pflag.Flag) (err er... method CronExpression (line 452) | func (m *Monkey) CronExpression() (string, error) { method ScheduleCronPath (line 489) | func (m *Monkey) ScheduleCronPath() string { method SchedulePath (line 495) | func (m *Monkey) SchedulePath() string { method LogPath (line 501) | func (m *Monkey) LogPath() string { constant clockStartHour (line 41) | clockStartHour int = 0 constant clockEndHour (line 42) | clockEndHour int = 23 constant hoursInClock (line 43) | hoursInClock int = 24 constant cronBeforeStartHour (line 44) | cronBeforeStartHour int = 2 function Load (line 91) | func Load(configPaths []string) (*Monkey, error) { function Defaults (line 124) | func Defaults() *Monkey { function NewFromReader (line 133) | func NewFromReader(in io.Reader) (*Monkey, error) { function toStrings (line 249) | func toStrings(values []interface{}) ([]string, error) { type RemoteProvider (line 421) | type RemoteProvider type RemoteConfigFactory (line 426) | type RemoteConfigFactory interface type proxy (line 431) | type proxy struct method Get (line 435) | func (p proxy) Get(rp viper.RemoteProvider) (io.Reader, error) { method Watch (line 439) | func (p proxy) Watch(rp viper.RemoteProvider) (io.Reader, error) { function SetRemoteProvider (line 444) | func SetRemoteProvider(name string, factory RemoteConfigFactory) { function calculateDefaultCronRunHour (line 473) | func calculateDefaultCronRunHour(startHour int) (int, error) { FILE: config/monkey_test.go function TestDefaultCron (line 23) | func TestDefaultCron(t *testing.T) { function TestDefaultCronForStartHourMidnight (line 39) | func TestDefaultCronForStartHourMidnight(t *testing.T) { function TestDefaultCronForStartHourOneAM (line 55) | func TestDefaultCronForStartHourOneAM(t *testing.T) { function TestDefaultCronForStartHourBeforeClockStart (line 71) | func TestDefaultCronForStartHourBeforeClockStart(t *testing.T) { function TestDefaultCronForStartHourAfterClockEnd (line 82) | func TestDefaultCronForStartHourAfterClockEnd(t *testing.T) { FILE: config/param/param.go constant Enabled (line 19) | Enabled = "chaosmonkey.enabled" constant Leashed (line 20) | Leashed = "chaosmonkey.leashed" constant ScheduleEnabled (line 21) | ScheduleEnabled = "chaosmonkey.schedule_enabled" constant Accounts (line 22) | Accounts = "chaosmonkey.accounts" constant StartHour (line 23) | StartHour = "chaosmonkey.start_hour" constant EndHour (line 24) | EndHour = "chaosmonkey.end_hour" constant TimeZone (line 25) | TimeZone = "chaosmonkey.time_zone" constant CronPath (line 26) | CronPath = "chaosmonkey.cron_path" constant TermPath (line 27) | TermPath = "chaosmonkey.term_path" constant TermAccount (line 28) | TermAccount = "chaosmonkey.term_account" constant MaxApps (line 29) | MaxApps = "chaosmonkey.max_apps" constant Trackers (line 30) | Trackers = "chaosmonkey.trackers" constant ErrorCounter (line 31) | ErrorCounter = "chaosmonkey.error_counter" constant Decryptor (line 32) | Decryptor = "chaosmonkey.decryptor" constant OutageChecker (line 33) | OutageChecker = "chaosmonkey.outage_checker" constant CronExpression (line 34) | CronExpression = "chaosmonkey.cron_expression" constant ScheduleCronPath (line 35) | ScheduleCronPath = "chaosmonkey.schedule_cron_path" constant SchedulePath (line 36) | SchedulePath = "chaosmonkey.schedule_path" constant LogPath (line 37) | LogPath = "chaosmonkey.log_path" constant SpinnakerEndpoint (line 40) | SpinnakerEndpoint = "spinnaker.endpoint" constant SpinnakerCertificate (line 41) | SpinnakerCertificate = "spinnaker.certificate" constant SpinnakerEncryptedPassword (line 42) | SpinnakerEncryptedPassword = "spinnaker.encrypted_password" constant SpinnakerUser (line 43) | SpinnakerUser = "spinnaker.user" constant SpinnakerX509Cert (line 44) | SpinnakerX509Cert = "spinnaker.x509_cert" constant SpinnakerX509Key (line 45) | SpinnakerX509Key = "spinnaker.x509_key" constant DatabaseHost (line 47) | DatabaseHost = "database.host" constant DatabasePort (line 48) | DatabasePort = "database.port" constant DatabaseUser (line 49) | DatabaseUser = "database.user" constant DatabaseEncryptedPassword (line 50) | DatabaseEncryptedPassword = "database.encrypted_password" constant DatabaseName (line 51) | DatabaseName = "database.name" constant DynamicProvider (line 54) | DynamicProvider = "dynamic.provider" constant DynamicEndpoint (line 55) | DynamicEndpoint = "dynamic.endpoint" constant DynamicPath (line 56) | DynamicPath = "dynamic.path" FILE: constrainer/constrainer.go type NullConstrainer (line 24) | type NullConstrainer struct method Filter (line 32) | func (n NullConstrainer) Filter(s schedule.Schedule) schedule.Schedule { function init (line 26) | func init() { function getNullConstrainer (line 36) | func getNullConstrainer(cfg *config.Monkey) (schedule.Constrainer, error) { FILE: decryptor/decryptor.go type nullDecryptor (line 24) | type nullDecryptor struct method Decrypt (line 28) | func (n nullDecryptor) Decrypt(ciphertext string) (string, error) { function init (line 32) | func init() { function getNullDecryptor (line 36) | func getNullDecryptor(cfg *config.Monkey) (chaosmonkey.Decryptor, error) { FILE: deploy/app.go type App (line 18) | type App struct method Name (line 24) | func (a App) Name() string { method Accounts (line 29) | func (a App) Accounts() []*Account { type AppName (line 35) | type AppName type AccountName (line 38) | type AccountName type ClusterName (line 41) | type ClusterName type StackName (line 44) | type StackName type RegionName (line 47) | type RegionName type ASGName (line 50) | type ASGName type InstanceID (line 53) | type InstanceID type CloudProvider (line 56) | type CloudProvider type ClusterMap (line 60) | type ClusterMap type AccountInfo (line 63) | type AccountInfo struct type AppMap (line 69) | type AppMap function NewApp (line 73) | func NewApp(name string, data AppMap) *App { FILE: deploy/asg.go type ASG (line 20) | type ASG struct method Instances (line 44) | func (a *ASG) Instances() []*Instance { method Empty (line 49) | func (a *ASG) Empty() bool { method AppName (line 54) | func (a *ASG) AppName() string { method AccountName (line 59) | func (a *ASG) AccountName() string { method ClusterName (line 64) | func (a *ASG) ClusterName() string { method DetailName (line 69) | func (a *ASG) DetailName() string { method missingPushNumber (line 96) | func (a *ASG) missingPushNumber() bool { method RegionName (line 101) | func (a *ASG) RegionName() string { method Name (line 106) | func (a *ASG) Name() string { method StackName (line 111) | func (a *ASG) StackName() string { method CloudProvider (line 116) | func (a *ASG) CloudProvider() string { function NewASG (line 28) | func NewASG(name, region string, instanceIDs []string, cluster *Cluster)... FILE: deploy/deploy_test.go function TestASGAndClusters (line 23) | func TestASGAndClusters(t *testing.T) { FILE: deploy/deployment.go type Deployment (line 27) | type Deployment interface type Account (line 52) | type Account struct method Name (line 60) | func (a *Account) Name() string { method Clusters (line 65) | func (a *Account) Clusters() []*Cluster { method AppName (line 70) | func (a *Account) AppName() string { method RegionNames (line 76) | func (a *Account) RegionNames() []string { method CloudProvider (line 95) | func (a *Account) CloudProvider() string { method StackNames (line 115) | func (a *Account) StackNames() []string { type stringSet (line 99) | type stringSet method add (line 101) | func (s *stringSet) add(val string) { method slice (line 106) | func (s stringSet) slice() []string { type Cluster (line 129) | type Cluster struct method Name (line 136) | func (c *Cluster) Name() string { method AppName (line 141) | func (c *Cluster) AppName() string { method StackName (line 146) | func (c *Cluster) StackName() string { method AccountName (line 155) | func (c *Cluster) AccountName() string { method ASGs (line 160) | func (c *Cluster) ASGs() []*ASG { method RegionNames (line 165) | func (c *Cluster) RegionNames() []string { method CloudProvider (line 180) | func (c *Cluster) CloudProvider() string { type Instance (line 185) | type Instance struct method String (line 193) | func (i *Instance) String() string { method AppName (line 199) | func (i *Instance) AppName() string { method AccountName (line 204) | func (i *Instance) AccountName() string { method ClusterName (line 209) | func (i *Instance) ClusterName() string { method RegionName (line 214) | func (i *Instance) RegionName() string { method ASGName (line 219) | func (i *Instance) ASGName() string { method StackName (line 224) | func (i *Instance) StackName() string { method CloudProvider (line 229) | func (i *Instance) CloudProvider() string { method ID (line 234) | func (i *Instance) ID() string { FILE: deploy/eligible_instance_groups.go method EligibleInstanceGroups (line 41) | func (app *App) EligibleInstanceGroups(cfg chaosmonkey.AppConfig) []grp.... function appIndep (line 68) | func appIndep(app *App) []grp.InstanceGroup { function appDep (line 79) | func appDep(app *App) []grp.InstanceGroup { function stackIndep (line 88) | func stackIndep(app *App) []grp.InstanceGroup { function stackDep (line 116) | func stackDep(app *App) []grp.InstanceGroup { function clusterIndep (line 128) | func clusterIndep(app *App) []grp.InstanceGroup { function clusterDep (line 142) | func clusterDep(app *App) []grp.InstanceGroup { FILE: deploy/eligible_instance_groups_test.go type groupList (line 25) | type groupList method toSet (line 122) | func (gl groupList) toSet() groupSet { function TestEligibleInstanceGroups (line 87) | func TestEligibleInstanceGroups(t *testing.T) { function conf (line 106) | func conf(grouping chaosmonkey.Group, regionsAreIndependent bool) chaosm... type groupSet (line 116) | type groupSet method add (line 118) | func (gs *groupSet) add(group grp.InstanceGroup) { function same (line 132) | func same(x, y groupList) bool { FILE: deps/deps.go type Deps (line 49) | type Deps struct FILE: eligible/eligible.go type cluster (line 31) | type cluster struct type instance (line 39) | type instance struct method AppName (line 51) | func (i instance) AppName() string { method AccountName (line 55) | func (i instance) AccountName() string { method RegionName (line 59) | func (i instance) RegionName() string { method StackName (line 63) | func (i instance) StackName() string { method ClusterName (line 67) | func (i instance) ClusterName() string { method ASGName (line 71) | func (i instance) ASGName() string { method Name (line 75) | func (i instance) Name() string { method ID (line 79) | func (i instance) ID() string { method CloudProvider (line 83) | func (i instance) CloudProvider() string { function isException (line 87) | func isException(exs []chaosmonkey.Exception, account deploy.AccountName... function isNeverEligible (line 97) | func isNeverEligible(cluster deploy.ClusterName) bool { function clusters (line 106) | func clusters(group grp.InstanceGroup, cloudProvider deploy.CloudProvide... function regions (line 151) | func regions(group grp.InstanceGroup, deployedRegions []deploy.RegionNam... function regionsWhenTermScopedtoSingleRegion (line 161) | func regionsWhenTermScopedtoSingleRegion(region string, deployedRegions ... function contains (line 169) | func contains(region string, regions []deploy.RegionName) bool { constant whiteListErrorMessage (line 178) | whiteListErrorMessage = "whitelist is not supported" function isWhitelist (line 181) | func isWhitelist(err error) bool { function Instances (line 186) | func Instances(group grp.InstanceGroup, exs []chaosmonkey.Exception, dep... function getInstances (line 211) | func getInstances(cl cluster, dep deploy.Deployment) ([]chaosmonkey.Inst... FILE: eligible/eligible_test.go function mockDeployment (line 12) | func mockDeployment() D.Deployment { function ids (line 35) | func ids(instances []chaosmonkey.Instance) []string { function TestGroupings (line 46) | func TestGroupings(t *testing.T) { function TestAppLevelGroupingWhereClustersAreRegionSpecific (line 86) | func TestAppLevelGroupingWhereClustersAreRegionSpecific(t *testing.T) { function TestAppLevelGroupingWhereClusterIsInTwoRegions (line 110) | func TestAppLevelGroupingWhereClusterIsInTwoRegions(t *testing.T) { function TestExceptions (line 131) | func TestExceptions(t *testing.T) { FILE: eligible/instances_canary_test.go function TestNoKillCanaries (line 26) | func TestNoKillCanaries(t *testing.T) { FILE: eligible/instances_test.go function mockDep (line 27) | func mockDep() D.Deployment { function TestInstances (line 110) | func TestInstances(t *testing.T) { function TestSimpleException (line 128) | func TestSimpleException(t *testing.T) { function TestMultipleExceptions (line 142) | func TestMultipleExceptions(t *testing.T) { function abcloudMockDep (line 170) | func abcloudMockDep() D.Deployment { FILE: env/env.go type notTestEnv (line 26) | type notTestEnv struct method InTest (line 29) | func (n notTestEnv) InTest() bool { function init (line 33) | func init() { function getNotTestEnv (line 37) | func getNotTestEnv(cfg *config.Monkey) (chaosmonkey.Env, error) { FILE: errorcounter/errorcounter.go type nullErrorCounter (line 28) | type nullErrorCounter struct method Increment (line 30) | func (n nullErrorCounter) Increment() error { function init (line 34) | func init() { function getNullErrorCounter (line 38) | func getNullErrorCounter(cfg *config.Monkey) (chaosmonkey.ErrorCounter, ... FILE: grp/grp.go function New (line 31) | func New(app, account, region, stack, cluster string) InstanceGroup { type InstanceGroup (line 42) | type InstanceGroup interface function Equal (line 66) | func Equal(g1, g2 InstanceGroup) bool { function String (line 115) | func String(group InstanceGroup) string { type group (line 143) | type group struct method String (line 147) | func (g group) String() string { method MarshalJSON (line 151) | func (g group) MarshalJSON() ([]byte, error) { method App (line 170) | func (g group) App() string { method Account (line 175) | func (g group) Account() string { method Region (line 180) | func (g group) Region() (string, bool) { method Stack (line 188) | func (g group) Stack() (string, bool) { method Cluster (line 196) | func (g group) Cluster() (string, bool) { function AnyRegion (line 204) | func AnyRegion(g InstanceGroup) bool { function AnyStack (line 210) | func AnyStack(g InstanceGroup) bool { function AnyCluster (line 216) | func AnyCluster(g InstanceGroup) bool { function Contains (line 222) | func Contains(g InstanceGroup, account, region, cluster string) bool { function must (line 238) | func must(val string, specific bool) string { FILE: grp/grp_test.go function TestNewAppWithRegion (line 23) | func TestNewAppWithRegion(t *testing.T) { function TestNewAppCrossRegion (line 48) | func TestNewAppCrossRegion(t *testing.T) { function TestNewStackWithRegion (line 72) | func TestNewStackWithRegion(t *testing.T) { function TestNewStackCrossRegion (line 98) | func TestNewStackCrossRegion(t *testing.T) { function TestNewClusterWithRegion (line 123) | func TestNewClusterWithRegion(t *testing.T) { function TestNewClusterCrossRegion (line 149) | func TestNewClusterCrossRegion(t *testing.T) { function TestContains (line 174) | func TestContains(t *testing.T) { function TestEqual (line 197) | func TestEqual(t *testing.T) { FILE: migration/migrations.go function bindataRead (line 20) | func bindataRead(data []byte, name string) ([]byte, error) { type asset (line 40) | type asset struct type bindataFileInfo (line 45) | type bindataFileInfo struct method Name (line 52) | func (fi bindataFileInfo) Name() string { method Size (line 55) | func (fi bindataFileInfo) Size() int64 { method Mode (line 58) | func (fi bindataFileInfo) Mode() os.FileMode { method ModTime (line 61) | func (fi bindataFileInfo) ModTime() time.Time { method IsDir (line 64) | func (fi bindataFileInfo) IsDir() bool { method Sys (line 67) | func (fi bindataFileInfo) Sys() interface{} { function migrationMysql100_initial_schemaSqlBytes (line 73) | func migrationMysql100_initial_schemaSqlBytes() ([]byte, error) { function migrationMysql100_initial_schemaSql (line 80) | func migrationMysql100_initial_schemaSql() (*asset, error) { function Asset (line 94) | func Asset(name string) ([]byte, error) { function MustAsset (line 108) | func MustAsset(name string) []byte { function AssetInfo (line 120) | func AssetInfo(name string) (os.FileInfo, error) { function AssetNames (line 133) | func AssetNames() []string { function AssetDir (line 159) | func AssetDir(name string) ([]string, error) { type bintree (line 181) | type bintree struct function RestoreAsset (line 195) | func RestoreAsset(dir, name string) error { function RestoreAssets (line 220) | func RestoreAssets(dir, name string) error { function _filePath (line 236) | func _filePath(dir, name string) string { FILE: migration/mysql/1.0.0_initial_schema.sql type schedules (line 3) | CREATE TABLE IF NOT EXISTS schedules ( type terminations (line 16) | CREATE TABLE IF NOT EXISTS terminations ( FILE: mock/configgetter.go type ConfigGetter (line 20) | type ConfigGetter struct method Get (line 44) | func (c ConfigGetter) Get(app string) (*chaosmonkey.AppConfig, error) { function NewConfigGetter (line 25) | func NewConfigGetter(config chaosmonkey.AppConfig) ConfigGetter { function DefaultConfigGetter (line 30) | func DefaultConfigGetter() ConfigGetter { FILE: mock/deployment.go constant cloudProvider (line 23) | cloudProvider = "aws" function Dep (line 35) | func Dep() D.Deployment { function NewDeployment (line 57) | func NewDeployment(apps map[string]D.AppMap) D.Deployment { type Deployment (line 62) | type Deployment struct method Apps (line 67) | func (d Deployment) Apps(c chan<- *D.App, apps []string) { method GetClusterNames (line 76) | func (d Deployment) GetClusterNames(app string, account D.AccountName)... method GetRegionNames (line 86) | func (d Deployment) GetRegionNames(app string, account D.AccountName, ... method AppNames (line 96) | func (d Deployment) AppNames() ([]string, error) { method GetApp (line 108) | func (d Deployment) GetApp(name string) (*D.App, error) { method CloudProvider (line 113) | func (d Deployment) CloudProvider(account string) (string, error) { method GetInstanceIDs (line 118) | func (d Deployment) GetInstanceIDs(app string, account D.AccountName, ... FILE: mock/deps.go type Checker (line 30) | type Checker struct method Check (line 54) | func (c Checker) Check(term chaosmonkey.Termination, appCfg chaosmonke... type Tracker (line 35) | type Tracker struct method Track (line 60) | func (t Tracker) Track(trm chaosmonkey.Termination) error { type ErrorCounter (line 40) | type ErrorCounter struct method Increment (line 65) | func (e ErrorCounter) Increment() error { type Clock (line 43) | type Clock struct method Now (line 70) | func (c Clock) Now() time.Time { type Env (line 48) | type Env struct method InTest (line 75) | func (e Env) InTest() bool { function Deps (line 81) | func Deps() deps.Deps { FILE: mock/install.go type Executable (line 18) | type Executable struct method ExecutablePath (line 24) | func (m Executable) ExecutablePath() (string, error) { FILE: mock/instance.go type Instance (line 18) | type Instance struct method AppName (line 23) | func (i Instance) AppName() string { method AccountName (line 28) | func (i Instance) AccountName() string { method RegionName (line 33) | func (i Instance) RegionName() string { method StackName (line 38) | func (i Instance) StackName() string { method ClusterName (line 43) | func (i Instance) ClusterName() string { method ASGName (line 48) | func (i Instance) ASGName() string { method ID (line 53) | func (i Instance) ID() string { method CloudProvider (line 58) | func (i Instance) CloudProvider() string { FILE: mock/mock.go type AppFactory (line 22) | type AppFactory struct method App (line 26) | func (factory AppFactory) App() *D.App { FILE: mock/outage.go type Outage (line 18) | type Outage struct method Outage (line 21) | func (o Outage) Outage() (bool, error) { FILE: mock/terminator.go type Terminator (line 20) | type Terminator struct method Execute (line 27) | func (t *Terminator) Execute(trm chaosmonkey.Termination) error { FILE: mysql/checker_test.go function testSetup (line 36) | func testSetup(t *testing.T) (ins c.Instance, loc *time.Location, appCfg... function TestCheckPermitted (line 67) | func TestCheckPermitted(t *testing.T) { function TestCheckForbidden (line 90) | func TestCheckForbidden(t *testing.T) { function TestCheckLeashed (line 125) | func TestCheckLeashed(t *testing.T) { function TestConcurrentChecks (line 158) | func TestConcurrentChecks(t *testing.T) { function TestCombinations (line 209) | func TestCombinations(t *testing.T) { function TestCheckMinTimeEnforced (line 288) | func TestCheckMinTimeEnforced(t *testing.T) { FILE: mysql/mysql.go type MySQL (line 40) | type MySQL struct method Close (line 96) | func (m MySQL) Close() error { method Retrieve (line 110) | func (m MySQL) Retrieve(date time.Time) (sched *schedule.Schedule, err... method Publish (line 146) | func (m MySQL) Publish(date time.Time, sched *schedule.Schedule) error { method PublishWithDelay (line 152) | func (m MySQL) PublishWithDelay(date time.Time, sched *schedule.Schedu... method Check (line 264) | func (m MySQL) Check(term chaosmonkey.Termination, appCfg chaosmonkey.... method CheckWithDelay (line 270) | func (m MySQL) CheckWithDelay(term chaosmonkey.Termination, appCfg cha... function TxDeadlock (line 45) | func TxDeadlock(err error) bool { function ViolatesMinTime (line 58) | func ViolatesMinTime(err error) bool { function NewFromConfig (line 64) | func NewFromConfig(cfg *config.Monkey) (MySQL, error) { function New (line 86) | func New(host string, port int, user string, password string, dbname str... function utcDate (line 104) | func utcDate(date time.Time) time.Time { function schedExists (line 216) | func schedExists(tx *sql.Tx, date time.Time) (result bool, err error) { function dsn (line 243) | func dsn(host string, port int, user string, password string, dbname str... function respectsMinTimeBetweenKills (line 303) | func respectsMinTimeBetweenKills(tx *sql.Tx, now time.Time, term chaosmo... function noKillsSince (line 402) | func noKillsSince(days int, now time.Time, endHour int, loc *time.Locati... function recordTermination (line 430) | func recordTermination(tx *sql.Tx, term chaosmonkey.Termination, loc *ti... function Migrate (line 449) | func Migrate(mysqlDb MySQL) error { FILE: mysql/mysql_test.go function inUse (line 52) | func inUse(port int) bool { function TestMain (line 62) | func TestMain(m *testing.M) { function startMySQLContainer (line 109) | func startMySQLContainer() (*exec.Cmd, error) { function initDB (line 159) | func initDB() error { function stopMySQLContainer (line 193) | func stopMySQLContainer(name string, t *testing.T) { FILE: mysql/no_kills_since_test.go function TestZeroDaysBetweenKills (line 39) | func TestZeroDaysBetweenKills(t *testing.T) { function parse (line 155) | func parse(s string) time.Time { function format (line 164) | func format(tm time.Time) string { FILE: mysql/schedstore_test.go function TestPublishRetrieve (line 37) | func TestPublishRetrieve(t *testing.T) { function NewMySQL (line 82) | func NewMySQL() (mysql.MySQL, error) { function TestPublishRetrieveMultipleEntries (line 86) | func TestPublishRetrieveMultipleEntries(t *testing.T) { function TestScheduleAlreadyExists (line 138) | func TestScheduleAlreadyExists(t *testing.T) { function TestScheduleAlreadyExistsConcurrency (line 186) | func TestScheduleAlreadyExistsConcurrency(t *testing.T) { function TestOnlyReturnsFromDayRequested (line 256) | func TestOnlyReturnsFromDayRequested(t *testing.T) { function TestNoScheduleRetrievedOnWrongDay (line 320) | func TestNoScheduleRetrievedOnWrongDay(t *testing.T) { function TestPublishDateDifferentTimes (line 364) | func TestPublishDateDifferentTimes(t *testing.T) { FILE: outage/outage.go type NullOutage (line 26) | type NullOutage struct method Outage (line 29) | func (n NullOutage) Outage() (bool, error) { function init (line 33) | func init() { function GetOutage (line 38) | func GetOutage(cfg *config.Monkey) (chaosmonkey.Outage, error) { FILE: schedstore/schedstore.go type SchedStore (line 29) | type SchedStore interface FILE: schedule/constrainer.go type Constrainer (line 18) | type Constrainer interface FILE: schedule/schedule.go function doScheduleApp (line 81) | func doScheduleApp(schedule *Schedule, app *deploy.App, cfg chaosmonkey.... function chooseTerminationTime (line 122) | func chooseTerminationTime(now time.Time, startHour int, endHour int, lo... type float64Rand (line 144) | type float64Rand interface function shouldKillInstance (line 155) | func shouldKillInstance(meanTimeBetweenKillsInWorkDays int, r float64Ran... type Entry (line 173) | type Entry struct method UnmarshalJSON (line 184) | func (e *Entry) UnmarshalJSON(b []byte) (err error) { method Equal (line 204) | func (e *Entry) Equal(o *Entry) bool { method Crontab (line 214) | func (e *Entry) Crontab(termPath, account string) string { type apiGroup (line 179) | type apiGroup struct function terminateCommand (line 230) | func terminateCommand(termPath string, group grp.InstanceGroup) string { function logRedirect (line 250) | func logRedirect(logPath string) string { type Schedule (line 255) | type Schedule struct method Populate (line 36) | func (s *Schedule) Populate(d deploy.Deployment, getter chaosmonkey.Ap... method Add (line 71) | func (s *Schedule) Add(tm time.Time, group grp.InstanceGroup) { method Entries (line 76) | func (s *Schedule) Entries() []Entry { method Crontab (line 279) | func (s Schedule) Crontab(exPath string, account string) []byte { method MarshalJSON (line 300) | func (s Schedule) MarshalJSON() ([]byte, error) { method UnmarshalJSON (line 305) | func (s *Schedule) UnmarshalJSON(b []byte) (err error) { function New (line 260) | func New() *Schedule { type ByTime (line 269) | type ByTime method Len (line 271) | func (t ByTime) Len() int { return len(t) } method Swap (line 272) | func (t ByTime) Swap(i, j int) { t[i], t[j] = t[j], t[i] } method Less (line 273) | func (t ByTime) Less(i, j int) bool { return t[i].Time.Before(t[j].Tim... FILE: schedule/schedule_test.go function TestPopulate (line 28) | func TestPopulate(t *testing.T) { type mockConfigGetter (line 61) | type mockConfigGetter struct method Get (line 68) | func (g mockConfigGetter) Get(app string) (*chaosmonkey.AppConfig, err... function countEntries (line 76) | func countEntries(buf []byte) int { FILE: spinnaker/config.go method Get (line 27) | func (s Spinnaker) Get(app string) (c *chaosmonkey.AppConfig, err error) { FILE: spinnaker/fromjson.go function fromJSON (line 93) | func fromJSON(js []byte) (*chaosmonkey.AppConfig, error) { type parsedJSON (line 182) | type parsedJSON struct type parsedAttr (line 187) | type parsedAttr struct type parsedChaosMonkey (line 191) | type parsedChaosMonkey struct FILE: spinnaker/fromjson_test.go function TestFromJSON (line 23) | func TestFromJSON(t *testing.T) { function TestFromJSONDisabled (line 115) | func TestFromJSONDisabled(t *testing.T) { function TestBadJSON (line 136) | func TestBadJSON(t *testing.T) { function TestFromJSONEmptyWhitelist (line 177) | func TestFromJSONEmptyWhitelist(t *testing.T) { function TestFromJSONPopulatedWhitelist (line 222) | func TestFromJSONPopulatedWhitelist(t *testing.T) { FILE: spinnaker/spinnaker.go type Spinnaker (line 41) | type Spinnaker struct method AccountID (line 171) | func (s Spinnaker) AccountID(name string) (id string, err error) { method alternateAccountID (line 219) | func (s Spinnaker) alternateAccountID(name string) (string, error) { method Apps (line 237) | func (s Spinnaker) Apps(c chan<- *D.App, appNames []string) { method GetInstanceIDs (line 254) | func (s Spinnaker) GetInstanceIDs(app string, account D.AccountName, c... method GetApp (line 298) | func (s Spinnaker) GetApp(appName string) (*D.App, error) { method AppNames (line 346) | func (s Spinnaker) AppNames() (appnames []string, err error) { method clusters (line 384) | func (s Spinnaker) clusters(appName string) spinnakerClusters { method asgs (line 432) | func (s Spinnaker) asgs(appName, account, clusterName string) (result ... method CloudProvider (line 483) | func (s Spinnaker) CloudProvider(name string) (provider string, err er... method account (line 504) | func (s Spinnaker) account(name string) (account, error) { method GetClusterNames (line 552) | func (s Spinnaker) GetClusterNames(app string, account D.AccountName) ... method GetRegionNames (line 596) | func (s Spinnaker) GetRegionNames(app string, account D.AccountName, c... type spinnakerClusters (line 49) | type spinnakerClusters type spinnakerServerGroup (line 53) | type spinnakerServerGroup struct type spinnakerInstance (line 61) | type spinnakerInstance struct function getClient (line 67) | func getClient(pfxData []byte, password string) (*http.Client, error) { function getClientX509 (line 91) | func getClientX509(x509Cert, x509Key string) (*http.Client, error) { function NewFromConfig (line 105) | func NewFromConfig(cfg *config.Monkey) (Spinnaker, error) { function New (line 140) | func New(endpoint string, certPath string, password string, x509Cert str... type spinnakerApp (line 379) | type spinnakerApp struct type account (line 497) | type account struct FILE: spinnaker/terminator.go constant terminateType (line 30) | terminateType string = "terminateInstances" type killPayload (line 34) | type killPayload struct type kpJob (line 41) | type kpJob struct type fakeTerminator (line 53) | type fakeTerminator struct method Execute (line 67) | func (t fakeTerminator) Execute(trm chaosmonkey.Termination) error { function NewFakeTerm (line 57) | func NewFakeTerm() chaosmonkey.Terminator { method tasksURL (line 62) | func (s Spinnaker) tasksURL(appName string) string { method Execute (line 72) | func (s Spinnaker) Execute(trm chaosmonkey.Termination) (err error) { function killJSONPayload (line 108) | func killJSONPayload(ins chaosmonkey.Instance, otherID string, spinnaker... method OtherID (line 143) | func (s Spinnaker) OtherID(ins chaosmonkey.Instance) (otherID string, er... FILE: spinnaker/terminator_test.go function TestKillJSONPayload (line 24) | func TestKillJSONPayload(t *testing.T) { function TestKillJSONPayloadWithOtherID (line 139) | func TestKillJSONPayloadWithOtherID(t *testing.T) { FILE: spinnaker/urls.go method appsURL (line 20) | func (s Spinnaker) appsURL() string { method appURL (line 25) | func (s Spinnaker) appURL(appName string) string { method clustersURL (line 30) | func (s Spinnaker) clustersURL(appName string) string { method clusterURL (line 35) | func (s Spinnaker) clusterURL(appName string, account string, clusterNam... method serverGroupsURL (line 40) | func (s Spinnaker) serverGroupsURL(appName, account, clusterName string)... method accountURL (line 45) | func (s Spinnaker) accountURL(account string) string { method accountsURL (line 50) | func (s Spinnaker) accountsURL(expanded bool) string { method instanceURL (line 59) | func (s Spinnaker) instanceURL(account string, region string, id string)... method activeASGURL (line 64) | func (s Spinnaker) activeASGURL(appName, account, clusterName, cloudProv... FILE: term/term.go type leashedKiller (line 32) | type leashedKiller struct method Execute (line 35) | func (l leashedKiller) Execute(trm chaosmonkey.Termination) error { type UnleashedInTestEnv (line 42) | type UnleashedInTestEnv struct method Error (line 44) | func (err UnleashedInTestEnv) Error() string { function Terminate (line 52) | func Terminate(d deps.Deps, app string, account string, region string, s... function doTerminate (line 95) | func doTerminate(d deps.Deps, group grp.InstanceGroup) error { function PickRandomInstance (line 184) | func PickRandomInstance(group grp.InstanceGroup, cfg chaosmonkey.AppConf... FILE: term/term_ext_test.go function TestEnabledAccounts (line 27) | func TestEnabledAccounts(t *testing.T) { FILE: term/terminate_test.go function mockDeps (line 30) | func mockDeps() deps.Deps { function TestTerminateKills (line 46) | func TestTerminateKills(t *testing.T) { function TestTerminateOnlyKillsInProd (line 81) | func TestTerminateOnlyKillsInProd(t *testing.T) { function TestTerminateDoesntKillIfRecorderFails (line 97) | func TestTerminateDoesntKillIfRecorderFails(t *testing.T) { function TestTerminateDoesntKillInLeashedMode (line 114) | func TestTerminateDoesntKillInLeashedMode(t *testing.T) { function TestNeverTerminateUnleashedInTestEnv (line 139) | func TestNeverTerminateUnleashedInTestEnv(t *testing.T) { function TestDoesNotTerminateIfTrackerFails (line 157) | func TestDoesNotTerminateIfTrackerFails(t *testing.T) { function TestDoesNotTerminateIfAppIsDisabled (line 177) | func TestDoesNotTerminateIfAppIsDisabled(t *testing.T) { FILE: term/terminator.go type fake (line 24) | type fake struct method Execute (line 32) | func (t fake) Execute(trm chaosmonkey.Termination) error { function Fake (line 27) | func Fake() chaosmonkey.Terminator { FILE: tracker/tracker.go function init (line 25) | func init() { function getTrackers (line 30) | func getTrackers(cfg *config.Monkey) ([]chaosmonkey.Tracker, error) { function getTracker (line 50) | func getTracker(kind string, cfg *config.Monkey) (chaosmonkey.Tracker, e...