Commit Graph

44 Commits (46ffa16ee27ebb3ffa4c497e5bd18e27812e1afe)

Author SHA1 Message Date
Simon Aronsson e2228f1b0b improve test coverage and add an api-server mock 6 years ago
Simon Aronsson f8dd9bb02a improve test coverage 6 years ago
Simon Aronsson 6157c50e4f fix some minor issues 6 years ago
Simon Aronsson 1b82da1ab7 Setup a working pipeline
* add tests to ensure function even after switching docker client api version
* switch docker client api version to remove import of Sirupsen and get rid of the casing workaround
* migrate from glide to dep to go modules
* rewrite ci workflow
  * only run publish on version tags
  * only run build on branches
  * update goreleaser config
  * disable automated latest tag push
* remove dependency to v2tec/docker-gobuilder
* remove dead code and files
* add golands .idea folder to gitignore
* add label to released docker images
* add test reporting, add some unit tests
* change test output dir
* fix goreleaser versions
* add debug output for circleci and goreleaser
* disable cgo
6 years ago
Fabrizio Steiner d0ac9f14ab some linting 7 years ago
Fabrizio Steiner 026a04b59b implemented enableLabel by a Filter 7 years ago
ubergesundheit d989254b1a change upper case S in sirupsen to lower case to avoid build error 7 years ago
Kaleb Elwert de2ac9341d Add a method of enabling or disabling containers using labels
Switch command line flag from no-enable to label-enable and simplify logic

Add basic documentation for the --label-enable flag
7 years ago
Fabrizio Steiner 52e73d7a8a Do not initiate a RemoveContainer for containers which have AutoRemove (--rm) active.
fixes GH-71
8 years ago
Robotex f8a05cb8ab Added host network check 8 years ago
Tanguy ⧓ Herrmann a5c3e1e05a Make the algorithm follow docker-compose more precisely
https://github.com/v2tec/watchtower/pull/40#discussion_r97719974
8 years ago
Fabrizio Steiner db473821f6 Merge branch 'master' into net 8 years ago
Fabrizio Steiner eda5391d0a go fmt... 8 years ago
Fabrizio Steiner edfad5b786 RenameContainer implemented, this fixes the problem that watchtower can't update itself. 8 years ago
Tanguy ⧓ Herrmann b45fc5a9ba Fix comment from HoundCI
https://github.com/CenturyLinkLabs/watchtower/pull/40#discussion_r94326156
8 years ago
Tanguy ⧓ Herrmann 4909b90662 go fmt done! 8 years ago
Tanguy ⧓ Herrmann f8a2f80b92 Make an updated container connects to all the previously connected net
With insights from https://github.com/docker/docker/issues/29265
the behaviour is the same as the one from docker-compose

* connect to 1 network (at random) at start
* disconnect from that network
* reconnect to all the network from the previous configuration
8 years ago
Tanguy ⧓ Herrmann fe0e34e857 Reuse the network config for the relaunch 8 years ago
Ross Cadogan dad5d58339 Support loading authentication credentials from Docker config file 8 years ago
Ross Cadogan 541264281c Cannot load host Docker config from container. Remove option and rely on environment variables 8 years ago
Ross Cadogan 1c59200565 Registry authentication was failing silently when pulling images.
Load authentication credentials for available credential stores in order of preference:
 1. Environment variables REPO_USER, REPO_PASS
 2. Docker config files
Request image pull with authentication header.
Wait until pull request is complete before exiting function.
8 years ago
Ross Cadogan ef430b791a Add auth config, registry auth fails silently without 8 years ago
Ross Cadogan 42fea79860 Rework TLS support, remove unsupported options 8 years ago
Ross Cadogan b13e6af70f Migrate from codegangsta lib to urfave 8 years ago
Ross Cadogan 99ed959155 Port client lib from samalba/dockerclient to docker/docker/client 8 years ago
Ross Cadogan 02bca8d6a4 Improve error reporting 8 years ago
Erin Corson d36899dd7c parameterize repo auth 9 years ago
Erin Corson 337db1d458 merge resolution 9 years ago
Erin Corson f5801669ab updates 9 years ago
Erin Corson b1e70f494e will not compile without these updates due to change in docker lib 9 years ago
Brian DeHamer b0910ee20b Add support for whitelist of monitored containers 9 years ago
Brian DeHamer d6321bf8dc Add godoc comments 9 years ago
Brian DeHamer 058d6e5507 Turn DockerClient into dockerClient
No need to export this particular struct since we already have a public
Client interface available and a NewClient function which can be used to
instantiate the concrete struct.
9 years ago
Brian DeHamer dd80aa4a0d Support for --cleanup flag
The --cleanup flag will cause watchtower to automatically remove the old
image after a container is restart with a new image.
9 years ago
Brian DeHamer 812fb60805 Handle errors without halting
If we receive an error while trying to shutdown/startup a particular
container we don't want to immediately terminate the current update
cycle. Instead we should continue processing the remaining containers
and simply log the error.
9 years ago
Brian DeHamer e21c21ec3b Account for latency in container removal
Under certain conditions when watchtower is monitoring a Docker Swarm
cluster there would be cases where an updated container could not be
started because the old hadn't yet been removed (name conflicts, mapped
port conflicts, etc). We suspect that this has something to do with the
async nature of swarm and even though we've asked the swarm master to
remove a container it may not be completely removed from the associated
node. The fix is to do some polling after the remove container call to
ensure that the container is truly gone before proceeding.
9 years ago
Brian DeHamer e06c46552a Support TLS connections to remote daemons 9 years ago
Brian DeHamer 4275d1cd3d Add more accessors to Container struct 9 years ago
Brian DeHamer bfed95ecaf Support --debug flag
Also adds better logging output
9 years ago
Brian DeHamer 3d0c853e42 Add --no-pull support 9 years ago
Brian DeHamer a8dec129f5 Refactor Client interface 9 years ago
Brian DeHamer cc1efc20e2 Go-lint clean-up 9 years ago
Brian DeHamer 4ba21639a0 Allow user-configurable DOCKER_HOST 9 years ago
Brian DeHamer 00f2875abf Refactoring & renaming 9 years ago