diff options
author | Maxim Uvarov <maxim.uvarov@linaro.org> | 2019-05-27 13:05:48 +0300 |
---|---|---|
committer | Fathi Boudra <fathi.boudra@linaro.org> | 2019-05-27 11:25:33 +0000 |
commit | c7d058596b827fc751fe7caf03694a3edf94cdd6 (patch) | |
tree | a3f249662b348a22d08c545f418a2a919d69a90e /ledge | |
parent | fa88e20fae98e0a1e2b294cb3f80a9948fcfd5c0 (diff) |
ledge-oe: fix submit for testing
do submit for testing in the same way as
./openembedded-lkft/builders.sh
Change-Id: I56d489f417b7d64c4f102ef87c96cad28e7d67c6
Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
Diffstat (limited to 'ledge')
-rwxr-xr-x | ledge/oe/builders.sh | 140 |
1 files changed, 138 insertions, 2 deletions
diff --git a/ledge/oe/builders.sh b/ledge/oe/builders.sh index eb5026dc..6098fcfc 100755 --- a/ledge/oe/builders.sh +++ b/ledge/oe/builders.sh @@ -48,8 +48,9 @@ chmod a+x ${HOME}/bin/repo export PATH=${HOME}/bin:${PATH} # initialize repo if not done already +export MANIFEST_URL=${MANIFEST_URL:-https://github.com/Linaro/ledge-oe-manifest.git} if [ ! -e ".repo/manifest.xml" ]; then - repo init -u https://github.com/Linaro/ledge-oe-manifest.git + repo init -u ${MANIFEST_URL} -b ${MANIFEST_BRANCH} # link to shared downloads on persistent disk # our builds config is expecting downloads and sstate-cache, here. @@ -61,7 +62,24 @@ if [ ! -e ".repo/manifest.xml" ]; then ln -s ${HOME}/srv/oe/sstate-cache-${DISTRO}-${MANIFEST_BRANCH} sstate-cache fi -repo sync --no-clone-bundle --no-tags --quiet -j$(nproc) +repo sync +cp .repo/manifest.xml source-manifest.xml +repo manifest -r -o pinned-manifest.xml +MANIFEST_COMMIT=$(cd .repo/manifests && git rev-parse --short HEAD) + +# record changes since last build, if available +BASE_URL=http://snapshots.linaro.org +if wget -q ${BASE_URL}${PUB_DEST/\/${BUILD_NUMBER}\//\/latest\/}/pinned-manifest.xml -O pinned-manifest-latest.xml; then + repo diffmanifests ${PWD}/pinned-manifest-latest.xml ${PWD}/pinned-manifest.xml > manifest-changes.txt +else + echo "latest build published does not have pinned-manifest.xml, skipping diff report" +fi + +# the setup-environment will create auto.conf and site.conf +# make sure we get rid of old config. +# let's remove the previous TMPDIR as well. +# we want to preserve build/buildhistory though. +rm -rf conf build/conf build/tmp-*glibc/ source setup-environment @@ -78,6 +96,8 @@ DEPLOY_DIR_IMAGE=$(bitbake -e | grep "^DEPLOY_DIR_IMAGE="| cut -d'=' -f2 | tr -d # Prepare files to publish rm -f ${DEPLOY_DIR_IMAGE}/*.txt find ${DEPLOY_DIR_IMAGE} -type l -delete +mv /srv/oe/{source,pinned}-manifest.xml ${DEPLOY_DIR_IMAGE} +cat ${DEPLOY_DIR_IMAGE}/pinned-manifest.xml # QEMU images are 22G remove them before uploading rm -f ${DEPLOY_DIR_IMAGE}/*.rootfs.ext4 \ @@ -86,6 +106,25 @@ rm -f ${DEPLOY_DIR_IMAGE}/*.rootfs.ext4 \ ${DEPLOY_DIR_IMAGE}/*.iso \ ${DEPLOY_DIR_IMAGE}/*.stimg +# FIXME: Sparse and converted images here, until it gets done by OE +case "${MACHINE}" in + juno) + ;; + intel-core2-32|intel-corei7-64) + for rootfs in ${DEPLOY_DIR_IMAGE}/*.hddimg; do + xz -T0 ${rootfs} + done + ;; + *) + for rootfs in ${DEPLOY_DIR_IMAGE}/*.rootfs.ext4.gz; do + pigz -d -k ${rootfs} + sudo ext2simg -v ${rootfs%.gz} ${rootfs%.ext4.gz}.img + rm -f ${rootfs%.gz} + pigz -9 ${rootfs%.ext4.gz}.img + done + ;; +esac + # Create MD5SUMS file find ${DEPLOY_DIR_IMAGE} -type f | xargs md5sum > MD5SUMS.txt sed -i "s|${DEPLOY_DIR_IMAGE}/||" MD5SUMS.txt @@ -96,3 +135,100 @@ mv MD5SUMS.txt ${DEPLOY_DIR_IMAGE} cat << EOF > ${WORKSPACE}/post_build_lava_parameters DEPLOY_DIR_IMAGE=${DEPLOY_DIR_IMAGE} EOF + +# Build information +cat > ${DEPLOY_DIR_IMAGE}/HEADER.textile << EOF + +h4. LEDGE - OpenEmbedded + +Build description: +* Build URL: "$BUILD_URL":$BUILD_URL +* Manifest URL: "${MANIFEST_URL}":${MANIFEST_URL} +* Manifest branch: ${MANIFEST_BRANCH} +* Manifest commit: "${MANIFEST_COMMIT}":${MANIFEST_URL/.git/\/commit}/${MANIFEST_COMMIT} +EOF + +if [ -e "/srv/oe/manifest-changes.txt" ]; then + # the space after pre.. tag is on purpose + cat > ${DEPLOY_DIR_IMAGE}/README.textile << EOF + +h4. Manifest changes + +pre.. +EOF + cat /srv/oe/manifest-changes.txt >> ${DEPLOY_DIR_IMAGE}/README.textile + mv /srv/oe/manifest-changes.txt ${DEPLOY_DIR_IMAGE} +fi + +GCCVERSION=$(bitbake -e | grep "^GCCVERSION="| cut -d'=' -f2 | tr -d '"') +TARGET_SYS=$(bitbake -e | grep "^TARGET_SYS="| cut -d'=' -f2 | tr -d '"') +TUNE_FEATURES=$(bitbake -e | grep "^TUNE_FEATURES="| cut -d'=' -f2 | tr -d '"') +STAGING_KERNEL_DIR=$(bitbake -e | grep "^STAGING_KERNEL_DIR="| cut -d'=' -f2 | tr -d '"') + +BOOT_IMG=$(find ${DEPLOY_DIR_IMAGE} -type f -name "boot-*-${MACHINE}-*-${BUILD_NUMBER}*.img" | sort | xargs -r basename) +KERNEL_IMG=$(find ${DEPLOY_DIR_IMAGE} -type f -name "*Image-*-${MACHINE}-*-${BUILD_NUMBER}.bin" | xargs -r basename) +ROOTFS_IMG=$(find ${DEPLOY_DIR_IMAGE} -type f -name "ledge-*-${MACHINE}-*-${BUILD_NUMBER}.rootfs.img.gz" | xargs -r basename) +ROOTFS_EXT4=$(find ${DEPLOY_DIR_IMAGE} -type f -name "ledge-*-${MACHINE}-*-${BUILD_NUMBER}.rootfs.ext4.gz" | xargs -r basename) +ROOTFS_TARXZ_IMG=$(find ${DEPLOY_DIR_IMAGE} -type f -name "ledge-*-${MACHINE}-*-${BUILD_NUMBER}.rootfs.tar.xz" | xargs -r basename) +HDD_IMG=$(find ${DEPLOY_DIR_IMAGE} -type f -name "ledge-*-${MACHINE}-*-${BUILD_NUMBER}.hddimg.xz" | xargs -r basename) +case "${MACHINE}" in + am57xx-evm) + # QEMU arm 32bit needs the zImage file, not the uImage file. + # KERNEL_IMG is not used for the real hardware itself. + KERNEL_IMG=$(find ${DEPLOY_DIR_IMAGE} -type f -name "zImage-*-${MACHINE}-*-${BUILD_NUMBER}.bin" | xargs -r basename) + ;; + juno) + DTB_IMG=$(find ${DEPLOY_DIR_IMAGE} -type f -name "*Image-*-${MACHINE}-r2-*-${BUILD_NUMBER}.dtb" | xargs -r basename) + ;; +esac + +cat > ${DEPLOY_DIR_IMAGE}/build_config.json <<EOF +{ + "kernel_repo" : "${KERNEL_REPO}", + "kernel_commit_id" : "${SRCREV_kernel}", + "make_kernelversion" : "${MAKE_KERNELVERSION}", + "kernel_branch" : "${KERNEL_BRANCH}", + "kernel_describe" : "${KERNEL_DESCRIBE}", + "kselftest_mainline_url" : "${KSELFTESTS_MAINLINE_URL}", + "kselftest_mainline_version" : "${KSELFTESTS_MAINLINE_VERSION}", + "kselftest_next_url" : "${KSELFTESTS_NEXT_URL}", + "kselftest_next_version" : "${KSELFTESTS_NEXT_VERSION}", + "ltp_url" : "${LTP_URL}", + "ltp_version" : "${LTP_VERSION}", + "ltp_revision" : "${LTP_REVISION}", + "libhugetlbfs_url" : "${LIBHUGETLBFS_URL}", + "libhugetlbfs_version" : "${LIBHUGETLBFS_VERSION}", + "libhugetlbfs_revision" : "${LIBHUGETLBFS_REVISION}", + "build_arch" : "${TUNE_FEATURES}", + "compiler" : "${TARGET_SYS} ${GCCVERSION}", + "build_location" : "${BASE_URL}/${PUB_DEST}" +} +EOF + +cat << EOF > ${WORKSPACE}/post_build_lava_parameters +DEPLOY_DIR_IMAGE=${DEPLOY_DIR_IMAGE} +BASE_URL=${BASE_URL} +BOOT_URL=${BASE_URL}/${PUB_DEST}/${BOOT_IMG} +SYSTEM_URL=${BASE_URL}/${PUB_DEST}/${ROOTFS_IMG} +KERNEL_URL=${BASE_URL}/${PUB_DEST}/${KERNEL_IMG} +DTB_URL=${BASE_URL}/${PUB_DEST}/${DTB_IMG} +RECOVERY_IMAGE_URL=${BASE_URL}/${PUB_DEST}/juno-oe-uboot.zip +NFSROOTFS_URL=${BASE_URL}/${PUB_DEST}/${ROOTFS_TARXZ_IMG} +EXT4_IMAGE_URL=${BASE_URL}/${PUB_DEST}/${ROOTFS_EXT4} +HDD_URL=${BASE_URL}/${PUB_DEST}/${HDD_IMG} +KERNEL_COMMIT=${SRCREV_kernel} +KERNEL_CONFIG_URL=${BASE_URL}/${PUB_DEST}/config +KERNEL_DEFCONFIG_URL=${BASE_URL}/${PUB_DEST}/defconfig +KSELFTESTS_MAINLINE_URL=${KSELFTESTS_MAINLINE_URL} +KSELFTESTS_MAINLINE_VERSION=${KSELFTESTS_MAINLINE_VERSION} +KSELFTESTS_NEXT_URL=${KSELFTESTS_NEXT_URL} +KSELFTESTS_NEXT_VERSION=${KSELFTESTS_NEXT_VERSION} +LTP_URL=${LTP_URL} +LTP_VERSION=${LTP_VERSION} +LTP_REVISION=${LTP_REVISION} +LIBHUGETLBFS_URL=${LIBHUGETLBFS_URL} +LIBHUGETLBFS_VERSION=${LIBHUGETLBFS_VERSION} +LIBHUGETLBFS_REVISION=${LIBHUGETLBFS_REVISION} +MAKE_KERNELVERSION=${MAKE_KERNELVERSION} +TOOLCHAIN="${TARGET_SYS} ${GCCVERSION}" +EOF |