2017-10-28 21:43:20 +00:00
|
|
|
#!/usr/bin/env bats
|
|
|
|
|
|
|
|
load helpers
|
|
|
|
|
|
|
|
IMAGE="redis:alpine"
|
|
|
|
|
|
|
|
function teardown() {
|
|
|
|
cleanup_test
|
|
|
|
}
|
|
|
|
|
|
|
|
@test "bind secrets mounts to container" {
|
|
|
|
start_crio
|
2017-11-15 15:24:20 +00:00
|
|
|
run crictl runs "$TESTDATA"/sandbox_config.json
|
2017-10-28 21:43:20 +00:00
|
|
|
echo "$output"
|
|
|
|
[ "$status" -eq 0 ]
|
|
|
|
pod_id="$output"
|
2017-11-15 15:24:20 +00:00
|
|
|
run crictl pull "$IMAGE"
|
2017-10-28 21:43:20 +00:00
|
|
|
[ "$status" -eq 0 ]
|
2017-11-15 15:24:20 +00:00
|
|
|
run crictl create "$pod_id" "$TESTDATA"/container_redis.json "$TESTDATA"/sandbox_config.json
|
2017-10-28 21:43:20 +00:00
|
|
|
echo "$output"
|
|
|
|
[ "$status" -eq 0 ]
|
|
|
|
ctr_id="$output"
|
2017-11-15 15:24:20 +00:00
|
|
|
run crictl exec --sync "$ctr_id" cat /proc/mounts
|
2017-10-28 21:43:20 +00:00
|
|
|
echo "$output"
|
|
|
|
[ "$status" -eq 0 ]
|
|
|
|
mount_info="$output"
|
|
|
|
run grep /container/path1 <<< "$mount_info"
|
|
|
|
echo "$output"
|
|
|
|
[ "$status" -eq 0 ]
|
|
|
|
cleanup_ctrs
|
|
|
|
cleanup_pods
|
|
|
|
stop_crio
|
|
|
|
}
|
|
|
|
|
|
|
|
@test "default mounts correctly sorted with other mounts" {
|
|
|
|
start_crio
|
2017-11-15 15:24:20 +00:00
|
|
|
run crictl runs "$TESTDATA"/sandbox_config.json
|
2017-10-28 21:43:20 +00:00
|
|
|
echo "$output"
|
|
|
|
[ "$status" -eq 0 ]
|
|
|
|
pod_id="$output"
|
2017-11-15 15:24:20 +00:00
|
|
|
run crictl pull "$IMAGE"
|
2017-10-28 21:43:20 +00:00
|
|
|
[ "$status" -eq 0 ]
|
|
|
|
host_path="$TESTDIR"/clash
|
|
|
|
mkdir "$host_path"
|
|
|
|
echo "clashing..." > "$host_path"/clashing.txt
|
|
|
|
sed -e "s,%HPATH%,$host_path,g" "$TESTDATA"/container_redis_default_mounts.json > "$TESTDIR"/defmounts_pre.json
|
|
|
|
sed -e 's,%CPATH%,\/container\/path1\/clash,g' "$TESTDIR"/defmounts_pre.json > "$TESTDIR"/defmounts.json
|
2017-11-15 15:24:20 +00:00
|
|
|
run crictl create "$pod_id" "$TESTDIR"/defmounts.json "$TESTDATA"/sandbox_config.json
|
2017-10-28 21:43:20 +00:00
|
|
|
echo "$output"
|
|
|
|
[ "$status" -eq 0 ]
|
|
|
|
ctr_id="$output"
|
2017-11-15 15:24:20 +00:00
|
|
|
run crictl exec --sync "$ctr_id" ls -la /container/path1/clash
|
2017-10-28 21:43:20 +00:00
|
|
|
echo "$output"
|
|
|
|
[ "$status" -eq 0 ]
|
2017-11-15 15:24:20 +00:00
|
|
|
run crictl exec --sync "$ctr_id" cat /container/path1/clash/clashing.txt
|
2017-10-28 21:43:20 +00:00
|
|
|
echo "$output"
|
|
|
|
[ "$status" -eq 0 ]
|
|
|
|
[[ "$output" =~ "clashing..." ]]
|
2017-11-15 15:24:20 +00:00
|
|
|
run crictl exec --sync "$ctr_id" ls -la /container/path1
|
2017-10-28 21:43:20 +00:00
|
|
|
echo "$output"
|
|
|
|
[ "$status" -eq 0 ]
|
2017-11-15 15:24:20 +00:00
|
|
|
run crictl exec --sync "$ctr_id" cat /container/path1/test.txt
|
2017-10-28 21:43:20 +00:00
|
|
|
echo "$output"
|
|
|
|
[ "$status" -eq 0 ]
|
|
|
|
[[ "$output" =~ "Testing secrets mounts!" ]]
|
|
|
|
cleanup_ctrs
|
|
|
|
cleanup_pods
|
|
|
|
stop_crio
|
|
|
|
}
|