This commit includes updates that affects the build, testing, and
deployment of Tile38.
- The root level build.sh has been broken up into multiple scripts
and placed in the "scripts" directory.
- The vendor directory has been updated to follow the Go modules
rules, thus `make` should work on isolated environments. Also
some vendored packages may have been updated to a later
version, if needed.
- The Makefile has been updated to allow for making single
binaries such as `make tile38-server`. There is some scaffolding
during the build process, so from now on all binaries should be
made using make. For example, to run a development version of
the tile38-cli binary, do this:
make tile38-cli && ./tile38-cli
not this:
go run cmd/tile38-cli/main.go
- Travis.CI docker push script has been updated to address a
change to Docker's JSON repo meta output, which in turn fixes
a bug where new Tile38 versions were not being properly pushed
to Docker
JSET key id path value [RAW]
JGET key id path [RAW]
JDEL key id path
Allows for working with JSON strings, for example:
JSET user 901 name Tom
JGET user 901
> '{"name":"Tom"}'
JSET user 901 name.first Tom
JSET user 901 name.last Anderson
> '{"name":{"first":"Tom","last":"Anderson"}'
JDEL user 901 name.last
> '{"name":{"first":"Tom"}'
All commands use the GJSON path syntax, for more information:
Setting JSON: https://github.com/tidwall/sjson
Getting JSON: https://github.com/tidwall/gjson