blob: e97e06761f3a0a6dac2a92a9dcc89182d24fda83 [file] [log] [blame]
#!/bin/bash
#
# Copyright 2020 The Cobalt Authors. All Rights Reserved.
#
# 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.
#
# Driver script used to perform the setup required for all of the tests.
# Platform specific setup is delegated to the platform specific setup scripts.
if [[ ! -f "${DIR}/pprint.sh" ]]; then
echo "The script 'pprint.sh' is required"
exit 1
fi
source $DIR/pprint.sh
log "info" " [==========] Preparing to test with USE_COMPRESSED_SYSTEM_IMAGE=${USE_COMPRESSED_SYSTEM_IMAGE}."
if [[ -z ${1} ]]; then
log "error" "A loader platform must be provided"
exit 1
fi
if [[ "${1}" != "linux-x64x11" ]] && [[ "${1}" != "raspi-2" ]]; then
log "error" "The loader platform provided must be either linux-x64x11 or raspi-2"
exit 1
fi
LOADER_PLATFORM="${1}"
# List of all required scripts.
SCRIPTS=("${DIR}/shared/app_key.sh" \
"${DIR}/shared/cycle_cobalt.sh" \
"${DIR}/shared/drain_file.sh" \
"${DIR}/shared/init_logging.sh" \
"${DIR}/shared/installation_slot.sh" \
"${DIR}/shared/wait_and_watch.sh" \
# Each of the following scripts must be provided for the targeted
# platform. The script 'setup.sh' must be source'd first.
"${DIR}/${LOADER_PLATFORM}/setup.sh" \
"${DIR}/${LOADER_PLATFORM}/clean_up.sh" \
"${DIR}/${LOADER_PLATFORM}/clear_storage.sh" \
"${DIR}/${LOADER_PLATFORM}/create_file.sh" \
"${DIR}/${LOADER_PLATFORM}/delete_file.sh" \
"${DIR}/${LOADER_PLATFORM}/deploy_cobalt.sh" \
"${DIR}/${LOADER_PLATFORM}/run_command.sh" \
"${DIR}/${LOADER_PLATFORM}/start_cobalt.sh" \
"${DIR}/${LOADER_PLATFORM}/stop_cobalt.sh" \
"${DIR}/${LOADER_PLATFORM}/stop_process.sh")
for script in "${SCRIPTS[@]}"; do
if [[ ! -f "${script}" ]]; then
log "error" "The script '${script}' is required"
exit 1
fi
source $script "${DIR}/${LOADER_PLATFORM}"
done