ami: support HVM images in uploaded .txt files

This commit is contained in:
Michael Marineau 2014-07-08 11:01:10 -07:00
parent 3a21cd3eb9
commit 2faa913198

View File

@ -58,7 +58,7 @@ if [[ ! -n "$VER" ]]; then
exit 1 exit 1
fi fi
declare -A AMIS declare -A AMIS HVM_AMIS
for r in "${!AKI[@]}"; do for r in "${!AKI[@]}"; do
AMI=$(ec2-describe-images --region=${r} -F name="CoreOS-$GROUP-$VER" \ AMI=$(ec2-describe-images --region=${r} -F name="CoreOS-$GROUP-$VER" \
| grep -m1 ^IMAGE \ | grep -m1 ^IMAGE \
@ -68,25 +68,38 @@ for r in "${!AKI[@]}"; do
continue continue
fi fi
AMIS[${r}]=$AMI AMIS[${r}]=$AMI
HVM=$(ec2-describe-images --region=${r} -F name="CoreOS-$GROUP-$VER-hvm" \
| grep -m1 ^IMAGE | cut -f2) || true
if [[ -z "$HVM" ]]; then
echo "$0: Cannot find ${r} AMI for CoreOS $GROUP $VER (HVM)" >&2
exit 1
fi
HVM_AMIS[${r}]=$HVM
done done
OUT= upload_file() {
local name="$1"
local content="$2"
url="$GS_URL/$GROUP/boards/$BOARD/$VER/${IMAGE}_${name}.txt"
gsutil cp - "$url" <<<"$content"
echo "OK, ${url}=${content}"
}
for r in "${!AMIS[@]}"; do for r in "${!AMIS[@]}"; do
url="$GS_URL/$GROUP/boards/$BOARD/$VER/${IMAGE}_${r}.txt" upload_file "$r" "${AMIS[$r]}"
tmp=$(mktemp --suffix=.txt) upload_file "pv_$r" "${AMIS[$r]}"
trap "rm -f '$tmp'" EXIT
echo "${AMIS[$r]}" > "$tmp"
gsutil cp "$tmp" "$url"
echo "OK, $r ${AMIS[$r]}, $url"
if [[ -z "$OUT" ]]; then
OUT="${r}=${AMIS[$r]}"
else
OUT="${OUT}|${r}=${AMIS[$r]}"
fi
done done
url="$GS_URL/$GROUP/boards/$BOARD/$VER/${IMAGE}_all.txt" for r in "${!HVM_AMIS[@]}"; do
tmp=$(mktemp --suffix=.txt) upload_file "hvm_$r" "${HVM_AMIS[$r]}"
trap "rm -f '$tmp'" EXIT done
echo "$OUT" > "$tmp"
gsutil cp "$tmp" "$url" ofs="$IFS"
echo "OK, all, $url" IFS="|$IFS"
PV_ALL="${AMIS[*]}"
HVM_ALL="${HVM_AMIS[*]}"
IFS="$ofs"
upload_file "all" "${PV_ALL}"
upload_file "pv" "${PV_ALL}"
upload_file "hvm" "${HVM_ALL}"
echo "Done"