Bryan Boreham 1eeb4d0d80 Squashed 'tools/' changes from 0d6d4da..74dc626
74dc626 Merge pull request #108 from weaveworks/disable-apt-daily
b4f1d91 Merge pull request #107 from weaveworks/docker-17-update
7436aa1 Override apt daily job to not run immediately on boot
7980f15 Merge pull request #106 from weaveworks/document-docker-install-role
f741e53 Bump to Docker 17.06 from CE repo
61796a1 Update Docker CE Debian repo details
0d86f5e Allow for Docker package to be named docker-ce
065c68d Document selection of Docker installation role.
3809053 Just --porcelain; it defaults to v1
11400ea Merge pull request #105 from weaveworks/remove-weaveplugin-remnants
b8b4d64 remove weaveplugin remnants
35099c9 Merge pull request #104 from weaveworks/pull-docker-py
cdd48fc Pull docker-py to speed tests/builds up.
e1c6c24 Merge pull request #103 from weaveworks/test-build-tags
d5d71e0 Add -tags option so callers can pass in build tags
8949b2b Merge pull request #98 from weaveworks/git-status-tag
ac30687 Merge pull request #100 from weaveworks/python_linting
4b125b5 Pin yapf & flake8 versions
7efb485 Lint python linting function
444755b Swap diff direction to reflect changes required
c5b2434 Install flake8 & yapf
5600eac Lint python in build-tools repo
0b02ca9 Add python linting
c011c0d Merge pull request #79 from kinvolk/schu/python-shebang
6577d07 Merge pull request #99 from weaveworks/shfmt-version
00ce0dc Use git status instead of diff to add 'WIP' tag
411fd13 Use shfmt v1.3.0 instead of latest from master.
31d069d Change Python shebang to `#!/usr/bin/env python`

git-subtree-dir: tools
git-subtree-split: 74dc626b6de3ffb38591510f7cb7bc2db33743c4
2017-07-13 16:18:44 +00:00

Weaveworks Build Tools

Included in this repo are tools shared by weave.git and scope.git. They include

  • build: a set of docker base-images for building weave projects. These should be used instead of giving each project its own build image.
  • provisioning: a set of Terraform scripts to provision virtual machines in GCP, AWS or Digital Ocean.
  • config_management: a set of Ansible playbooks to configure virtual machines for development, testing, etc.
  • cover: a tool which merges overlapping coverage reports generated by go test
  • files-with-type: a tool to search directories for files of a given MIME type
  • lint: a script to lint go, sh and hcl files; runs various tools like golint, go vet, errcheck, shellcheck etc
  • rebuild-image: a script to rebuild docker images when their input files change; useful when you using docker images to build your software, but you don't want to build the image every time.
  • shell-lint: a script to lint multiple shell files with shellcheck
  • socks: a simple, dockerised SOCKS proxy for getting your laptop onto the Weave network
  • test: a script to run all go unit tests in subdirectories, gather the coverage results, and merge them into a single report.
  • runner: a tool for running tests in parallel; given each test is suffixed with the number of hosts it requires, and the hosts available are contained in the environment variable HOSTS, the tool will run tests in parallel, on different hosts.
  • scheduler: an appengine application that can be used to distribute tests across different shards in CircleCI.

Requirements

  • lint requires shfmt to lint sh files; get shfmt with go get -u gopkg.in/mvdan/sh.v1/cmd/shfmt

Using build-tools.git

To allow you to tie your code to a specific version of build-tools.git, such that future changes don't break you, we recommendation that you git subtree this repository into your own repository:

git subtree add --prefix tools https://github.com/weaveworks/build-tools.git master --squash

To update the code in build-tools.git, the process is therefore:

  • PR into build-tools.git, go through normal review process etc.
  • Do git subtree pull --prefix tools https://github.com/weaveworks/build-tools.git master --squash in your repo, and PR that.
Description
Monitoring, visualisation & management for Docker & Kubernetes
Readme Pixar 103 MiB
Languages
Go 60.9%
JavaScript 28.3%
Shell 6.7%
Python 1.6%
HCL 1%
Other 1.5%