2017-09-19 17:45:08 +00:00
|
|
|
#!/usr/bin/env bats
|
|
|
|
|
|
|
|
load helpers
|
|
|
|
|
|
|
|
IMAGE="redis:alpine"
|
|
|
|
|
|
|
|
# Returns the POD ID
|
|
|
|
function pod_run_from_template(){
|
|
|
|
#1=name, 2=uid, 3=namespace) {
|
|
|
|
NAME=$1 CUID=$2 NAMESPACE=$3 envsubst < ${TESTDATA}/template_sandbox_config.json > ${TESTDIR}/pod-${1}.json
|
|
|
|
crioctl pod run --config ${TESTDIR}/pod-${1}.json
|
|
|
|
}
|
|
|
|
|
|
|
|
# Returns the container ID
|
|
|
|
function container_create_from_template() {
|
|
|
|
#1=name, 2=image, 3=command, 4=id) {
|
|
|
|
NAME=$1 IMAGE=$2 COMMAND=$3 envsubst < ${TESTDATA}/template_container_config.json > ${TESTDIR}/ctr-${1}.json
|
|
|
|
crioctl ctr create --config ${TESTDIR}/ctr-${1}.json --pod "$4"
|
|
|
|
}
|
|
|
|
|
|
|
|
function container_start() {
|
|
|
|
#1=id
|
|
|
|
crioctl ctr start --id "$1"
|
|
|
|
|
|
|
|
}
|
|
|
|
@test "wait on a bogus container" {
|
|
|
|
start_crio
|
|
|
|
run ${KPOD_BINARY} ${KPOD_OPTIONS} wait 12343
|
|
|
|
echo $output
|
|
|
|
[ "$status" -eq 1 ]
|
|
|
|
stop_crio
|
|
|
|
}
|
|
|
|
|
|
|
|
@test "wait on a stopped container" {
|
|
|
|
run ${KPOD_BINARY} ${KPOD_OPTIONS} pull docker.io/library/busybox:latest
|
|
|
|
echo $output
|
2017-09-28 17:46:07 +00:00
|
|
|
[ "$status" -eq 0 ]
|
2017-09-19 17:45:08 +00:00
|
|
|
start_crio
|
|
|
|
pod_id=$( pod_run_from_template "test" "test" "test1-1" )
|
|
|
|
echo $pod_id
|
|
|
|
ctr_id=$(container_create_from_template "test-CTR" "docker.io/library/busybox:latest" '["ls"]' "${pod_id}")
|
|
|
|
echo $ctr_id
|
|
|
|
container_start $ctr_id
|
|
|
|
run ${KPOD_BINARY} ${KPOD_OPTIONS} wait $ctr_id
|
|
|
|
[ "$status" -eq 0 ]
|
|
|
|
cleanup_ctrs
|
|
|
|
cleanup_pods
|
|
|
|
stop_crio
|
|
|
|
}
|
|
|
|
|
|
|
|
@test "wait on a sleeping container" {
|
|
|
|
run ${KPOD_BINARY} ${KPOD_OPTIONS} pull docker.io/library/busybox:latest
|
|
|
|
echo $output
|
2017-09-28 17:46:07 +00:00
|
|
|
[ "$status" -eq 0 ]
|
2017-09-19 17:45:08 +00:00
|
|
|
start_crio
|
|
|
|
pod_id=$( pod_run_from_template "test" "test" "test1-1" )
|
|
|
|
echo $pod_id
|
|
|
|
ctr_id=$(container_create_from_template "test-CTR" "docker.io/library/busybox:latest" '["sleep", "5"]' "${pod_id}")
|
|
|
|
echo $ctr_id
|
|
|
|
run container_start $ctr_id
|
|
|
|
echo $output
|
2017-09-28 17:46:07 +00:00
|
|
|
[ "$status" -eq 0 ]
|
2017-09-19 17:45:08 +00:00
|
|
|
run ${KPOD_BINARY} ${KPOD_OPTIONS} wait $ctr_id
|
|
|
|
echo $output
|
|
|
|
[ "$status" -eq 0 ]
|
|
|
|
cleanup_ctrs
|
|
|
|
cleanup_pods
|
|
|
|
stop_crio
|
|
|
|
}
|