2023-10-30 19:52:44 +00:00
|
|
|
#!/bin/bash
|
|
|
|
|
|
|
|
set -ax
|
|
|
|
|
2024-02-20 12:39:50 +00:00
|
|
|
latest_dev_series="noble"
|
|
|
|
latest_sup_series="mantic"
|
|
|
|
#all_series="bionic focal jammy ${latest_sup_series} ${latest_dev_series}"
|
|
|
|
all_series="jammy ${latest_sup_series} ${latest_dev_series}"
|
|
|
|
|
|
|
|
|
2023-10-30 19:52:44 +00:00
|
|
|
project_name="sos-testing"
|
|
|
|
project="--project ${project_name}"
|
|
|
|
lxc="lxc ${project}"
|
|
|
|
inst_name=sos-avocado01
|
|
|
|
|
|
|
|
sos_location="$HOME/gitRepos/sos"
|
|
|
|
|
|
|
|
lxc_exec="${lxc} exec"
|
|
|
|
|
|
|
|
${lxc} delete ${inst_name} --force
|
|
|
|
|
|
|
|
lxc project create ${project_name}
|
|
|
|
|
|
|
|
${lxc} profile edit default < lxd_profile.yaml
|
|
|
|
|
2024-02-20 12:39:50 +00:00
|
|
|
for distro in ${all_series}
|
2023-10-30 19:52:44 +00:00
|
|
|
do
|
|
|
|
|
2024-02-20 12:39:50 +00:00
|
|
|
${lxc} delete ${inst_name}-${distro} --force
|
2023-10-30 19:52:44 +00:00
|
|
|
|
2024-02-20 12:39:50 +00:00
|
|
|
if [[ "${distro}" == "${latest_dev_series}" ]] ; then
|
|
|
|
image="ubuntu-daily:devel"
|
|
|
|
else
|
|
|
|
image="ubuntu:${distro}"
|
|
|
|
fi
|
2023-10-30 19:52:44 +00:00
|
|
|
|
2024-02-20 12:39:50 +00:00
|
|
|
${lxc} launch ${image} ${inst_name}-${distro}
|
2023-10-30 19:52:44 +00:00
|
|
|
|
2024-02-20 12:39:50 +00:00
|
|
|
cd $sos_location
|
|
|
|
tar cfz /tmp/sos.tgz .
|
|
|
|
cd -
|
|
|
|
|
|
|
|
${lxc} file push /tmp/sos.tgz ${inst_name}-${distro}/root/sos.tgz
|
|
|
|
|
|
|
|
while true ; do
|
|
|
|
status=$(${lxc_exec} ${inst_name}-${distro} -- cloud-init status | grep status | awk '{print $2}')
|
|
|
|
[[ "${status}" == "done" ]] && break
|
|
|
|
[[ "${status}" == "error" ]] && break
|
|
|
|
sleep 3
|
|
|
|
done
|
2023-10-30 19:52:44 +00:00
|
|
|
|
2024-02-20 12:39:50 +00:00
|
|
|
${lxc_exec} ${inst_name}-${distro} -- bash /root/run_avocado.sh
|
|
|
|
${lxc} stop ${inst_name}-${distro}
|
2023-10-30 19:52:44 +00:00
|
|
|
|
|
|
|
done
|