Commit graph

24 commits

Author SHA1 Message Date
nils måsén
533bfc0e8b fix: always add missing slashes to link names
previously, this was only done when marking  dependant containers
for restart. but since the names should ALWAYS start with a slash,
this check could be performed every time the container is iterated.
the only downside to this is that it's less performant (as it needs to
copy the strings instead of just having the slices point to the same
source string), but it should not be noticable.
2023-03-12 10:44:06 +01:00
nils måsén
e9c83af533
fix: correctly handle non-stale restarts (#1220) 2022-04-18 19:36:38 +02:00
nils måsén
084249c5fc
fix: linked/depends-on container restarting (#1103) 2022-01-11 17:15:22 +01:00
nils måsén
e3dd8d688a
Session report collection and report templates (#981)
* wip: notification stats

* make report notifications optional

* linting/documentation fixes

* linting/documentation fixes

* merge types.Container and container.Interface

* smaller naming/format fixes

* use typed image/container IDs

* simplify notifier and update tests

* add missed doc comments

* lint fixes

* remove unused constructors

* rename old/new current/latest
2021-06-27 09:05:01 +02:00
yrien30
145fe6dbcb
Pre-update lifecycle hook (#793)
* Make watchtower skip update if pre-update lifecycle hook exits with a non-zero exit code
#649

* Make watchtower skip update if pre-update lifecycle hook exits with a non-zero exit code
#649

* Make watchtower skip update if pre-update lifecycle hook exits with a non-zero exit code
#649

* Make watchtower skip update if pre-update lifecycle hook exits with a non-zero exit code
#649

* Make watchtower skip update if pre-update lifecycle hook exits with a non-zero exit code #649

* Make watchtower skip update if pre-update lifecycle hook exits with a non-zero exit code #649

* Make watchtower skip update if pre-update lifecycle hook exits with a non-zero exit code #649

* Prevent starting new container if old one is not stopped because of lifecycle hook.

* Add null check for c.containerInfo.State in IsRunning

* Fixed that the container would not start

* Added test for preupdate

* EX_TEMPFAIL -> ExTempFail

* Added missing fuction ouput names

* Skip preupdate when container is restarting.
2021-06-24 00:36:33 +02:00
nils måsén
12467712a1
feat: check container config before update (#925)
* feat: check container config before restart
* fix: only skip when hostconfig and config differ
* fix: update test mocks to not fail tests
* test: add verify config tests
2021-04-24 18:29:05 +02:00
Simon Aronsson
3de202a965
fix depends on behavior and simplify some of its logic (#908)
* fix depends on behavior and simplify some of its logic

* fix comments
2021-04-18 18:37:35 +02:00
Simon Aronsson
d7d5b25882
Prometheus support (#450)
Co-authored-by: nils måsén <nils@piksel.se>
Co-authored-by: MihailITPlace <ya.halo-halo@yandex.ru>
Co-authored-by: Sebastiaan Tammer <sebastiaantammer@gmail.com>
2021-01-06 22:28:32 +01:00
nils måsén
4d17cf1a29
fix cleanup for rolling updates (#706) 2020-12-20 18:16:32 +01:00
David H
bde421be0d
Monitor-only for individual containers (#652)
* Add monitor-only label

* Add tests for monitor-only

* Treat missing monitor-only label as if the option was set to false

* Add docs for container-based monitor-only

* Add function doc

* Fix monitor-only logic
2020-10-03 22:00:02 +02:00
Ben Osheroff
c56e0a95a7
Rolling restart (#619)
* implement rolling restart functionality

bouncing each image individually can ensure that a group of docker
containers launched with docker-compose can stay 100% up during deploy.

* move rolling restart into a function

* honor params.Cleanup

Co-authored-by: Simon Aronsson <simme@arcticbit.se>
2020-08-21 22:35:46 +02:00
nils måsén
5efb249a86
Skip updating containers where no local image info can be retrieved (#612)
* Revert "Image of running container no longer needed locally (#571)"

This reverts commit 6da66fb312.

* Update client.go

* fix: skip updating when no image info can be retrieved

This will allow watchtower to continue even though the image info for a
container cannot be retrieved. If this happens one warning will be emitted
and the container will be skipped, unless NoRestart or OnlyMonitor is supplied
2020-08-18 20:55:35 +02:00
Simon Aronsson
4672811983 fix linting and formatting 2020-04-24 13:45:24 +02:00
Simon Aronsson
c1a0da9a9d feature/367 fix: skip container if pre-update command fails 2020-03-28 19:35:02 +01:00
Simon Aronsson
1d1c630f7a feat: add timeout override for pre-update lifecycle hook 2020-03-28 19:33:02 +01:00
Simon Aronsson
d1abce889a refactor: extract code from the container package 2020-01-11 23:36:07 +01:00
Simon Aronsson
7b8b8e8ad9 #387 fix: switch to image id map and add additional tests 2020-01-11 00:28:27 +01:00
Lukas Elsner
fa1b8d5d0c proper set implementation 2019-12-19 12:57:50 -05:00
Lukas Elsner
a2a62fb46e do not delete same image twice when cleaning up 2019-10-13 14:46:06 -06:00
Niklas Wigertz Danielsson
135467dcf6 add pre/post update check lifecycle hooks (#373)
* add pre/post update check lifecycle hooks

* update docs for lifecycle hooks

* Fix phrasing
2019-09-15 16:58:46 +02:00
Simon Aronsson
bfae38dbf8
Feat/lifecycle hooks (#351)
* feat(update): add lifecycle hooks to the update action

* fix(ci): add bash tests for lifecycle-hooks to the ci workflow

* fix(ci): move integration tests to an isolated step

* fix(ci): fix malformed all-contributors json

* fix(ci): disable automatic bash test until we figure out a reasonable way to run it in circleci
2019-07-27 01:37:16 +02:00
Simon Aronsson
e4e1127f8e fix: remove linting issues 2019-07-22 12:10:57 +02:00
Simon Aronsson
6c507433e8 refactor: split out more code into separate files 2019-07-22 10:20:11 +02:00
Simon Aronsson
a425bf1024 refactor: move actions into internal 2019-07-21 22:22:30 +02:00
Renamed from pkg/actions/update.go (Browse further)