Skip to content

Instantly share code, notes, and snippets.

@xstefen
Created September 6, 2021 11:35
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save xstefen/285276eb14094d452b0318423716decb to your computer and use it in GitHub Desktop.
Save xstefen/285276eb14094d452b0318423716decb to your computer and use it in GitHub Desktop.
#!/usr/bin/env bash
# Copyright (C) 2018-20 Akhil Narang
# SPDX-License-Identifier: GPL-3.0-only
# AOSiP upload script
# shellcheck disable=SC2086,SC2029
# SC2086: Double quote to prevent globbing and word splitting
# SC2029: Note that, unescaped, this expands on the client side.
# Edited by xstefen for DotOS 5.x
# last update: 2021-07-13
#source $HOME/.bash_functions
#function notify() {
# if [[ ! $DOT_BUILDTYPE =~ ^(Official|Gapps)$ ]]; then
# sendDotOS "$@"
# fi
#}
export TZ=UTC
VERSION="18.1"
DATE="$(date +%y%m%d)"
DEVICE="kebab"
TYPE="UNOFFICIAL"
ROM_VERSION="lineage-${VERSION}-${DATE}-${TYPE}-${DEVICE}-signed"
SIGNED_OTAPACKAGE="${ROM_VERSION}.zip"
BOOTIMAGE="${ROM_VERSION}-boot.img"
RECOVERYIMAGE="${ROM_VERSION}-recovery.img"
SIGNED_TARGET_FILES="signed-target_files.zip"
SIGNED_IMAGE_PACKAGE="${ROM_VERSION}-fastboot.zip"
OUT="./out/target/product/$DEVICE"
UPLOAD="./upload_assets"
#UPDATER_JSON="$DEVICE-$DOT_BUILDTYPE".json
mkdir -pv "$UPLOAD"
rm -rfv "$UPLOAD/*"
BACKUPTOOL="--backup=true"
if [[ $WITH_GMS == "true" ]]; then
SIGNING_FLAGS="-e GoogleCameraMGC.apk= -e CronetDynamite.apk= -e DynamiteLoader.apk= -e DynamiteModulesA.apk= -e AdsDynamite.apk= -e DynamiteModulesC.apk= -e MapsDynamite.apk= -e GoogleCertificates.apk= -e AndroidPlatformServices.apk="
BACKUPTOOL="--backup=false"
fi
echo "Signing target_files APKs"
python2 ./build/make/tools/releasetools/sign_target_files_apks -p out/host/linux-x86/ -o -d ~/.android-certs $SIGNING_FLAGS "$OUT"/obj/PACKAGING/target_files_intermediates/lineage_"$DEVICE"-target_files-eng.xstefen.zip "$UPLOAD/$SIGNED_TARGET_FILES" || exit 1
echo "Generating signed otapackage"
python2 ./build/make/tools/releasetools/ota_from_target_files -p out/host/linux-x86/ -k ~/.android-certs/releasekey "$BACKUPTOOL" "$UPLOAD/$SIGNED_TARGET_FILES" "$UPLOAD/$SIGNED_OTAPACKAGE" || exit 1
#echo "Generating signed images package"
#python2 ./build/make/tools/releasetools/img_from_target_files -p out/soong/host/linux-x86/ "$UPLOAD/$SIGNED_TARGET_FILES" "$UPLOAD/$SIGNED_IMAGE_PACKAGE" || exit 1
#echo "Extracting build.prop to get build timestamp"
#BUILD_TIMESTAMP=$(grep -oP "(?<=ro.build.date.utc=).*" "$OUT"/system/build.prop)
#echo "Generating JSON for updater"
#~/api/generate_json.py "$UPLOAD/$SIGNED_OTAPACKAGE" "$BUILD_TIMESTAMP" > "$UPDATER_JSON"
#echo "Extracting signed boot image"
#7z e "$UPLOAD/$SIGNED_TARGET_FILES" IMAGES/boot.img -so > "$UPLOAD/$BOOTIMAGE"
echo "Extracting signed recovery image"
7z e "$UPLOAD/$SIGNED_TARGET_FILES" IMAGES/recovery.img -so > "$UPLOAD/$RECOVERYIMAGE"
#echo "Generating MD5 checksums"
#md5sum "$UPLOAD/$SIGNED_OTAPACKAGE" > "$UPLOAD/$SIGNED_OTAPACKAGE".md5sum
#md5sum "$UPLOAD/$SIGNED_IMAGE_PACKAGE" > "$UPLOAD/$SIGNED_IMAGE_PACKAGE".md5sum
#rm -fv "$UPLOAD/$SIGNED_TARGET_FILES"
#scp ./"$UPLOAD"/*.* nyx:/var/www/builds/
#if [[ $AOSIP_BUILDTYPE =~ ^(CI|CI_Gapps|Quiche|Quiche_Gapps|Ravioli|Ravioli_Gapps)$ ]]; then
# ssh Illusion "rm -rfv /tmp/$BUILD_NUMBER"
# scp "$UPDATER_JSON" Illusion:/tmp/
# ssh Illusion "rclone copy /tmp/$UPDATER_JSON aosip-jenkins:; rm -fv /tmp/$UPDATER_JSON"
# FOLDER_LINK="$(ssh Illusion rclone link aosip-jenkins:"$BUILD_NUMBER")"
# export PARSE_MODE="html"
# notify "Build <a href=\"$FOLDER_LINK\">$BUILD_NUMBER</a> - $DEVICE $AOSIP_BUILDTYPE"
# notify "<a href=\"$BASE_URL/$BUILD_NUMBER/$SIGNED_OTAPACKAGE\">Direct link</a> for $DEVICE $AOSIP_BUILDTYPE"
# notify "$(./jenkins/message_testers.py "${DEVICE}")"
# if [[ -n $REPOPICK_LIST ]]; then
# notify "$(python3 ~/scripts/gerrit/parsepicks.py "${REPOPICK_LIST}")"
# fi
#elif [[ $AOSIP_BUILDTYPE =~ ^(Official|Gapps)$ ]]; then
# ssh Illusion "bash ~/scripts/aosip/release.sh $DEVICE $BUILD_NUMBER $AOSIP_BUILDTYPE"
# python3 ~/api/post_device.py "$DEVICE" "$AOSIP_BUILDTYPE"
#fi
#rm -fv "$DEVICE-$AOSIP_BUILDTYPE".json
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment