#!/bin/bash

set -e

pushd git/continuous-build
ln -srf build/Makefile .
source build/setup.sh
popd

export IS_GLINUX=true
export ROOTFS_FETCH_TARBALL=false
export FETCH_PACKAGES=false
export PREBUILT_DOCKER_ROOT=${KOKORO_GFILE_DIR}

# Install haveged on the host to provide extra entropy.
sudo apt-get install -y haveged
sudo /etc/init.d/haveged start

ARCHES="armhf arm64"

for arch in ${ARCHES}
do
  USERSPACE_ARCH=${arch} m docker-rootfs_raw
done

for arch in ${ARCHES}
do
  ARTIFACTS+="${PRODUCT_OUT}/obj/ROOTFS/rootfs_${arch}.raw.img "
  ARTIFACTS+="${PRODUCT_OUT}/obj/ROOTFS/rootfs_${arch}.raw.img.sha256sum "
done

for artifact in ${ARTIFACTS}
do
  if [[ ! -f ${artifact} ]]; then
    echo "${artifact} not found!"
    exit 1
  fi
done

for artifact in ${ARTIFACTS}
do
  cp ${artifact} ${KOKORO_ARTIFACTS_DIR}
done

# For now, symlink rootfs_arm64 to rootfs.
# Remove when nothing depends on rootfs.img existing.
ln -sf rootfs_arm64.img ${KOKORO_ARTIFACTS_DIR}/rootfs.img
