blob: e2e437f663e618446d90fc83fc09492e3bf254fc [file] [log] [blame]
# Copyright (c) 2011 The Chromium OS Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
# Abort on error.
set -e
# Load common constants and variables.
. "$(dirname "$0")/"
usage() {
echo "Usage $PROG image [config]"
main() {
# We want to catch all the discrepancies, not just the first one.
# So, any time we find one, we set testfail=1 and continue.
# When finished we will use testfail to determine our exit value.
local testfail=0
if [ $# -ne 1 ] && [ $# -ne 2 ]; then
exit 1
local image="$1"
# Default config location: same name/directory as this script,
# with a .config file extension, ie ensure_no_nonrelease_files.config.
local configfile="$(dirname "$0")/${0/}"
# Or, maybe a config was provided on the command line.
if [ $# -eq 2 ]; then
# Either way, load test-expectations data from config.
. "$configfile"
local rootfs=$(make_temp_dir)
mount_image_partition_ro "$image" 3 "$rootfs"
for file in ${RELEASE_FILE_BLACKLIST[@]}; do
if [ -e "$rootfs/$file" ]; then
echo "FAIL: $file exists in this image!"
ls -al "$rootfs/$file"
exit $testfail
main $@