mirror of
https://gitlab.alpinelinux.org/alpine/cloud/tiny-cloud.git
synced 2025-12-15 11:22:43 +03:00
tests: add tests for init-final
This commit is contained in:
parent
e51051c7ca
commit
fa01b4ea9a
42
tests/init-final.test
Executable file
42
tests/init-final.test
Executable file
@ -0,0 +1,42 @@
|
||||
#!/usr/bin/env atf-sh
|
||||
|
||||
. $(atf_get_srcdir)/test_env.sh
|
||||
|
||||
export PREFIX="$srcdir"
|
||||
export MOCK=echo
|
||||
lib="$srcdir"/lib/tiny-cloud/init-final
|
||||
init_main="$srcdir"/lib/tiny-cloud/init-main
|
||||
PROVIDERS="aws azure gcp nocloud oci"
|
||||
|
||||
init_tests \
|
||||
is_userdata_script \
|
||||
run_userdata
|
||||
|
||||
|
||||
is_userdata_script_body() {
|
||||
mkdir -p var/lib/cloud
|
||||
for c in $PROVIDERS; do
|
||||
echo "#tiny-cloud-config" > var/lib/cloud/user-data
|
||||
CLOUD="$c" atf_check -s not-exit:0 \
|
||||
sh -c ". \"$lib\"; is_userdata_script"
|
||||
|
||||
echo "#!/bin/sh" > var/lib/cloud/user-data
|
||||
CLOUD="$c" atf_check -s exit:0 \
|
||||
sh -c ". \"$lib\"; is_userdata_script"
|
||||
done
|
||||
}
|
||||
|
||||
run_userdata_body() {
|
||||
fake_userdata_nocloud <<-EOF
|
||||
#!/bin/sh
|
||||
echo "hello from user-data"
|
||||
EOF
|
||||
CLOUD="nocloud" atf_check \
|
||||
sh -c ". \"$init_main\"; save_userdata"
|
||||
CLOUD="nocloud" atf_check \
|
||||
-o match:"hello from user-data" \
|
||||
sh -c ". \"$lib\"; run_userdata"
|
||||
grep "hello from user-data" var/log/user-data.log || atf_fail "user-data.log failed"
|
||||
grep -w "0" var/log/user-data.exit || atf_fail "user-data.exit failed"
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user