This commit moves dependency management to use godep and the
new experimental vendoring support in Go 1.5.

NOTE: You must set `GO15VENDOREXPERIMENT` in your bash environment
for vendoring to work properly! See the updated `README` for details.
This commit is contained in:
Ben Johnson 2015-09-03 13:52:45 -06:00
parent 6b2b2672d7
commit f822215be9
7 changed files with 124 additions and 131 deletions

76
Godeps/Godeps.json generated Normal file
View file

@ -0,0 +1,76 @@
{
"ImportPath": "github.com/umbel/pilosa",
"GoVersion": "go1.5",
"Packages": [
"./..."
],
"Deps": [
{
"ImportPath": "github.com/BurntSushi/toml",
"Comment": "v0.1.0-21-g056c9bc",
"Rev": "056c9bc7be7190eaa7715723883caffa5f8fa3e4"
},
{
"ImportPath": "github.com/bitly/go-notify",
"Rev": "0a148b8111d688ba7550fc7119fe0d5d8e650838"
},
{
"ImportPath": "github.com/cactus/go-statsd-client/statsd",
"Rev": "3999011ef0451eb805b0fa31f98cfb9261bd71be"
},
{
"ImportPath": "github.com/cihub/seelog",
"Comment": "go1.1-81-gc510775",
"Rev": "c510775bb50d98213cfafca75a4bc5e3fddc8d8f"
},
{
"ImportPath": "github.com/coreos/go-etcd/etcd",
"Rev": "1e26d8ee84cf9b1000d2af8acfb45b2521f49be5"
},
{
"ImportPath": "github.com/davecgh/go-spew/spew",
"Rev": "e762b3d1320b76030bd7f6cc2bfc3d9acce874c0"
},
{
"ImportPath": "github.com/gocql/gocql",
"Comment": "1st_gen_framing-221-gf8fb76b",
"Rev": "f8fb76bb772442ea938e4be46ab1666e542411a5"
},
{
"ImportPath": "github.com/golang/groupcache/lru",
"Rev": "d781998583680cda80cf61e0b37dd0cd8da2eb52"
},
{
"ImportPath": "github.com/golang/snappy",
"Rev": "723cc1e459b8eea2dea4583200fd60757d40097a"
},
{
"ImportPath": "github.com/gorilla/websocket",
"Rev": "92334662baa9cbebc2e6e68b8d56bc1233f85a4c"
},
{
"ImportPath": "github.com/kr/s3",
"Rev": "c070c8f9a8f0032d48f0d2a77d4e382788bd8a1d"
},
{
"ImportPath": "github.com/robertkrimen/otto",
"Rev": "f9e07770bd9b5142de517b05a85ffbb42d1895da"
},
{
"ImportPath": "github.com/stathat/consistent",
"Rev": "0262985f12333852b6423025aa3ca315af473a4a"
},
{
"ImportPath": "github.com/syndtr/goleveldb/leveldb",
"Rev": "183614d6b32571e867df4cf086f5480ceefbdfac"
},
{
"ImportPath": "github.com/yasushi-saito/rbtree",
"Rev": "571e2538414bf914c7e2909b61217b4e3e5508f4"
},
{
"ImportPath": "gopkg.in/inf.v0",
"Rev": "c85f1217d51339c0fa3a498cc8b2075de695dae6"
}
]
}

5
Godeps/Readme generated Normal file
View file

@ -0,0 +1,5 @@
This directory tree is generated automatically by godep.
Please do not edit.
See https://github.com/tools/godep for more information.

5
Makefile Normal file
View file

@ -0,0 +1,5 @@
default:
# Temporary workaround to avoid testing vendor directory.
test:
go test $(go list ./... | grep -v /vendor/)

View file

@ -5,25 +5,19 @@ Pilosa is a bitmap index database.
## Getting Started
To download the source, run `go get`:
Pilosa uses the new Go 1.5 vendoring experiment. To enable this, you'll need
to export an environment variable in your `.profile`:
```sh
export GO15VENDOREXPERIMENT=1
```
Then you can download the source by running `go get`:
```sh
$ go get github.com/umbel/pilosa
```
You can update the dependencies to specific versions using [`depman`][depman]:
```sh
$ go get github.com/vube/depman
```
And then run `depman` from the project directory:
```sh
$ cd $GOPATH/src/github.com/umbel/pilosa
$ depman
```
Now you can install the `pilosa` binary:
```sh
@ -40,7 +34,7 @@ $ etcd
Now run `pilosa` with the default configuration:
```sh
PILOSA_CONFIG=default.yaml pilosa
pilosa
```
This setup assumes that cassandra and etcd are running locally and that
@ -48,8 +42,35 @@ cassandra keyspace pilosa has been setup as describe in the file
`index/storage_cass.go`.
If you don't want backend storage you can comment out storage_backend in the
yaml file and it will just operate out of memory.
config file and it will just operate out of memory.
[etcd]: https://github.com/coreos/etcd
[depman]: https://github.com/vube/depman
## Development
### Updating dependencies
To update dependencies, you'll need to install [godep][]:
```sh
$ go get -u github.com/tools/godep
```
Then save the dependencies in your project:
```sh
$ godep save ./...
```
*Make sure you have set the `GO15VENDOREXPERIMENT` environment variable!*
[godep]: https://github.com/tools/godep
### Running tests
Because of a bug in Go 1.5, you'll need to run `make test` to exclude tests
the the `vendor/` directory.

View file

@ -9,7 +9,6 @@ import (
"time"
log "github.com/cihub/seelog"
_ "github.com/go-sql-driver/mysql"
"github.com/umbel/pilosa/util"
)

View file

@ -12,7 +12,6 @@ import (
log "github.com/cihub/seelog"
"github.com/coreos/go-etcd/etcd"
"github.com/kr/s3/s3util"
"github.com/mitchellh/panicwrap"
"github.com/umbel/pilosa"
"github.com/umbel/pilosa/core"
"github.com/umbel/pilosa/db"
@ -52,16 +51,6 @@ func NewMain() *Main {
func (m *Main) Run(args ...string) error {
defer log.Flush()
// Handle panics with a log entry and process exit.
if code, err := panicwrap.BasicWrap(func(output string) {
log.Critical("The child panicked:\n\n", output)
os.Exit(1)
}); err != nil {
panic(err)
} else if code >= 0 {
os.Exit(code)
}
// Parse command line arguments.
opt, err := m.ParseFlags(args)
if err != nil {

102
deps.json
View file

@ -1,102 +0,0 @@
{
"consistent": {
"repo": "github.com/stathat/consistent",
"version": "0262985f12333852b6423025aa3ca315af473a4a",
"type": "git"
},
"etcd": {
"repo": "github.com/coreos/go-etcd/etcd",
"version": "9847b93751a5fbaf227b893d172cee0104ac6427",
"type": "git"
},
"gkvlite": {
"repo": "github.com/steveyen/gkvlite",
"version": "master",
"type": "git"
},
"gocql": {
"repo": "github.com/gocql/gocql",
"version": "f8fb76bb772442ea938e4be46ab1666e542411a5",
"type": "git"
},
"goleveldb": {
"repo": "github.com/syndtr/goleveldb/leveldb",
"version": "183614d6b32571e867df4cf086f5480ceefbdfac",
"type": "git"
},
"google-crypto": {
"repo": "code.google.com/p/go.crypto/ssh",
"version": "7aa593ce8cea",
"type": "hg"
},
"goyaml": {
"repo": "launchpad.net/goyaml",
"version": "50",
"type": "bzr"
},
"log": {
"repo": "github.com/coreos/go-log/log",
"version": "70d039bee4b0e389e5be560491d8291708506f59",
"type": "git"
},
"lru": {
"repo": "github.com/golang/groupcache/lru",
"version": "d781998583680cda80cf61e0b37dd0cd8da2eb52",
"type": "git"
},
"mysql": {
"repo": "github.com/go-sql-driver/mysql",
"version": "master",
"type": "git"
},
"notify": {
"repo": "github.com/bitly/go-notify",
"version": "0a148b8111d688ba7550fc7119fe0d5d8e650838",
"type": "git"
},
"otto": {
"repo": "github.com/robertkrimen/otto",
"version": "f9e07770bd9b5142de517b05a85ffbb42d1895da",
"type": "git"
},
"panicwrapper": {
"repo": "github.com/mitchellh/panicwrap",
"version": "master",
"type": "git"
},
"rbtree": {
"repo": "github.com/yasushi-saito/rbtree",
"version": "571e2538414bf914c7e2909b61217b4e3e5508f4",
"type": "git"
},
"s3": {
"repo": "github.com/kr/s3/s3util",
"version": "master",
"type": "git"
},
"seelog": {
"repo": "github.com/cihub/seelog",
"version": "master",
"type": "git"
},
"spew": {
"repo": "github.com/davecgh/go-spew/spew",
"version": "e762b3d1320b76030bd7f6cc2bfc3d9acce874c0",
"type": "git"
},
"statsd": {
"repo": "github.com/cactus/go-statsd-client/statsd",
"version": "3999011ef0451eb805b0fa31f98cfb9261bd71be",
"type": "git"
},
"toml": {
"repo": "github.com/BurntSushi/toml",
"version": "056c9bc7be7190eaa7715723883caffa5f8fa3e4",
"type": "git"
},
"websocket": {
"repo": "github.com/gorilla/websocket",
"version": "92334662baa9cbebc2e6e68b8d56bc1233f85a4c",
"type": "git"
}
}