- job: name: 96boards-reference-debian-installer project-type: freestyle defaults: global logrotate: daysToKeep: 30 numToKeep: 30 properties: - authorization: anonymous: - job-read - job-extended-read - job-workspace linaro: - job-read - job-extended-read - job-build - job-cancel disabled: false node: docker-jessie-arm64 display-name: 'Reference Platform - Debian Installer' wrappers: - timestamps - build-name: name: '#${BUILD_NUMBER}' builders: - linaro-publish-token: host: builds.96boards.org - shell: | #!/bin/bash set -ex echo "deb http://repo.linaro.org/ubuntu/linaro-overlay jessie main" > local.list sudo cp local.list /etc/apt/sources.list.d/ sudo apt-get update sudo apt-get install -y debian-archive-keyring gnupg dctrl-tools bc debiandoc-sgml xsltproc libbogl-dev glibc-pic libslang2-pic libnewt-pic genext2fs e2fsprogs mklibs genisoimage dosfstools sudo apt-get install -y grub-efi-arm64-bin mtools module-init-tools openssl xorriso bf-utf-source docbook-xml docbook-xsl cpio # Find kernel abi KERNEL_ABI=`apt-cache show linux-image-reference-arm64 | grep -m 1 Depends | sed -e "s/.*linux-image-//g" -e "s/-arm64//g"` # Build the installer DEB_INSTALLER_VERSION="20150422+deb8u4" dget http://ftp.us.debian.org/debian/pool/main/d/debian-installer/debian-installer_${DEB_INSTALLER_VERSION}.dsc cd debian-installer-* ## https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=810654, so lava can use grub to load grub.cfg from the local disk sed -i 's/fshelp|//g' build/util/grub-cpmodules # Config changes cd build sed -i "s/LINUX_KERNEL_ABI.*/LINUX_KERNEL_ABI = $KERNEL_ABI/g" config/common sed -i "s/PRESEED.*/PRESEED = default-preseed/g" config/common sed -i "s/USE_UDEBS_FROM.*/USE_UDEBS_FROM = jessie/g" config/common # Local pkg-list (to include all udebs) cat < pkg-lists/local ext4-modules-\${kernel:Version} fat-modules-\${kernel:Version} btrfs-modules-\${kernel:Version} md-modules-\${kernel:Version} efi-modules-\${kernel:Version} scsi-modules-\${kernel:Version} scsi-extra-modules-\${kernel:Version} jfs-modules-\${kernel:Version} xfs-modules-\${kernel:Version} ata-modules-\${kernel:Version} sata-modules-\${kernel:Version} usb-storage-modules-\${kernel:Version} EOF # Set up local repo cat < sources.list.udeb deb [trusted=yes] http://repo.linaro.org/ubuntu/linaro-overlay jessie main/debian-installer deb http://httpredir.debian.org/debian jessie main/debian-installer EOF # Default preseed to add the overlay and kernel cat < default-preseed # Continue install on "no kernel modules were found for this kernel" d-i anna/no_kernel_modules boolean true # Continue install on "no installable kernels found" d-i base-installer/kernel/skip-install boolean true d-i base-installer/kernel/no-kernels-found boolean true # Adding security, updates and backports by default d-i apt-setup/services-select multiselect security, updates, backports # Adding linaro-overlay by default, so it can find the kernel and extra packages d-i apt-setup/local0/repository string http://repo.linaro.org/ubuntu/linaro-overlay jessie main d-i apt-setup/local0/comment string Linaro Overlay d-i apt-setup/local0/source boolean true d-i apt-setup/local0/key string http://repo.linaro.org/ubuntu/linarorepo.key d-i pkgsel/upgrade select full-upgrade d-i preseed/late_command string in-target apt-get install -y linux-image-reference-arm64 EOF fakeroot make build_netboot cd ../.. cp debian-installer-*/build/dest/netboot/mini.iso . cp debian-installer-*/build/dest/netboot/netboot.tar.gz . # Final preparation for publishing mkdir out cp -a mini.iso netboot.tar.gz out/ cd out; tar -zxvf netboot.tar.gz; cd .. # Create MD5SUMS file (cd out && find -type f -exec md5sum {} \; | sed "s/ \.\// /g" > MD5SUMS.txt) # Build information KERNEL_VERSION=`grep -a "Linux version" out/debian-installer/arm64/linux` cat > out/HEADER.textile << EOF h4. Reference Platform - Debian Installer Debian Installer (Jessie) produced with the Reference Platform Kernel package. Check "https://github.com/96boards/documentation/wiki/Installing-Debian-Jessie":https://github.com/96boards/documentation/wiki/Installing-Debian-Jessie for the install instructions. Build Description: * Build URL: "$BUILD_URL":$BUILD_URL * Debian Installer version: $DEB_INSTALLER_VERSION * Kernel: $KERNEL_VERSION EOF # 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/components/debian-installer/${BUILD_NUMBER}/ publishers: - email: recipients: 'fathi.boudra@linaro.org ricardo.salveti@linaro.org'