github.com/niedbalski/juju@v0.0.0-20190215020005-8ff100488e47/feature/flags.go (about) 1 // Copyright 2015 Canonical Ltd. 2 // Licensed under the AGPLv3, see LICENCE file for details. 3 4 // Package feature package defines the names of the current feature flags. 5 package feature 6 7 // TODO (anastasiamac 2015-03-02) 8 // Features that have commands that can be blocked, 9 // command list for "juju block" and "juju unblock" 10 // needs to be maintained until we can dynamically discover 11 // these commands. 12 13 // LogErrorStack is a developer feature flag to have the LoggedErrorStack 14 // function in the utils package write out the error stack as defined by the 15 // errors package to the logger. The ability to log the error stack is very 16 // useful in those error cases where you really don't expect there to be a 17 // failure. This means that the developers with this flag set will see the 18 // stack trace in the log output, but normal deployments never will. 19 const LogErrorStack = "log-error-stack" 20 21 // LegacyUpstart is used to indicate that the version-based init system 22 // discovery code (service.VersionInitSystem) should return upstart 23 // instead of systemd for vivid and newer. 24 const LegacyUpstart = "legacy-upstart" 25 26 // PostNetCLIMVP is used to indicate that additional networking 27 // commands will be available in addition to the networking MVP ones 28 // (space list|create, subnet list|add). 29 const PostNetCLIMVP = "post-net-cli-mvp" 30 31 // ImageMetadata allows custom image metadata to be recorded in state. 32 const ImageMetadata = "image-metadata" 33 34 // DeveloperMode allows access to developer specific commands and behaviour. 35 const DeveloperMode = "developer-mode" 36 37 // StrictMigration will cause migration to error if there are unexported 38 // values for annotations, status, status history, or settings. 39 const StrictMigration = "strict-migration" 40 41 // OldPresence indicates that the old database presence implementation 42 // should be used by the API server to determine agent presence. 43 // This value is only checked using the controller config "features" attrubite. 44 const OldPresence = "old-presence" 45 46 // LegacyLeases will switch all lease management to be handled by the 47 // Mongo-based lease store, rather than by the Raft FSM. 48 const LegacyLeases = "legacy-leases" 49 50 // Generations will allow for model generation functionality to be used. 51 const Generations = "generations" 52 53 // MongoDbSnap tells Juju to install MongoDB as a snap, rather than installing 54 // it from APT. 55 const MongoDbSnap = "mongodb-snap"