| #!/bin/bash |
| # |
| # Copyright (c) 2013 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. |
| USAGE="Usage: deploy_private_test.sh -a PATH_TO_PUBLIC_AUTOTEST \ |
| -p PATH_TO_PRIVATE_AUTOTEST" |
| HELP="${USAGE} |
| Link server side tests under PATH_TO_PRIVATE_AUTOTEST \ |
| to PATH_TO_PUBLIC_AUTOTEST |
| |
| PATH_TO_PRIVATE_AUTOTEST defaults to \ |
| /usr/local/autotest/site_utils/autotest_private |
| PATH_TO_PUBLIC_AUTOTEST defaults to \ |
| /usr/local/autotest" |
| |
| AUTOTEST_ROOT="/usr/local/autotest" |
| PRIVATE_AUTOTEST_ROOT="${AUTOTEST_ROOT}/site_utils/autotest_private" |
| |
| while getopts ":p:a:h" opt; do |
| case $opt in |
| a) |
| AUTOTEST_ROOT=$OPTARG |
| ;; |
| p) |
| PRIVATE_AUTOTEST_ROOT=$OPTARG |
| ;; |
| h) |
| echo "${HELP}" >&2 |
| exit 0 |
| ;; |
| \?) |
| echo "Invalid option: -$OPTARG" >&2 |
| echo "${USAGE}" >&2 |
| exit 1 |
| ;; |
| esac |
| done |
| |
| if [ ! -d "${AUTOTEST_ROOT}" ]; then |
| echo "Invalid public autotest root: ${AUTOTEST_ROOT}" >&2 |
| exit 1 |
| fi |
| |
| if [ ! -d "${PRIVATE_AUTOTEST_ROOT}" ]; then |
| echo "Invalid private autotest root: ${PRIVATE_AUTOTEST_ROOT}" >&2 |
| exit 1 |
| fi |
| |
| PUBLIC_SERVER_TESTS_DIR="${AUTOTEST_ROOT}/server/site_tests" |
| PUBLIC_SERVER_SUITES_DIR="${PUBLIC_SERVER_TESTS_DIR}/suites" |
| PUBLIC_CLIENT_TESTS_DIR="${AUTOTEST_ROOT}/client/site_tests" |
| |
| PRIVATE_SERVER_TESTS_DIR="${PRIVATE_AUTOTEST_ROOT}/server/site_tests" |
| PRIVATE_SERVER_SUITES_DIR="${PRIVATE_SERVER_TESTS_DIR}/suites" |
| PRIVATE_CLIENT_TESTS_DIR="${PRIVATE_AUTOTEST_ROOT}/client/site_tests" |
| |
| echo "Removing existing symbolic links in ${PUBLIC_SERVER_TESTS_DIR}, \ |
| ${PUBLIC_CLIENT_TESTS_DIR} and ${PUBLIC_SERVER_SUITES_DIR}" |
| find ${PUBLIC_SERVER_TESTS_DIR} -type l -exec rm -v {} \; |
| find ${PUBLIC_CLIENT_TESTS_DIR} -type l -exec rm -v {} \; |
| find ${PUBLIC_SERVER_SUITES_DIR} -type l -exec rm -v {} \; |
| echo "Creating links for tests..." |
| find ${PRIVATE_SERVER_TESTS_DIR} -mindepth 1 -maxdepth 1 \ |
| -type d ! -path ${PRIVATE_SERVER_SUITES_DIR} \ |
| -exec ln -v -s {} ${PUBLIC_SERVER_TESTS_DIR} \; |
| find ${PRIVATE_CLIENT_TESTS_DIR} -mindepth 1 -maxdepth 1 \ |
| -type d ! -path ${PRIVATE_SERVER_SUITES_DIR} \ |
| -exec ln -v -s {} ${PUBLIC_CLIENT_TESTS_DIR} \; |
| echo "Creating links for suites..." |
| find ${PRIVATE_SERVER_SUITES_DIR} -mindepth 1 -maxdepth 1 -type f \ |
| -exec ln -v -s {} ${PUBLIC_SERVER_SUITES_DIR} \; |