Commit Graph

76 Commits

Author SHA1 Message Date
Mike Lang
2bc31e8728 Fix circle.yml to actually deploy external ui changes (#1910)
Conditional was the wrong way around.
2016-10-07 18:20:39 -07:00
Mike Lang
ec37214778 Add flag to allow using external ui, and ability to upload to bucket during CI 2016-10-05 17:27:18 -07:00
Mike Lang
2c9f6c197f Split prog/static.go into two versions, and have a shim choose between them
This allows us to have both normal and external resource versions of static content
in the same binary, and switch with a flag
2016-10-05 17:26:57 -07:00
Alessandro Puccetti
66390c8b0e circleci: push traffic control plugin image to docker hub
After this patch, circleci builds the traffic control plugin image and
pushes it on docker hub. Rename traffic control plugin docker image
to "weaveworks/scope-traffic-control-plugin".
2016-09-12 15:47:28 +02:00
Tom Wilkie
38cc5aa29e On circle, report username as circle to wcould (#1815) 2016-08-18 12:06:49 +01:00
Mike Lang
21cfc83a56 Use image-tag from build-tools (#1785)
* Squashed 'tools/' changes from e9e7e6b..db5efc0

db5efc0 Merge pull request #28 from weaveworks/mike/add-image-tag
5312c40 Import image-tag script into build tools so it can be shared
7e850f8 Fix logs path
dda9785 Update deploy api
f2f4e5b Fix the wcloud client
3925eb6 Merge pull request #27 from weaveworks/wcloud-events
77355b9 Lint
d9a1c6c Add wcloud events, update flags and error nicely when there is no config

git-subtree-dir: tools
git-subtree-split: db5efc0537

* Remove ./image-tag and use ./tools/image-tag instead

image-tag is now shared code from the build-tools repo
2016-08-16 15:52:12 +01:00
Alban Crequy
d761f18e5b circle.yml: another fix for deploy master with non-upstream hub accounts
After https://github.com/weaveworks/scope/commit/e2441623 "wcloud
deploy" is run in the main deploy unit guarded by the environment
variable. But the test makes it fail when it is not run under
"weaveworks".
2016-07-21 15:25:34 +02:00
Tom Wilkie
e24416236f Circle will only run a single deploy step it seems 2016-07-21 13:47:15 +01:00
Alban Crequy
652913084a circle.yml: deploy master with non-upstream hub accounts (#1655)
* circle.yml: deploy master with non-upstream hub accounts

Since b4abe582f4, images are tagged on
Docker Hub. But this was not working for non-upstream Docker Hub
accounts. This patch should fix that.

Symptoms: https://circleci.com/gh/kinvolk/scope/23

> The push refers to a repository [docker.io/kinvolk/scope] (len: 1)
> error getting tags for kinvolk/scope: Tag does not exist for
> master-b89e9ec

Also, ensure that the Docker tag name does not include any '/'.

Symptoms: https://circleci.com/gh/kinvolk/scope/24

> docker tag weaveworks/scope weaveworks/scope:alban/hub1-ef739d9
> repository name component must match "[a-z0-9]+(?:[._-][a-z0-9]+)*"

* extras/in_parallel.sh: ensure unique schedule name

Use CircleCI environment variables as documented on:
https://circleci.com/docs/environment-variables/

Symptoms:
> $ cd $SRCDIR/extras; ./build_on_circle.sh
> Doing graphviz/graphviz
> make: *** No rule to make target `graphviz/graphviz'.  Stop.

See: https://github.com/weaveworks/scope/pull/1655#issuecomment-232696357

* circle.yml: separate wcloud deployment

Do not run wcloud for non-weaveworks builds, as suggested by
https://github.com/weaveworks/scope/pull/1655#discussion_r71179373
2016-07-21 10:26:23 +01:00
Tom Wilkie
cafaff8960 Wire up continuous delivery (#1654) 2016-07-12 13:05:21 +01:00
Jonathan Lange
1c440486f0 Delete experimental, replace with 'extras'
extras contains fixprobe and example, and ought to build properly
2016-07-07 14:30:08 +01:00
Tom Wilkie
b4abe582f4 Tag scope images on docker hub as we do in service (#1572) 2016-06-14 10:10:51 +01:00
Alban Crequy
b20e292390 circle.yml: deploy non-master branches (#1535)
By default, non-master branches are not deployed on the Docker Hub. With
this patch, you can enable this feature by setting the environment
variable DEPLOY_BRANCH in the circle configuration.

It will not be tagged with the "latest" tag but instead derive the tag
from the branch name. Since "/" are not allowed in Docker tag names, all
"/" are replaced by "-".

When testing code in Scope, I use circle to build the Docker image but I
don't want to always use my "master" branch for development.
2016-05-28 12:02:42 +01:00
Tom Wilkie
c8828826ae Allow user to specify table name and queue prefix. (#1538)
* Allow user to specify table name and queue prefix.

* Trim leading slash, catch missed queue prefix

* Comment out publish step until devwww is fixed.
2016-05-25 10:09:32 +01:00
Tom Wilkie
afd3cdeb22 Review feedback 2016-05-18 14:55:47 +01:00
Tom Wilkie
607b7fd187 Circle integration for auto docs publishing. 2016-05-18 14:00:50 +01:00
Alban Crequy
726fbad69d circle.yml: add variable $DOCKER_ORGANIZATION
With this patch, CircleCI will push by default to the Docker repository
$DOCKER_ORGANIZATION/scope. If $DOCKER_ORGANIZATION is not defined, it
will use $DOCKER_USER/scope.
2016-03-01 14:30:40 +01:00
Alban Crequy
c99400e6c0 circle.yml: deploy on a personal hub account
I would to do some changes in Scope and test my changes in Kubernetes,
following the guide on:
https://github.com/weaveworks/scope#using-weave-scope-with-kubernetes

For that, I need a Docker image of Scope hosted on a Docker hub and
reference that Docker image in my Kubernetes resource yaml file. Instead
of building Scope on my laptop and pushing it manually on my Docker Hub
account, I am using my CircleCI account to do this automatically.

This patch fixes the deployment target in circle.yml. It uses the
environment variable $DOCKER_USER from the CircleCI settings to guard
against unintended deployment. As before, only the "master" branch will
trigger the deployment.

This change should not impact the build of the official Scope Docker
image.
2016-02-29 16:59:29 +01:00
Alban Crequy
3b0fce1da3 circle.yml: disable GCE builds when credentials are missing
Another call to gce.sh was added in commit abebb0f197 ("Build new test VM
(to pickup latest Docker version)") but without the guard on
$SECRET_PASSWORD. Add the guard to be able to test on CircleCI without
Weaveworks' credentials.
2016-02-27 22:06:50 +01:00
Tom Wilkie
98d7887ba0 Condense some more steps in circle, this seems to speed things up. 2016-01-16 12:23:45 -08:00
Tom Wilkie
baec4688cb Various improvements to build & tests
- Fix broken wait in tests.
- Run lint in the build container.
- Merge two quick steps in the circle plan.
- Increase number of test VMs to 3 (again).
2016-01-15 10:00:41 -08:00
Tom Wilkie
8e4d3a4e8b Enable sharding for integration tests. 2016-01-12 21:54:49 +00:00
Tom Wilkie
bf91d5b8ba Use gce.sh, config.sh etc from tools. 2016-01-12 21:54:42 +00:00
Tom Wilkie
696a50fd27 Don't -i for different architectures. 2016-01-04 16:48:41 +00:00
Tom Wilkie
abebb0f197 Build new test VM (to pickup latest Docker version). 2016-01-04 16:10:27 +00:00
Tom Wilkie
9d91a06a75 Don't go get weave, git clone it. 2015-12-10 12:10:29 +00:00
Tom Wilkie
c749f5aa33 Merge probe and app binaries, run with ./scope probe or ./scope app. 2015-12-09 11:00:42 +00:00
Tom Wilkie
b3cc020d79 Fix up circle.yml for binary move. 2015-12-07 14:53:28 +00:00
David Kaltschmidt
c723978ec5 Upgraded react to 0.14.3
also add production globals to webpack config to reduce bundle size
2015-11-19 18:19:39 +01:00
Tom Wilkie
abc93e2d59 Merge some steps in vain attemp to speed up runs. 2015-11-11 18:47:05 +00:00
Tom Wilkie
5c717978d9 Run coverage reporting in post test stage, as teardown is run after the other shard has gone away. 2015-11-10 12:06:57 +00:00
Paul Bellamy
92ec7d9397 Move probe main.go to prog/probe/, break out a probe struct with appropriate responsibilities.
Also adds test for probe 'engine'
2015-11-09 16:25:28 +00:00
Tom Wilkie
9a9ef72ad6 Don't run integration test in parallel for now 2015-11-05 15:44:55 +00:00
Tom Wilkie
1ad7b4fce5 Speed up tests on circle.
- Ensure we use up to date build container when running tests.
- Parallelise host setup for integration tests.
- Pass some more circle env vars through to ./tools/tests so the scheduler works.
- Gather coverage from multiple shards.
- Create files as the right owner inside the container.
- Parallelise the circle.yaml
- Parallelise the intergration tests using existing machinery
- Build experimental in parallel.
- Use custom scheduler prefix for integration tests, so schedules don't clash with weave.
2015-11-04 15:35:21 +00:00
Tom Wilkie
8f2dc64762 Last try, then I give up 2015-11-03 17:01:03 +00:00
Tom Wilkie
6164d7dc94 Try again 2015-11-03 16:25:49 +00:00
Tom Wilkie
261ad4c6f3 Build the runner in the gopath. 2015-11-03 15:14:51 +00:00
Tom Wilkie
73c8d3ba56 Hack to make this work whilst we move the test runner. 2015-11-03 15:09:57 +00:00
Tom Wilkie
a0e2919726 Deal with move of runner. 2015-11-03 14:55:20 +00:00
Tom Wilkie
fb49e146ad Build experimental stuff in a container too 2015-10-26 16:11:16 +00:00
Tom Wilkie
62aed75550 Fix couple of minor typos. 2015-10-26 15:42:06 +00:00
Tom Wilkie
00ac914be9 Don't need to clone a sepatate tools repo, or install a bunch of packages now. 2015-10-26 15:28:55 +00:00
Tom Wilkie
18a1354075 Add make tests target, which runs tests inside build container. 2015-10-26 15:23:00 +00:00
Tom Wilkie
7fd5a315e3 Build inside the build container, using go1.5, by default
Also build for GOOS=darwin and GOARCH=arm
2015-10-23 16:35:11 +00:00
Tom Wilkie
7e1a653349 Add status bar to setup.sh, compress the ssh tunnel to make it quicker. 2015-10-20 15:48:46 +00:00
Tom Wilkie
fdf89a7fc7 Don't --rm containers on circle. 2015-09-14 04:16:52 +00:00
David Kaltschmidt
392f8ce69b fix file list for circle deployment, add JS lint
* lint will be done in build step and fail with error
2015-08-24 12:41:17 +02:00
Tom Wilkie
efeba4a2ed Use rebuild-image script from tools.git
- Add some extra files to build image
- Add make to UI build container
2015-08-17 16:26:06 +00:00
Tom Wilkie
3a1f376c29 Use tools.git 2015-08-17 16:26:04 +00:00
Tom Wilkie
a2ec507a14 Add apt-get update to circle 2015-08-17 12:58:03 +00:00