#!/bin/sh set -eu set -x # AST2400 PALMETTO_MTD_URL='https://jenkins.openbmc.org/job/ci-openbmc/distro=ubuntu,label=docker-builder,target=palmetto/lastStableBuild/artifact/openbmc/build/tmp/deploy/images/palmetto/obmc-phosphor-image-palmetto.static.mtd' PALMETTO_MTD="$(basename "$PALMETTO_MTD_URL")" # AST2500 WITHERSPOON_MTD_URL='https://jenkins.openbmc.org/job/ci-openbmc/distro=ubuntu,label=docker-builder,target=witherspoon/lastStableBuild/artifact/openbmc/build/tmp/deploy/images/witherspoon/obmc-phosphor-image-witherspoon.ubi.mtd' WITHERSPOON_MTD="$(basename "$WITHERSPOON_MTD_URL")" # AST2600 TACOMA_WIC_XZ_URL='https://jenkins.openbmc.org/job/ci-openbmc/distro=ubuntu,label=docker-builder,target=witherspoon-tacoma/lastStableBuild/artifact/openbmc/build/tmp/deploy/images/witherspoon-tacoma/obmc-phosphor-image-witherspoon-tacoma.wic.xz' TACOMA_WIC_XZ="$(basename "$TACOMA_WIC_XZ_URL")" TACOMA_MMC="$(basename "$TACOMA_WIC_XZ_URL" .xz)" TACOMA_FITIMAGE_URL='https://jenkins.openbmc.org/job/ci-openbmc/distro=ubuntu,label=docker-builder,target=witherspoon-tacoma/lastStableBuild/artifact/openbmc/build/tmp/deploy/images/witherspoon-tacoma/fitImage-obmc-phosphor-initramfs-witherspoon-tacoma-witherspoon-tacoma' TACOMA_FITIMAGE="$(basename "$TACOMA_FITIMAGE_URL")" TACOMA_KERNEL=$(mktemp --suffix .kernel) TACOMA_DTB=$(mktemp --suffix .dtb) TACOMA_INITRD=$(mktemp --suffix .initrd) cleanup() { rm -f $PALMETTO_MTD rm -f $WITHERSPOON_MTD rm -f $TACOMA_WIC_XZ $TACOMA_MMC rm -f $TACOMA_FITIMAGE rm -f $TACOMA_KERNEL $TACOMA_DTB $TACOMA_INITRD } trap cleanup EXIT 2 # AST2400 wget "$PALMETTO_MTD_URL" expect \ -c "spawn qemu-system-arm \ -M palmetto-bmc \ -drive file=${PALMETTO_MTD},if=mtd,format=raw \ -nographic \ -net nic \ -net user,hostfwd=:127.0.0.1:2222-:22,hostfwd=:127.0.0.1:2443-:443,hostname=qemu" \ -c 'set timeout 120' \ -c 'expect timeout { exit 1 } "login:"' \ -c 'spawn sshpass -p 0penBmc \ ssh -o UserKnownHostsFile=/dev/null \ -o StrictHostKeyChecking=no \ -p2222 \ root@localhost \ journalctl -b' \ -c 'expect -i $spawn_id eof' # AST2500 wget "$WITHERSPOON_MTD_URL" expect \ -c "spawn qemu-system-arm \ -M witherspoon-bmc \ -drive file=${WITHERSPOON_MTD},if=mtd,format=raw \ -nographic \ -net nic \ -net user,hostfwd=:127.0.0.1:2222-:22,hostfwd=:127.0.0.1:2443-:443,hostname=qemu" \ -c 'set timeout 120' \ -c 'expect timeout { exit 1 } "login:"' \ -c 'spawn sshpass -p 0penBmc \ ssh -o UserKnownHostsFile=/dev/null \ -o StrictHostKeyChecking=no \ -p2222 \ root@localhost \ journalctl -b' \ -c 'expect -i $spawn_id eof' # AST2600 wget "$TACOMA_WIC_XZ_URL" unxz $TACOMA_WIC_XZ truncate -s 16G $TACOMA_MMC wget $TACOMA_FITIMAGE_URL dumpimage -T flat_dt -p 0 -o $TACOMA_KERNEL $TACOMA_FITIMAGE dumpimage -T flat_dt -p 1 -o $TACOMA_DTB $TACOMA_FITIMAGE dumpimage -T flat_dt -p 2 -o $TACOMA_INITRD $TACOMA_FITIMAGE expect \ -c "spawn qemu-system-arm -M tacoma-bmc \ -kernel $TACOMA_KERNEL \ -dtb $TACOMA_DTB \ -initrd $TACOMA_INITRD \ -drive file=${TACOMA_MMC},if=sd,format=raw,index=2 \ -net nic \ -net user,hostfwd=:127.0.0.1:2222-:22,hostfwd=:127.0.0.1:2443-:443,hostname=qemu \ -nographic \ -append \"console=ttyS4,115200n8 rootwait root=PARTLABEL=rofs-a\"" \ -c 'set timeout 120' \ -c 'expect timeout { exit 1 } "login:"' \ -c 'spawn sshpass -p 0penBmc \ ssh -o UserKnownHostsFile=/dev/null \ -o StrictHostKeyChecking=no \ -p2222 \ root@localhost \ journalctl -b' \ -c 'expect -i $spawn_id eof'