You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

40 lines
1.1 KiB

#!/bin/bash
#
# Copyright 2014 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.
# The purpose of this script is to be able to reset an autotest instance.
# This means cleaning up the database and all log and results files.
# The main use case for this is if the master ever fails and all shards need to
# be reset.
declare -a SERVICES=("apache2" "scheduler" "host-scheduler" "shard-client"
"gs_offloader" "gs_offloader_s")
AUTOTEST_DIR=$(dirname $(dirname $0))
function service_action {
local s
for s in "${SERVICES[@]}"; do
if [[ -e "/etc/init/$s.conf" || -e "/etc/init.d/$s" ]]; then
sudo service $s $1
fi
done
}
service_action stop
${AUTOTEST_DIR}/frontend/manage.py dbshell <<END
DROP DATABASE chromeos_autotest_db;
CREATE DATABASE chromeos_autotest_db;
END
${AUTOTEST_DIR}/database/migrate.py sync -f
${AUTOTEST_DIR}/frontend/manage.py syncdb --noinput
${AUTOTEST_DIR}/frontend/manage.py syncdb --noinput
sudo rm -rf ${AUTOTEST_DIR}/results/*
sudo rm -rf ${AUTOTEST_DIR}/logs/*
service_action start