diff options
author | Maxim Kuvyrkov <maxim.kuvyrkov@linaro.org> | 2017-04-28 08:00:59 +0000 |
---|---|---|
committer | Maxim Kuvyrkov <maxim.kuvyrkov@linaro.org> | 2017-05-02 17:36:33 +0000 |
commit | f352e33a668cf4fb88fef73055fa518ada7e0b52 (patch) | |
tree | 14ac4284ee9459ceb7e3b96df6c75230a9fb3fc3 /tcwg-cleanup-stale-containers.sh | |
parent | fd33ebf0b931c3c52466cdeea4d8f8ace8be33fb (diff) |
tcwg-cleanup-stale-containers: Rework container time calculation.
Thanks, Charles!
Change-Id: Iba7f6ba6ad5f51eaf244c38ad68f37150d080a4b
Diffstat (limited to 'tcwg-cleanup-stale-containers.sh')
-rwxr-xr-x | tcwg-cleanup-stale-containers.sh | 15 |
1 files changed, 7 insertions, 8 deletions
diff --git a/tcwg-cleanup-stale-containers.sh b/tcwg-cleanup-stale-containers.sh index 6c28b8dc..ce879cb1 100755 --- a/tcwg-cleanup-stale-containers.sh +++ b/tcwg-cleanup-stale-containers.sh @@ -63,16 +63,15 @@ do_cleanup_containers () echo "Container report before:" $DOCKER ps $docker_ps_opts - rm_containers=() - for container in $($DOCKER ps --format "{{.ID}} {{.RunningFor}}" $docker_ps_opts | grep "hour\|day" | cut -d" " -f 1); do - container_days="$($DOCKER ps --format "{{.ID}} {{.RunningFor}}" $docker_ps_opts | grep "$container [0-9]\+ day" | cut -d" " -f 2)" - if [ x"$container_days" = x"" ]; then container_days="0"; fi + local -a rm_containers=() + local curdate=$(date +%s) + for container in $(docker ps $docker_ps_opts --format "{{.ID}}"); do + local container_date container_seconds - container_hours="$($DOCKER ps --format "{{.ID}} {{.RunningFor}}" $docker_ps_opts | grep "$container [0-9]\+ hour" | cut -d" " -f 2)" - if [ x"$container_hours" = x"" ]; then container_hours="0"; fi + container_date=$(date +%s --date="$(docker inspect --format "{{.Created}}" $container)") + container_seconds=$((curdate-container_date)) - container_hours=$(($container_days*24 + $container_hours)) - if [ "$container_hours" -gt "$hours" ]; then + if [ "$(($container_seconds/3600))" -gt "$hours" ]; then rm_containers=("${rm_containers[@]}" $container) fi done |