mirror of
https://github.com/linuxkit/linuxkit.git
synced 2026-04-04 20:59:21 +00:00
100 lines
1.7 KiB
Plaintext
Executable File
100 lines
1.7 KiB
Plaintext
Executable File
#!/usr/bin/env expect
|
|
spawn linuxkit run test-ctr
|
|
set pid [exp_pid]
|
|
set timeout 60
|
|
set prompt ":~# "
|
|
# Running $image should produce $output
|
|
set image "docker.io/library/hello-world@sha256:f3b3b28a45160805bb16542c9531888519430e9e6d6ffc09d72261b0d26ff74f"
|
|
set output "Hello from Docker!"
|
|
|
|
expect {
|
|
timeout {
|
|
puts "FAILED boot"
|
|
exec kill -9 $pid
|
|
exit 1
|
|
}
|
|
"Welcome to LinuxKit" {
|
|
puts "SUCCESS boot"
|
|
}
|
|
}
|
|
expect {
|
|
timeout {
|
|
puts "FAILED login user"
|
|
exec kill -9 $pid
|
|
exit 1
|
|
}
|
|
"ogin: " {
|
|
send "root\n"
|
|
}
|
|
}
|
|
expect {
|
|
timeout {
|
|
puts "FAILED login pass"
|
|
exec kill -9 $pid
|
|
exit 1
|
|
}
|
|
"assword: " {
|
|
send "abcdefgh\n"
|
|
}
|
|
}
|
|
|
|
expect {
|
|
timeout {
|
|
puts "FAILED ctr images pull"
|
|
exec kill -9 $pid
|
|
exit 1
|
|
}
|
|
$prompt {
|
|
send "ctr images pull $image\n"
|
|
}
|
|
}
|
|
expect {
|
|
timeout {
|
|
puts "FAILED ctr images pull"
|
|
exec kill -9 $pid
|
|
exit 1
|
|
}
|
|
$prompt {
|
|
puts "SUCCESS ctr images pull"
|
|
send "ctr run -t $image test\n"
|
|
}
|
|
}
|
|
expect {
|
|
timeout {
|
|
puts "FAILED ctr run"
|
|
exec kill -9 $pid
|
|
exit 1
|
|
}
|
|
$output {
|
|
puts "SUCCESS ctr run"
|
|
# Ctrl-C
|
|
send "\003"
|
|
}
|
|
}
|
|
expect {
|
|
timeout {
|
|
puts "FAILED kill ctr"
|
|
exec kill -9 $pid
|
|
exit 1
|
|
}
|
|
$prompt {
|
|
send "poweroff -f\n"
|
|
}
|
|
}
|
|
expect {
|
|
timeout {
|
|
puts "FAILED poweroff"
|
|
exec kill -9 $pid
|
|
exit 1
|
|
}
|
|
"Power down" {
|
|
puts "SUCCESS poweroff"
|
|
}
|
|
eof {
|
|
puts "SUCCESS poweroff"
|
|
}
|
|
}
|
|
set waitval [wait -i $spawn_id]
|
|
set exval [lindex $waitval 3]
|
|
exit $exval
|