1
0
mirror of https://gitlab.alpinelinux.org/alpine/cloud/tiny-cloud.git synced 2026-06-21 00:07:16 +03:00

Fix regression introduced with autodetect

This commit is contained in:
Natanael Copa 2026-06-08 19:27:53 +00:00 committed by Jake Buchholz Göktürk
parent dcadf2ad0a
commit 263803475e
2 changed files with 42 additions and 41 deletions

View File

@ -68,6 +68,7 @@ cloud_hint() {
return
}
done
return 0
}
cloud_autodetect() {

View File

@ -52,7 +52,7 @@ expand_root_body() {
for provider in $PROVIDERS; do
CLOUD="$provider" atf_check \
-o match:"resize2fs /dev/xvda" \
sh -c ". $lib; init__expand_root"
sh -e -c ". $lib; init__expand_root"
done
}
@ -70,7 +70,7 @@ expand_root_partition_body() {
-o match:"sfdisk .*/dev/nvme0n1" \
-o match:"partx .*/dev/nvme0n1" \
-o match:"resize2fs /dev/nvme0n1p2" \
sh -c ". $lib; init__expand_root"
sh -e -c ". $lib; init__expand_root"
done
}
@ -106,7 +106,7 @@ expand_root_lvm_partition_body() {
-o match:"pvresize /dev/vda2" \
-o match:"lvextend -l \\+85%VG /dev/mapper/vg0-root" \
-o match:"resize2fs /dev/mapper/vg0-root" \
sh -c ". $lib; init__expand_root"
sh -e -c ". $lib; init__expand_root"
done
}
@ -139,7 +139,7 @@ expand_root_lvm_whole_disk_body() {
-o match:"resize2fs /dev/mapper/vg1-root" \
-o not-match:"sfdisk" \
-o not-match:"partx" \
sh -c ". $lib; init__expand_root"
sh -e -c ". $lib; init__expand_root"
done
}
@ -152,7 +152,7 @@ ethernets_body() {
-o match:"eth0 eth2 eth11" \
-o not-match:"br0" \
-o not-match:"lo" \
sh -c ". $lib; ethernets | tr '\n' ' '"
sh -e -c ". $lib; ethernets | tr '\n' ' '"
}
find_first_interface_up_body() {
@ -161,7 +161,7 @@ find_first_interface_up_body() {
atf_check \
-o match:"eth1" \
sh -c ". $lib; find_first_interface_up eth0 eth1"
sh -e -c ". $lib; find_first_interface_up eth0 eth1"
}
auto_detect_ethernet_interface_body() {
@ -170,13 +170,13 @@ auto_detect_ethernet_interface_body() {
atf_check \
-o match:"^eth1$" \
sh -c ". $lib; auto_detect_ethernet_interface"
sh -e -c ". $lib; auto_detect_ethernet_interface"
# test that we pick first if all are down
echo down > sys/class/net/eth1/operstate
atf_check \
-o match:"^eth0$" \
sh -c ". $lib; TINY_CLOUD_LINK_WAIT_MAX=1; auto_detect_ethernet_interface"
sh -e -c ". $lib; TINY_CLOUD_LINK_WAIT_MAX=1; auto_detect_ethernet_interface"
}
set_default_interfaces_body() {
@ -184,7 +184,7 @@ set_default_interfaces_body() {
echo up > sys/class/net/eth1/operstate
atf_check \
sh -c ". $lib; init__set_default_interfaces"
sh -e -c ". $lib; init__set_default_interfaces"
atf_check \
-o match:"auto lo" \
-o match:"iface eth1" \
@ -197,7 +197,7 @@ enable_sshd_body() {
CLOUD="$provider" atf_check \
-o match:"rc-update.* add sshd default" \
-o match:"rc-update.* --update" \
sh -c ". $lib; init__enable_sshd"
sh -e -c ". $lib; init__enable_sshd"
done
}
@ -207,7 +207,7 @@ create_default_user_body() {
-o match:"adduser.*alpine" \
-o match:"addgroup alpine wheel" \
-o match:"chpasswd -e" \
sh -c ". $lib; init__create_default_user"
sh -e -c ". $lib; init__create_default_user"
}
save_userdata_plain_body() {
@ -215,7 +215,7 @@ save_userdata_plain_body() {
#userdata
EOF
CLOUD="nocloud" atf_check -e match:"NoCloud 'meta-data' is empty" \
sh -c ". \"$lib\"; init__save_userdata"
sh -e -c ". \"$lib\"; init__save_userdata"
atf_check -o match:"^#userdata" cat var/lib/cloud/user-data
}
@ -227,7 +227,7 @@ save_userdata_compressed_body() {
CLOUD="nocloud" atf_check \
-e 'ignore' \
sh -c ". \"$lib\"; init__save_userdata"
sh -e -c ". \"$lib\"; init__save_userdata"
if ! grep "^#userdata" var/lib/cloud/user-data; then
atf_fail "$comp failed"
@ -242,7 +242,7 @@ set_hostname_body() {
CLOUD="nocloud" atf_check \
-o match:"hostname.*-F $PWD/etc/hostname" \
sh -c ". \"$lib\"; init__set_hostname"
sh -e -c ". \"$lib\"; init__set_hostname"
atf_check -o match:"^myhostname$" cat etc/hostname
}
@ -258,7 +258,7 @@ set_ssh_keys_body() {
EOF
CLOUD="nocloud" atf_check \
-o match:"chown.*/\.ssh" \
sh -c ". \"$lib\"; init__set_ssh_keys"
sh -e -c ". \"$lib\"; init__set_ssh_keys"
atf_check -o match:"^ssh-ed25519 keydata" \
-o match:"^ssh-rsa foobar" \
cat home/alpine/.ssh/authorized_keys
@ -289,7 +289,7 @@ set_ssh_keys_gcp_body() {
-e ignore \
-o match:"chown -R bar:1001 .*\\.ssh" \
-o not-match:"no SSH keys found for alpine" \
sh -c ". \"$lib\"; init__set_ssh_keys"
sh -e -c ". \"$lib\"; init__set_ssh_keys"
atf_check -o match:"^ssh-ed25519 foobar1 alpine" \
-o match:"^ssh-rsa foobar5 google-ssh" \
-o not-match:"foobar4" \
@ -305,32 +305,32 @@ userdata_type_body() {
rm -f var/lib/cloud/user-data
CLOUD="$c" atf_check \
-o match:"missing" \
sh -c ". \"$lib\"; userdata_type"
sh -e -c ". \"$lib\"; userdata_type"
touch var/lib/cloud/user-data
CLOUD="$c" atf_check \
-o match:"empty" \
sh -c ". \"$lib\"; userdata_type"
sh -e -c ". \"$lib\"; userdata_type"
echo "#tiny-cloud-config" > var/lib/cloud/user-data
CLOUD="$c" atf_check \
-o match:"tiny-cloud-config" \
sh -c ". \"$lib\"; userdata_type"
sh -e -c ". \"$lib\"; userdata_type"
echo "no-content-type" > var/lib/cloud/user-data
CLOUD="$c" atf_check \
-o match:"unknown" \
sh -c ". \"$lib\"; userdata_type"
sh -e -c ". \"$lib\"; userdata_type"
echo "#alpine-config" > var/lib/cloud/user-data
CLOUD="$c" atf_check \
-o match:"alpine-config" \
sh -c ". \"$lib\"; userdata_type"
sh -e -c ". \"$lib\"; userdata_type"
echo "#!/bin/sh" > var/lib/cloud/user-data
CLOUD="$c" atf_check -s exit:0 \
-o match:"script" \
sh -c ". \"$lib\"; userdata_type"
sh -e -c ". \"$lib\"; userdata_type"
done
}
@ -340,10 +340,10 @@ run_userdata_body() {
echo "hello from user-data"
EOF
CLOUD="nocloud" atf_check -e match:"NoCloud 'meta-data' is empty" \
sh -c ". \"$lib\"; init__save_userdata"
sh -e -c ". \"$lib\"; init__save_userdata"
CLOUD="nocloud" atf_check \
-o match:"hello from user-data" \
sh -c ". \"$lib\"; init__run_userdata"
sh -e -c ". \"$lib\"; init__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"
}
@ -351,7 +351,7 @@ run_userdata_body() {
autodetect_unknown_body() {
atf_check \
-o match:"unknown" \
sh -c ". \"$lib\"; echo \$CLOUD"
sh -e -c ". \"$lib\"; echo \$CLOUD"
}
autodetect_config_overrides_cmdline_body() {
@ -359,7 +359,7 @@ autodetect_config_overrides_cmdline_body() {
echo "quiet ds=scaleway console=ttyS0" > proc/cmdline
CLOUD=aws atf_check \
-o match:"aws" \
sh -c ". \"$lib\"; echo \$CLOUD"
sh -e -c ". \"$lib\"; echo \$CLOUD"
}
autodetect_cache_overrides_cmdline_body() {
@ -368,7 +368,7 @@ autodetect_cache_overrides_cmdline_body() {
echo "quiet ds=scaleway console=ttyS0" > proc/cmdline
atf_check \
-o match:"aws" \
sh -c ". \"$lib\"; echo \$CLOUD"
sh -e -c ". \"$lib\"; echo \$CLOUD"
}
autodetect_aws_cmdline_body() {
@ -376,7 +376,7 @@ autodetect_aws_cmdline_body() {
echo "quiet tinycloud=cloud=aws console=ttyS0" > proc/cmdline
atf_check \
-o match:"aws" \
sh -c ". \"$lib\"; echo \$CLOUD"
sh -e -c ". \"$lib\"; echo \$CLOUD"
}
autodetect_aws_nitro_body() {
@ -386,7 +386,7 @@ autodetect_aws_nitro_body() {
EOT
atf_check \
-o match:"aws" \
sh -c ". \"$lib\"; echo \$CLOUD"
sh -e -c ". \"$lib\"; echo \$CLOUD"
}
autodetect_aws_xen_body() {
@ -396,7 +396,7 @@ autodetect_aws_xen_body() {
EOT
atf_check \
-o match:"aws" \
sh -c ". \"$lib\"; echo \$CLOUD"
sh -e -c ". \"$lib\"; echo \$CLOUD"
}
autodetect_azure_body() {
@ -406,7 +406,7 @@ autodetect_azure_body() {
EOT
atf_check \
-o match:"azure" \
sh -c ". \"$lib\"; echo \$CLOUD"
sh -e -c ". \"$lib\"; echo \$CLOUD"
}
autodetect_digitalocean_body() {
@ -416,7 +416,7 @@ autodetect_digitalocean_body() {
EOT
atf_check \
-o match:"digitalocean" \
sh -c ". \"$lib\"; echo \$CLOUD"
sh -e -c ". \"$lib\"; echo \$CLOUD"
}
autodetect_gcp_body() {
@ -426,7 +426,7 @@ autodetect_gcp_body() {
EOT
atf_check \
-o match:"gcp" \
sh -c ". \"$lib\"; echo \$CLOUD"
sh -e -c ". \"$lib\"; echo \$CLOUD"
}
autodetect_hetzner_body() {
@ -436,7 +436,7 @@ autodetect_hetzner_body() {
EOT
atf_check \
-o match:"hetzner" \
sh -c ". \"$lib\"; echo \$CLOUD"
sh -e -c ". \"$lib\"; echo \$CLOUD"
}
autodetect_incus_body() {
@ -444,7 +444,7 @@ autodetect_incus_body() {
touch dev/incus/sock
atf_check \
-o match:"incus" \
sh -c ". \"$lib\"; echo \$CLOUD"
sh -e -c ". \"$lib\"; echo \$CLOUD"
}
autodetect_nocloud_cmdline_body() {
@ -452,7 +452,7 @@ autodetect_nocloud_cmdline_body() {
echo "quiet ds=nocloud;s=https://10.42.42.42/ console=ttyS0" > proc/cmdline
atf_check \
-o match:"nocloud" \
sh -c ". \"$lib\"; echo \$CLOUD"
sh -e -c ". \"$lib\"; echo \$CLOUD"
}
autodetect_nocloud_dmi_body() {
@ -460,7 +460,7 @@ autodetect_nocloud_dmi_body() {
echo "ds=nocloud;s=https://10.42.42.42/" > sys/class/dmi/id/product_serial
atf_check \
-o match:"nocloud" \
sh -c ". \"$lib\"; echo \$CLOUD"
sh -e -c ". \"$lib\"; echo \$CLOUD"
}
autodetect_nocloud_volume_body() {
@ -475,7 +475,7 @@ autodetect_nocloud_volume_body() {
atf_check \
-o match:"nocloud" \
sh -c ". \"$lib\"; echo \$CLOUD"
sh -e -c ". \"$lib\"; echo \$CLOUD"
}
autodetect_oci_body() {
@ -483,7 +483,7 @@ autodetect_oci_body() {
echo OracleCloud.com > sys/class/dmi/id/chassis_asset_tag
atf_check \
-o match:"oci" \
sh -c ". \"$lib\"; echo \$CLOUD"
sh -e -c ". \"$lib\"; echo \$CLOUD"
}
autodetect_scaleway_cmdline_body() {
@ -491,7 +491,7 @@ autodetect_scaleway_cmdline_body() {
echo "quiet ds=scaleway console=ttyS0" > proc/cmdline
atf_check \
-o match:"scaleway" \
sh -c ". \"$lib\"; echo \$CLOUD"
sh -e -c ". \"$lib\"; echo \$CLOUD"
}
autodetect_scaleway_body() {
@ -501,5 +501,5 @@ autodetect_scaleway_body() {
EOT
atf_check \
-o match:"scaleway" \
sh -c ". \"$lib\"; echo \$CLOUD"
sh -e -c ". \"$lib\"; echo \$CLOUD"
}