Skip to content

Commit 83aa62c

Browse files
committed
Improve logging on empty script dir
1 parent 4bd29d9 commit 83aa62c

File tree

2 files changed

+25
-3
lines changed

2 files changed

+25
-3
lines changed

docker-lifecycle-listener.sh

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -91,6 +91,11 @@ run_if_possible() {
9191
fi
9292
}
9393

94+
is_empty_dir() {
95+
local dir="$1"
96+
[ -z "$(ls -A "$dir")" ]
97+
}
98+
9499
run_on() {
95100
local command="$1"
96101
local script_dir="$2"
@@ -99,9 +104,13 @@ run_on() {
99104

100105
local dir; dir="$script_dir/on_$command/"
101106
if [ -d "$dir" ]; then
102-
for file in "$dir"/*; do
103-
run_if_possible "$file"
104-
done
107+
if ! is_empty_dir "$dir"; then
108+
for file in "$dir"/*; do
109+
run_if_possible "$file"
110+
done
111+
else
112+
log "$dir is empty"
113+
fi
105114
else
106115
log "$dir does not exist"
107116
fi

test/docker-lifecycle-listener.bats

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -67,3 +67,16 @@ teardown() {
6767

6868
test "$status" -ne 0
6969
}
70+
71+
@test "is_empty_dir succeeds if dir is empty" {
72+
local empty_dir; empty_dir=$(mktemp -d)
73+
is_empty_dir "$empty_dir"
74+
}
75+
76+
@test "is_empty_dir fails if dir is empty" {
77+
local non_empty_dir; non_empty_dir=$(mktemp -d)
78+
touch "$non_empty_dir/something"
79+
80+
run is_empty_dir "$non_empty_dir"
81+
test "$status" -ne 0
82+
}

0 commit comments

Comments
 (0)