Documentation
¶
Index ¶
- func CreatePods(c kclientset.Interface, appName string, ns string, labels map[string]string, ...)
- func CreateTemplate(oc *exutil.CLI, baseName string, ns string, configPath string, numObjects int, ...)
- func InjectConfigMap(c kclientset.Interface, ns string, vars ParameterConfigType, config kapiv1.Pod) string
- func ParseConfig(config string, isFixture bool) error
- func ParsePods(jsonFile string) (configStruct kapiv1.Pod)
- func Server(c *PodCount) error
- type ClusterLoaderObjectType
- type ClusterLoaderType
- type ContextType
- type ParameterConfigType
- type PodCount
- type ServiceInfo
- type TestResult
- type TuningSetObjectType
- type TuningSetType
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func CreatePods ¶
func CreatePods(c kclientset.Interface, appName string, ns string, labels map[string]string, spec kapiv1.PodSpec, maxCount int, tuning *TuningSetType)
CreatePods creates pods in user defined namspaces with user configurable tuning sets
func CreateTemplate ¶
func CreateTemplate(oc *exutil.CLI, baseName string, ns string, configPath string, numObjects int, tuning *TuningSetType)
CreateTemplate does regex substitution against the template file, then creates the template
func InjectConfigMap ¶
func InjectConfigMap(c kclientset.Interface, ns string, vars ParameterConfigType, config kapiv1.Pod) string
InjectConfigMap modifies the pod struct and replaces the environment variables.
func ParseConfig ¶
ParseConfig will complete flag parsing as well as viper tasks
Types ¶
type ClusterLoaderObjectType ¶
type ClusterLoaderObjectType struct {
Total int
Number int `mapstructure:"num"`
Image string
Basename string
File string
Parameters ParameterConfigType
}
ClusterLoaderObjectType is nested object type for cluster loader struct
type ClusterLoaderType ¶
type ClusterLoaderType struct {
Number int `mapstructure:"num"`
Basename string
Tuning string
Pods []ClusterLoaderObjectType
Templates []ClusterLoaderObjectType
}
ClusterLoaderType struct only used for Cluster Loader test config
type ContextType ¶
type ContextType struct {
ClusterLoader struct {
Cleanup bool
Projects []ClusterLoaderType
TuningSets []TuningSetType
}
}
ContextType is the root config struct
var ConfigContext ContextType
ConfigContext variable of type ContextType
type ParameterConfigType ¶
type ParameterConfigType struct {
Run string `mapstructure:"run"`
RouterIP string `mapstructure:"router_ip"`
TargetHost string `mapstructure:"target_host"`
DurationSec int `mapstructure:"duration"`
Megabytes int
}
ParameterConfigType contains config parameters for each object
type ServiceInfo ¶
ServiceInfo struct to bundle env data
type TestResult ¶
TestResult struct contains result data to be saved at end of run
type TuningSetObjectType ¶
type TuningSetObjectType struct {
Stepping struct {
StepSize int
Pause time.Duration
Timeout time.Duration
}
RateLimit struct {
Delay time.Duration
}
}
TuningSetObjectType is shared struct for Pods & Templates
type TuningSetType ¶
type TuningSetType struct {
Name string
Pods TuningSetObjectType
Templates TuningSetObjectType
}
TuningSetType is nested type for controlling Cluster Loader deployment pattern
func GetTuningSet ¶
func GetTuningSet(tuningSets []TuningSetType, podTuning string) (tuning *TuningSetType)
GetTuningSet matches the name of the tuning set defined in the project and returns a pointer to the set