openpilot is an open source driver assistance system. openpilot performs the functions of Automated Lane Centering and Adaptive Cruise Control for over 200 supported car makes and models.
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.
 
 
 
 
 
 

50 lines
1.4 KiB

#!/usr/bin/bash -e
export SOURCE_DIR="/data/openpilot_source/"
if [ -z "$GIT_COMMIT" ]; then
echo "GIT_COMMIT must be set"
exit 1
fi
if [ -z "$TEST_DIR" ]; then
echo "TEST_DIR must be set"
exit 1
fi
# setup jenkins device
if [ ! -d "$SOURCE_DIR" ]; then
# write continue.sh
CONTINUE_FILE="/data/data/com.termux/files/continue.sh"
echo "#!/usr/bin/bash" > $CONTINUE_FILE
echo "wpa_cli IFNAME=wlan0 SCAN" >> $CONTINUE_FILE
echo "sleep infinity" >> $CONTINUE_FILE
# write SSH keys
curl "https://github.com/commaci2.keys" > /data/params/d/GithubSshKeys
git clone --depth 1 https://github.com/commaai/openpilot.git "$SOURCE_DIR"
fi
# clear scons cache dirs that haven't been written to in one day
#cd /tmp && find -name 'scons_cache_*' -type d -maxdepth 1 -mtime +1 -exec rm -rf '{}' \;
# this can get really big on the CI devices
rm -rf /data/core
# set up environment
cd $SOURCE_DIR
git reset --hard
git fetch
find . -maxdepth 1 -not -path './.git' -not -name '.' -not -name '..' -exec rm -rf '{}' \;
git reset --hard $GIT_COMMIT
git checkout $GIT_COMMIT
git clean -xdf
git submodule update --init --recursive
git submodule foreach --recursive git reset --hard
git submodule foreach --recursive git clean -xdf
echo "git checkout took $SECONDS seconds"
rsync -a --delete $SOURCE_DIR $TEST_DIR
echo "$TEST_DIR synced with $GIT_COMMIT, took $SECONDS seconds"