From 61241a121ea5168e95d1eabbfdf8252077e580a0 Mon Sep 17 00:00:00 2001 From: Aaron Xiao Date: Tue, 24 Apr 2018 20:06:07 +0800 Subject: [PATCH] Scripts: Check agreement on dev_start instead of inside container. --- .travis.yml | 3 +-- docker/scripts/dev_start.sh | 27 +++++++++++++++++++++++++++ scripts/AGREEMENT.txt | 3 +-- scripts/apollo_base.sh | 25 ------------------------- 4 files changed, 29 insertions(+), 29 deletions(-) diff --git a/.travis.yml b/.travis.yml index 71f4f3e188..a85e618031 100644 --- a/.travis.yml +++ b/.travis.yml @@ -13,8 +13,7 @@ cache: - $HOME/.cache/bazel install: skip before_script: - - if [ ! -d "${HOME}/.cache" ]; then mkdir ${HOME}/.cache; fi - - cp scripts/AGREEMENT.txt ${HOME}/.cache/.apollo_agreement.txt + - cp scripts/AGREEMENT.txt ${HOME}/.apollo_agreement.txt script: - ./docker/scripts/dev_start.sh - ./apollo_docker.sh ${JOB} diff --git a/docker/scripts/dev_start.sh b/docker/scripts/dev_start.sh index 7f633907a4..54aa8c4944 100755 --- a/docker/scripts/dev_start.sh +++ b/docker/scripts/dev_start.sh @@ -24,6 +24,32 @@ VERSION_X86_64="dev-x86_64-20180419_1510" VERSION_AARCH64="dev-aarch64-20170927_1111" VERSION_OPT="" +# Check whether user has agreed license agreement +function check_agreement() { + agreement_record="${HOME}/.apollo_agreement.txt" + if [ -e "$agreement_record" ]; then + return + fi + + AGREEMENT_FILE="$APOLLO_ROOT_DIR/scripts/AGREEMENT.txt" + if [ ! -e "$AGREEMENT_FILE" ]; then + error "AGREEMENT $AGREEMENT_FILE does not exist." + exit 1 + fi + + cat $AGREEMENT_FILE + tip="Type 'y' or 'Y' to agree to the license agreement above, or type any other key to exit" + echo $tip + read -n 1 user_agreed + if [ "$user_agreed" == "y" ] || [ "$user_agreed" == "Y" ]; then + cp $AGREEMENT_FILE $agreement_record + echo "$tip" >> $agreement_record + echo "$user_agreed" >> $agreement_record + else + exit 1 + fi +} + function show_usage() { cat <> $agreement_record - echo "$tip" >> $agreement_record - echo "$user_agreed" >> $agreement_record - else - exit 0 - fi - fi -} - function check_in_docker() { if [ -f /.dockerenv ]; then APOLLO_IN_DOCKER=true - check_agreement else APOLLO_IN_DOCKER=false fi -- GitLab