aboutsummaryrefslogtreecommitdiff
path: root/96boards-reference-platform-hikey-sd-installer
diff options
context:
space:
mode:
authorRiku Voipio <riku.voipio@linaro.org>2016-07-01 15:20:20 +0300
committerFathi Boudra <fathi.boudra@linaro.org>2016-09-01 09:43:16 +0000
commitcf2a355e835bdd25b34b4ffbe0e1d00c7349eba4 (patch)
tree21d6986d7efc10cc58b6b6ffb5d9202b1cd7a8e2 /96boards-reference-platform-hikey-sd-installer
parentc4ba9a008a6de4ffd620a9cdc34b2330e456e501 (diff)
96boards-reference-platform-hikey-sd-installer: new job
Builds SD card image for booting installer in HiKey, implements BB-311 Change-Id: I655c122e29a8cfe1c9fb7edf2fd421644bf9836e Signed-off-by: Riku Voipio <riku.voipio@linaro.org>
Diffstat (limited to '96boards-reference-platform-hikey-sd-installer')
-rw-r--r--96boards-reference-platform-hikey-sd-installer/builders.sh94
1 files changed, 94 insertions, 0 deletions
diff --git a/96boards-reference-platform-hikey-sd-installer/builders.sh b/96boards-reference-platform-hikey-sd-installer/builders.sh
new file mode 100644
index 0000000000..6a63026f2b
--- /dev/null
+++ b/96boards-reference-platform-hikey-sd-installer/builders.sh
@@ -0,0 +1,94 @@
+#!/bin/bash
+
+set -ex
+
+trap cleanup_exit INT TERM EXIT
+
+cleanup_exit()
+{
+ sudo umount bootfs || true
+ sudo umount rootfs || true
+ sudo kpartx -dv hikey-sd-install.img || true
+ rm -rf hikey-sd-install.img out
+}
+
+sudo apt-get update
+sudo apt-get install -y --no-install-recommends parted kpartx pigz
+
+# Get installer rootfs
+export ROOTFS_BUILD_TIMESTAMP=$(wget -q -O - https://ci.linaro.org/job/debian-arm64-rootfs/label=docker-jessie-arm64,rootfs=installer/lastSuccessfulBuild/buildTimestamp?format=yyyyMMdd)
+export ROOTFS_BUILD_NUMBER=$(wget -q -O - https://ci.linaro.org/job/debian-arm64-rootfs/label=docker-jessie-arm64,rootfs=installer/lastSuccessfulBuild/buildNumber)
+export ROOTFS_BUILD_URL="http://snapshots.linaro.org/debian/images/installer-arm64/${ROOTFS_BUILD_NUMBER}/linaro-jessie-installer-${ROOTFS_BUILD_TIMESTAMP}-${ROOTFS_BUILD_NUMBER}.tar.gz"
+wget -nc --progress=dot -e dotbytes=2M ${ROOTFS_BUILD_URL}
+
+mkdir -p out bootfs rootfs
+
+# Build information
+cat > out/HEADER.textile << EOF
+
+h4. Reference Platform Build - Installer for HiKey
+
+Build description:
+ * Build URL: "${BUILD_URL}":${BUILD_URL}
+ * installer Rootfs: "${ROOTFS_BUILD_URL}":${ROOTFS_BUILD_URL}
+EOF
+
+# set up partitions
+dd if=/dev/zero of=hikey-sd-install.img bs=2096 seek=1M count=0
+/sbin/parted --script hikey-sd-install.img mklabel msdos
+/sbin/parted --script hikey-sd-install.img mkpart p fat16 0 50
+/sbin/parted --script hikey-sd-install.img set 1 boot
+/sbin/parted --script -- hikey-sd-install.img mkpart p ext4 50 -0
+
+for device in $(sudo kpartx -avs hikey-sd-install.img | cut -d' ' -f3); do
+ partition=$(echo ${device} | cut -d'p' -f3)
+ case "${partition}" in
+ 1)
+ sudo mkfs.fat -F16 /dev/mapper/${device}
+ sudo mount /dev/mapper/${device} bootfs
+ ;;
+ 2)
+ sudo mkfs.ext4 /dev/mapper/${device}
+ sudo mount /dev/mapper/${device} rootfs
+ sudo tar xf linaro-jessie-installer-${ROOTFS_BUILD_TIMESTAMP}-${ROOTFS_BUILD_NUMBER}.tar.gz -C rootfs --strip-components=1
+ ;;
+ esac
+done
+
+sudo mkdir -p rootfs/mnt/debian rootfs/boot/efi/EFI/BOOT
+sudo chroot rootfs /usr/sbin/grub-install-hikey -s
+sudo cp -a rootfs/boot/efi/* bootfs/
+sudo chown ${USER}:${USER} rootfs/mnt/debian
+
+# download alip image for flash
+export ROOTFS_BUILD_TIMESTAMP=$(wget -q -O - https://ci.linaro.org/job/96boards-reference-platform-debian/BOARD=hikey,label=docker-jessie-amd64/lastSuccessfulBuild/buildTimestamp?format=yyyyMMdd)
+export ROOTFS_BUILD_NUMBER=$(wget -q -O - https://ci.linaro.org/job/96boards-reference-platform-debian/BOARD=hikey,label=docker-jessie-amd64/lastSuccessfulBuild/buildNumber)
+export TARGET_ROOT_URL="https://builds.96boards.org/snapshots/reference-platform/debian/${ROOTFS_BUILD_NUMBER}/hikey/hikey-rootfs-debian-jessie-alip-${ROOTFS_BUILD_TIMESTAMP}-${ROOTFS_BUILD_NUMBER}.emmc.img.gz"
+export TARGET_BOOT_URL="https://builds.96boards.org/snapshots/reference-platform/debian/${ROOTFS_BUILD_NUMBER}/hikey/hikey-boot-linux-${ROOTFS_BUILD_TIMESTAMP}-${ROOTFS_BUILD_NUMBER}.uefi.img.gz"
+wget -nc --progress=dot -e dotbytes=2M -O rootfs/mnt/debian/rootfs.img.gz ${TARGET_ROOT_URL}
+wget -nc --progress=dot -e dotbytes=2M -O rootfs/mnt/debian/boot.img.gz ${TARGET_BOOT_URL}
+
+sudo cp -a rootfs/usr/share/96boards-tools/flash-hikey rootfs/mnt/flash
+
+cat << EOF > rootfs/mnt/debian/os.json
+{
+ "name": "Reference platform Debian Desktop for hikey - Build ${BUILD_NUMBER}",
+ "url": "http://builds.96boards.org/releases/installer/hikey",
+ "version": "${ROOTFS_BUILD_NUMBER}",
+ "release_date": "$(date +%Y-%m-%d)",
+ "description": "Reference platform Debian LXDE desktop for hikey"
+}
+EOF
+
+sudo umount bootfs rootfs
+sudo kpartx -dv hikey-sd-install.img
+time pigz -9 hikey-sd-install.img
+mv hikey-sd-install.img.gz out/hikey-sd-installer-${BUILD_NUMBER}.img.gz
+
+# Publish
+test -d ${HOME}/bin || mkdir ${HOME}/bin
+wget -q https://git.linaro.org/ci/publishing-api.git/blob_plain/HEAD:/linaro-cp.py -O ${HOME}/bin/linaro-cp.py
+time python ${HOME}/bin/linaro-cp.py \
+ --server ${PUBLISH_SERVER} \
+ --link-latest \
+ out/ snapshots/reference-platform/installer/hikey/${BUILD_NUMBER}/