Commit graph

1127 commits

Author SHA1 Message Date
Matt Jaffee
77c25eeb06 fix readme and config command for new config style
still need to update readme to include info about environment variables, but at
least it isn't wrong anymore.
2017-03-17 20:42:41 -05:00
Matthew Jaffee
3bf3bf0aa4 Merge pull request #394 from jaffee/365-remove-pilosa-bench
remove pilosa-bench
2017-03-17 17:03:32 -05:00
Matt Jaffee
4c693ba7e7 remove pilosa-bench 2017-03-17 16:59:08 -05:00
Matt Jaffee
60805d7f3e change port 15000 to 10101 everywhere 2017-03-17 16:43:04 -05:00
Matt Jaffee
176861d702 add embedded struct to contain io for commands
per @tgruben's suggestion
2017-03-17 16:43:04 -05:00
Matt Jaffee
5f267c0a3a support the various ways of specifying bind addr 2017-03-17 16:43:04 -05:00
Matt Jaffee
74b79dd928 add tests for subcommands 2017-03-17 16:43:04 -05:00
Matt Jaffee
9aac0d143f add tests for backup cmd 2017-03-17 16:43:04 -05:00
Matt Jaffee
a1d29537db small tweaks - make dry-run hidden 2017-03-17 16:43:04 -05:00
Matt Jaffee
06b90782af remove ConfigPath from server (no longer used) 2017-03-17 16:43:04 -05:00
Matt Jaffee
e144259a19 make config flag global, and add global dry run flag
config flag can be used by all subcommands. Dry run flag stops subcommand
execution after parsing of config - nice for testing.
2017-03-17 16:43:04 -05:00
Matt Jaffee
dcafca3141 bind to localhost:0 in tests to avoid binding to the same port 2017-03-17 16:43:04 -05:00
Matt Jaffee
2aef65989e convert all commands to use RunE and global Command var 2017-03-17 16:43:04 -05:00
Matt Jaffee
601e8478da put all cmd test helpers in root_test and return errors from them 2017-03-17 16:43:04 -05:00
Matt Jaffee
e92203a466 add basic inspect test 2017-03-17 16:43:04 -05:00
Matt Jaffee
241649fc22 rename cmd.Serve->cmd.Server (gorename) 2017-03-17 16:43:04 -05:00
Matt Jaffee
60c1828dc9 nest profiling options in config file and test 2017-03-17 16:43:04 -05:00
Matt Jaffee
442380f8ab add anti-entropy interval arg 2017-03-17 16:43:04 -05:00
Matt Jaffee
b291307dde add plugins path arg to server
also fix an issue where tests would hang if an invalid config file was given
2017-03-17 16:43:04 -05:00
Matt Jaffee
9a18fc11a6 support cluster poll interval arg 2017-03-17 16:43:04 -05:00
Matt Jaffee
03eae77604 add cluster.hosts flag
had to work around a bunch of viper nonsense with handling string slices

changed the validator.Check to use reflect.DeepEqual

fixed a bug where env vars need to be reset between tests

had to change the structure of pilosa.config to enable the passing of hosts as a
slice of strings (it was a slice of structs which each just contained the string
host.) so we lose some generality, but we weren't using it anyway.
2017-03-17 16:43:04 -05:00
Matt Jaffee
2af42eedb5 add replicaN to pilosa server and test 2017-03-17 16:43:04 -05:00
Matt Jaffee
372b7ca1c4 full testing support for pilosa server
1. fixed a couple bugs with config file reading.
2. made cmd.Serve a global variable so tests could inspect it.
3. added table style testing for pilosa server
4. added the ability to stop server programmatically which also causes the cobra
command running it to return.
2017-03-17 16:43:04 -05:00
Matt Jaffee
076cc0960a add some proof of concept command tests 2017-03-17 16:43:04 -05:00
Matt Jaffee
961d18a3bf convert all subcommands to nonglobal style 2017-03-17 16:43:04 -05:00
Matt Jaffee
c3b7710d67 WIP on converting commands to be non-global and testable 2017-03-17 16:43:04 -05:00
Matt Jaffee
943e8ece1e add data-dir flag and simplify server/server.go
Now that the default data dir is defined by the flag, we don't need to set it
explicitly if it isn't set. We also stop reading the config file explicitly in
server.go since viper will read it - we do need to define all the config options
though before the config file will work properly.
2017-03-17 16:43:04 -05:00
Matt Jaffee
26a900843a move setAllConfig and it's invocation to root cmd 2017-03-17 16:43:04 -05:00
Matt Jaffee
232cf53781 rename config function and have it return error 2017-03-17 16:43:04 -05:00
Matt Jaffee
e1a582ad2c experimenting with cascading config
2 changes unrelated to cascading config:

1. using cobra.Command.RunE instead of just Run - similar behavior to log + exit,
but simpler. Also prints error message, then usage, then error again which is
nice.

2. getting serveCmd.Flags() once, and re-using it. More readable methinks.

For cascading config, I'm trying to set things up so that we can define the
flags once, and have them work from a config file, environment variable, or
command line. I also don't want references to viper scattered throughout our
code, so I want to set the config at startup, and not touch it from then on.

The idea here is to iterate through the set up command line flags, and then set
their values from viper which knows about the commmand line, the environment,
and the config file, and will pick the right one. The command line flags were
set pointing to the correct config values in the pilosa object, so the right
values will be set automatically.
2017-03-17 16:43:04 -05:00
Travis Turner
371665f459 Merge pull request #376 from linhvo/pil357-frame-name
Pil357 frame name
2017-03-10 16:18:26 -06:00
Travis
3649a52c00 Change frame meta and data to .meta and .data to be consistent with the DB dot files. 2017-03-10 15:47:17 -06:00
Linh Vo
3ab1d34d9a change frame name to meta for testing 2017-03-10 15:21:55 -06:00
Linh Vo
34b8f30c0d invalid name start with dot 2017-03-10 15:21:55 -06:00
Linh Vo
920b9d01e2 add . before meta frame 2017-03-10 15:21:54 -06:00
Yuce Tekol
9908002863 Merge pull request #388 from yuce/makefile-unknown-version
if a version is not found, set it as unknown
2017-03-10 19:43:58 +02:00
Travis Turner
2046e3665c Merge pull request #390 from travisturner/fix-client-test
Fix client test
2017-03-10 11:18:50 -06:00
Travis
2b94be965e Make sure the TopN test is actually using a RankCache supported frame.
Implement cache.Recalculate to bypass the 10-second delay built into cache.Invalidate().
2017-03-10 11:07:18 -06:00
Travis
988e602033 adds validateCallArgs(c) to executor 2017-03-10 09:36:05 -06:00
Yuce Tekol
8e982d2479 if a version is not found, set it as unknown; do not display No names found error message 2017-03-09 21:28:50 +03:00
Matthew Jaffee
e8ab4cfc2d Merge pull request #387 from jaffee/384-time-version-bug
give appropriate path in ldflags for BuildTime and Version
2017-03-09 12:01:08 -06:00
Matt Jaffee
72de534c8c remove duplicate Version/BuildTime from pilosa/server
use only the pilosa/cmd Version and BuildTime which are populated by the ldflags
in the Makefile
2017-03-09 11:39:11 -06:00
Matt Jaffee
51390cdf47 Merge branch '372-invalid-name-bug' 2017-03-09 10:58:08 -06:00
Matt Jaffee
8e0d64fe06 give appropriate path in ldflags for BuildTime and Version 2017-03-09 10:55:53 -06:00
Yuce Tekol
d1bae69150 Merge pull request #383 from yuce/upgrade-docker-go_1.8
Updated Dockerfile to use go 1.8 and ldflags; removed pilosactl stuff…
2017-03-09 17:46:26 +02:00
Travis Turner
1fe4d4b1e6 Merge pull request #379 from travisturner/top-n-fix
If a top-n query contains BitmapIDs, then treat N as having value 0.
2017-03-09 09:34:20 -06:00
Michael Baird
d56a55a0d3 Merge pull request #360 from raskle/topn-multinode-tests
TopN tests across 3 nodes
2017-03-09 09:13:34 -06:00
Yuce Tekol
a446d7b9e6 Updated Dockerfile to use go 1.8 and ldflags; removed pilosactl stuff from Makefile, send ldflags to build container. 2017-03-09 11:14:01 +03:00
Linh Vo
756fc49be6 resolve conflict 2017-03-08 22:17:50 -06:00
Linh Vo
40b1192692 fix comment 2017-03-08 22:11:52 -06:00