blob: ee64229c14854d8eb9c79e4f6e5da7b70c32d09e [file] [log] [blame]
#!/bin/bash
#
# Copyright (C) 2020 The Android Open Source Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
# This script generates some sample payloads from the images in
# sample_images.tar.bz2. and packages them in the sample_payloads.tar.xz file.
# The payloads are then used in paycheck_unittests.py. The file names
# must match the ones used in update_payload ebuild and paycheck_unittests.py.
set -e
TEMP_IMG_DIR=./sample_images
OLD_KERNEL="${TEMP_IMG_DIR}/disk_ext2_4k_empty.img"
OLD_ROOT="${TEMP_IMG_DIR}/disk_sqfs_empty.img"
NEW_KERNEL="${TEMP_IMG_DIR}/disk_ext2_4k.img"
NEW_ROOT="${TEMP_IMG_DIR}/disk_sqfs_default.img"
mkdir -p "${TEMP_IMG_DIR}"
tar -xvf sample_images.tar.bz2 -C "${TEMP_IMG_DIR}"
echo "Generating full payload"
delta_generator --out_file=full_payload.bin \
--partition_names=kernel:root \
--new_partitions="${NEW_KERNEL}":"${NEW_ROOT}"
echo "Generating delta payload"
delta_generator --out_file=delta_payload.bin \
--partition_names=kernel:root \
--new_partitions="${NEW_KERNEL}":"${NEW_ROOT}" \
--old_partitions="${OLD_KERNEL}":"${OLD_ROOT}" --minor_version=6
echo "Creating sample_payloads.tar"
tar -cJf sample_payloads.tar.xz {delta,full}_payload.bin
rm -rf "${TEMP_IMG_DIR}" {delta,full}_payload.bin
echo "Done"