Commit Graph

113 Commits (09b0258ab45cd5a505d4a5b6c575ad10e04e3194)

Author SHA1 Message Date
Mark Rushakoff 66b0ea1f14 ci: cache dep too
Running `dep ensure` via `make vendor`, with a clean dep cache, takes
around 30 seconds.

For run https://circleci.com/gh/influxdata/platform/1838, we can see
that `make vendor` took 33 seconds and saving the dep cache took 38
seconds. The 38 seconds to save the dep cache is paid the first time
that a particular version of Gopkg.lock is pushed. A subsequent run that
fully uses the dep cache costs 14 seconds to restore the dep cache and 5
seconds to run `make vendor`, so this saves about 10 seconds for any run
that doesn't change Gopkg.lock. See
https://circleci.com/gh/influxdata/platform/1840.
2018-08-28 13:59:25 -07:00
Mark Rushakoff d26233f47e ci: enable GOCACHE for Circle
With a clean GOCACHE, `make test-go` took about 30 seconds. It's hard to
tell the exact time since `make vendor` was implicitly executed in the
same block.

Now, `make test-go` uses GOCACHE and takes about 5 seconds to restore
the cache, then about 8 seconds to run through a fully cached set of
tests. If any test is actually broken or doesn't compile, this will give
us fast feedback.

But this change also runs `go test -race -count=1`, so that we fully
exercise any possible data races. That currently takes about 19 seconds.

Then finally we save GOCACHE, which has our `go test` results, and a
populated build cache for our test files, including built with the race
detector. Saving that takes about 14 seconds.

That means we took about 30 seconds originally to just run `go test
-count=1`, and now we take (5+8+19+14)=46 seconds to run plain go test
and go test with the race detector. There's probably an argument to be
made for just running with the race detector, but running both gives us
more coverage IMO, and it does allow us to run tests that aren't enabled
on race builds.

See https://circleci.com/gh/influxdata/platform/1840 for a run with full
caching.
2018-08-28 13:59:25 -07:00
Mark Rushakoff 548bf5d3da ci: use Go 1.11 in CircleCI 2018-08-28 13:59:25 -07:00
lukevmorris 7e9f90dbce
chore(ci): parallelize js and go tests (#670)
This PR teases apart the golang and js build steps so that they can be run in parallel in circleci, or locally with make test -j2.

Closes #599
2018-08-27 08:34:17 -07:00
Chris Goller 0ce8bb57ed ci(deploy): nightlies use circleci/golang:1.10.3-node-browsers 2018-07-25 17:27:33 -05:00
Michael Desa dc7418f7fe makefile: fix make file to run go generate 2018-07-23 17:42:03 -04:00
Jonathan A. Sternberg 54dde88da1 fix(circleci): setup remote docker so that the deploy works for nightlies 2018-07-17 17:32:34 -05:00
Jonathan A. Sternberg de61a79483 feat(docker): create a fluxd nightly docker image 2018-07-17 15:06:31 -05:00
Nathaniel Cook 08eb19805d chore(CI): Create nightly builds of ifqld
The builds are really anytime a commit is made to master not nightly.
Builds use goreleaser with the snapshot setting.
2018-05-23 09:13:46 -06:00
j. Emrys Landivar (docmerlin) 2f33928e1c add make vet 2018-05-23 00:21:26 -05:00
j. Emrys Landivar (docmerlin) 85c13d5f12 enable vet 2018-05-22 17:05:17 -05:00
Nathaniel Cook eb7210b107 fix(ci): fix circleci to use make file 2018-05-22 14:50:10 -06:00
docmerlin (j. Emrys Landivar) 6925c4b161 Circle ci 2018-05-16 10:43:33 -05:00