func InitCommandLineFlags(config config.Config) { config.StringVar(¶ms.app, "app", "assets/dora", "filepath to app, defaults to provided dora in assets") config.StringVar(¶ms.manifest, "app:manifest", "", "filepath to cf manifest for the app") config.IntVar(¶ms.iterations, "iterations", 1, "number of pushes to attempt") config.StringVar(¶ms.concurrency, "concurrency", "1", "number of workers to execute the workload in parallel, can be static or ramping up, i.e. 1..3") config.IntVar(¶ms.concurrencyStepTime, "concurrency:timeBetweenSteps", 60, "seconds between adding additonal workers when ramping works up") config.BoolVar(¶ms.silent, "silent", false, "true to run silently and exit without interaction when finished") config.StringVar(¶ms.workload, "workload", "cf:push", "a comma-separated list of operations a user should issue (use -list-workloads to see available workload options)") config.IntVar(¶ms.interval, "interval", 0, "repeat a workload every n seconds, to be used with -stop") config.IntVar(¶ms.stop, "stop", 0, "repeat a repeating interval until n seconds, to be used with -interval") config.BoolVar(¶ms.listWorkloads, "list-workloads", false, "Lists the available workloads") config.StringVar(¶ms.restTarget, "rest:target", "", "the target for the REST api") config.StringVar(¶ms.restUser, "rest:username", "", "username for REST api") config.StringVar(¶ms.restPass, "rest:password", "", "password for REST api") config.StringVar(¶ms.restSpace, "rest:space", "dev", "space to target for REST api") benchmarker.DescribeParameters(config) store.DescribeParameters(config) }
func DescribeParameters(config config.Config) { config.StringVar(¶ms.csvDir, "csv-dir", "output/csvs", "Directory to Store CSVs") config.BoolVar(¶ms.useRedis, "use-redis-store", false, "True if redis should be used (requires the -redis-host, -redis-port and -redis-password arguments)") redis.DescribeParameters(config) }
func DescribeParameters(config config.Config) { config.BoolVar(¶ms.startMasterAndSlave, "use-redis-worker", false, "Runs in master mode, sending work to perform to a redis queue") }