Commit Graph
93 Commits
Author SHA1 Message Date
Bryan Boreham 6ed2ab10a1 Only push two tags - latest and git-commit - to DockerHub 2014-09-22 17:44:13 +01:00
Matthias Radestock 331c8553db cosmetic 2014-09-18 12:30:43 +01:00
Bryan Boreham 0ed57bad67 rm tempfile before we use it, to avoid attack via symlink 2014-09-18 11:56:15 +01:00
Bryan Boreham 86644f7615 cosmetic 2014-09-18 11:55:47 +01:00
Bryan Boreham c48ae19c55 Tidy up messages; ensure errors to to stderr 2014-09-18 11:47:47 +01:00
Bryan Boreham a75a0d8709 If and only if network setup because the container died, say so.
This involves capturing stderr output from all the 'ip' commands so we
can hide that output if we see the process died, or show it to the user
if the process didn't die, in which case we don't know why we failed.
2014-09-18 11:24:08 +01:00
Bryan Boreham bfd5007339 Don't test if symlink exists before 'rm -f'
When the symlink's target doesn't exist, '[ -f' is false, so the symlink doesn't get removed.
Since we do always want it to be removed, just call 'rm -f' anyway, which won't complain
if the file doesn't exist.
2014-09-18 11:03:06 +01:00
Bryan Boreham 2f5a9733b8 Take out debugging -x mode 2014-09-17 16:32:21 +01:00
Bryan Boreham 0a403dd081 untabify 2014-09-17 16:31:52 +01:00
Bryan Boreham 09aed84638 return not exit from function 2014-09-17 16:30:50 +01:00
Bryan Boreham eabcc55f73 fix subshell syntax and make del/delete consistent 2014-09-17 16:25:46 +01:00
Bryan Boreham fd7b034713 untabify 2014-09-17 16:11:30 +01:00
Bryan Boreham 7c979d6725 Remove veth and/or netns symlink if interface configuration fails part-way through 2014-09-17 15:44:34 +01:00
Matthias Radestock e287110099 improve error messages and make sure they all go to stderr
...since otherwise they get hidden when the output is redirected,
e.g. in the typical

    # C=$(weave run ...)

invocation.
2014-09-17 06:46:02 +01:00
rade af94153d96 Merge pull request #44 from bboreham/23_retry_peers
Rewrite of ConnectionMaker

Fixes #23. Fixes #26.
2014-09-15 17:42:32 +01:00
Bryan Boreham 81ad24b10f Don't need 'exit 0' any more 2014-09-15 16:50:50 +01:00
Bryan Boreham 58c59caf1c Merge branch 'master' into 56_display_version 2014-09-15 16:49:27 +01:00
Bryan Boreham 66b28593b2 Fix indenting 2014-09-15 16:48:12 +01:00
Bryan Boreham 87a4dee7ea Added 'weave version' command per Issue #56 2014-09-15 16:32:19 +01:00
rade 5cc0eb4554 Merge pull request #49 from bboreham/10_display_version
tag published image with git revision

fixes #10
2014-09-15 16:01:10 +01:00
Bryan Boreham 25c4adf68e Don't need :latest on tag command 2014-09-15 16:00:08 +01:00
Bryan Boreham 1748b6e790 Merge remote-tracking branch 'upstream/master' 2014-09-15 15:42:44 +01:00
Bryan Boreham 976d36571a Add MAINTAINER line 2014-09-15 15:42:05 +01:00
Bryan Boreham f57058f627 Use git commit hash instead of requiring user to enter a version tag on 'make publish' 2014-09-15 15:33:09 +01:00
Bryan Boreham 7e8ac8c4d0 don't need ':latest' on the build line 2014-09-15 15:04:22 +01:00
Bryan Boreham 500bda596c Don't do the print args thing in this branch 2014-09-15 14:42:39 +01:00
Bryan Boreham 18f65dc344 Add 'publish' target to tag and push release 2014-09-15 14:40:57 +01:00
Bryan Boreham 244188776f Add tag to build command, so you can do "make tag=x.xx" to add a version number to the image 2014-09-15 14:26:13 +01:00
Bryan Boreham 39003233ea Remove version/build-date info from weaver binary 2014-09-15 14:05:15 +01:00
Matthias Radestock d2bd78435e add 'weave reset'
Closes #20.
2014-09-15 12:43:58 +01:00
Matthias Radestock 8297fef53d remove WEAVE iptable chain on 'weave stop'
No point keeping it around.

Also, simplify idempotence of masquerading setup.

Follow-up to issue #48.
2014-09-15 12:03:29 +01:00
Matthias Radestock 2f1359ae9f remove masquerading rules on 'weave stop/launch'
Leaving iptable masquerading rules behind is a bad idea when weave is
re-launched with different ip subnet settings. So now we remove the
rules on 'weave stop' and also on 'weave launch' (in case weave had
been stopped in ways other than 'weave stop').

To make the rule removal easier, we create the rules in a user-defined
WEAVE chain.

Note that this will break old weave installations, since the rules
created by those are left behind. Easiest upgrade path is to restart
the machine. Or, for the brave, run `iptables -t nat -S POSTROUTING | grep weave | sed 's/^\-A/-D/g' | while read line; do iptables -t nat $line; done`.

Fixes #48
2014-09-15 11:34:57 +01:00
Matthias Radestock f10c460f48 leave networking alone on 'weave launch' unless we start container 2014-09-14 19:31:27 +01:00
Matthias Radestock 4c93991651 ignore conntrack result in 'weave stop'
so we exit with status 0, since not having any existing flows is
perfectly normal
2014-09-14 19:08:00 +01:00
Matthias Radestock 948312f03d refactor: extract container network configuration
and use more function parameters in preference to global vars
2014-09-13 21:45:42 +01:00
Matthias Radestock c845ba7872 remove detritus
we haven't depended on pipework for a while
2014-09-13 20:48:49 +01:00
Matthias Radestock 6eb7e1aa43 disable offloading on weave bridge
since w/o it the kernel just ignores the PMTU when the host talks to
weave via 'weave expose'

Fixes #52
2014-09-13 19:58:54 +01:00
Matthias Radestock b4791be4f4 refactor: extract command checking helper 2014-09-13 19:47:38 +01:00
Matthias Radestock a53c817b8d create bridge in 'weave expose/hide'
since they really need the bridge
2014-09-13 17:44:29 +01:00
Matthias Radestock 1fac995248 work around 'docker rm -f' weirdness
I've been seeing

~# docker rm -f weave
Error response from daemon: Cannot destroy container weave: Driver devicemapper failed to remove root filesystem 29e46c3e400ee3c8654f2b06a0f6d97bde98dfeb9bb61d25195dba38c04324fc: Device is Busy

whereas the corresponding two-step 'docker kill' + 'docker rm' works
fine.
2014-09-13 07:51:06 +01:00
Bryan Boreham 9be3a11e10 cosmetic 2014-09-12 18:04:18 +01:00
Bryan Boreham 21bec9fc78 Add a -version command to weave and weaver, implemented by embedding the build date by the makefile 2014-09-12 17:53:06 +01:00
Bryan Boreham 6483c89a2b Factor out commands implemented via the REST interface 2014-09-12 17:51:30 +01:00
Bryan Boreham ef35839d4b Merge remote-tracking branch 'upstream/master' into 23_retry_peers 2014-09-11 19:32:12 +01:00
Matthias Radestock 51afd5e9c6 make 'weave launch' cope gracefully with existing 'weave' containers
Fixed #31
2014-09-11 07:56:26 +01:00
Matthias Radestock 710cf7ea8a nicer error on 'weave stop' and make it idempotent 2014-09-11 07:33:02 +01:00
Matthias Radestock b6351acb66 simplify error message 2014-09-11 07:19:14 +01:00
Matthias Radestock dbbb8c690a nicer error message on 'weave status' when there is no weave container. 2014-09-11 07:15:15 +01:00
Matthias Radestock 96766db5f0 consistency 2014-09-11 07:12:49 +01:00
Matthias Radestock 8cb79145fa Merge branch '23_retry_peers' of https://github.com/bboreham/weave into bboreham-23_retry_peers 2014-09-10 16:34:10 +01:00