use scons cache by default (#21102)

* always use scons cache

* cleanup
old-commit-hash: a0dabd94e9
commatwo_master
Adeeb Shihadeh 4 years ago committed by GitHub
parent 387d5b88a0
commit fb62002e92
  1. 2
      .github/workflows/selfdrive_tests.yaml
  2. 4
      Jenkinsfile
  3. 11
      SConstruct
  4. 2
      release/build_release2.sh
  5. 2
      release/build_release3.sh
  6. 1
      selfdrive/manager/build.py

@ -15,7 +15,7 @@ env:
docker pull $DOCKER_REGISTRY/$BASE_IMAGE:latest || true docker pull $DOCKER_REGISTRY/$BASE_IMAGE:latest || true
docker build --cache-from $DOCKER_REGISTRY/$BASE_IMAGE:latest -t $DOCKER_REGISTRY/$BASE_IMAGE:latest -t $BASE_IMAGE:latest -f Dockerfile.openpilot_base . docker build --cache-from $DOCKER_REGISTRY/$BASE_IMAGE:latest -t $DOCKER_REGISTRY/$BASE_IMAGE:latest -t $BASE_IMAGE:latest -f Dockerfile.openpilot_base .
RUN: docker run --shm-size 1G -v $PWD:/tmp/openpilot -w /tmp/openpilot -e PYTHONPATH=/tmp/openpilot -e SCONS_CACHE=1 -e GITHUB_ACTION -e GITHUB_REF -e GITHUB_HEAD_REF -e GITHUB_SHA -e GITHUB_REPOSITORY -e GITHUB_RUN_ID -v /tmp/scons_cache:/tmp/scons_cache -v /tmp/comma_download_cache:/tmp/comma_download_cache $BASE_IMAGE /bin/sh -c RUN: docker run --shm-size 1G -v $PWD:/tmp/openpilot -w /tmp/openpilot -e PYTHONPATH=/tmp/openpilot -e GITHUB_ACTION -e GITHUB_REF -e GITHUB_HEAD_REF -e GITHUB_SHA -e GITHUB_REPOSITORY -e GITHUB_RUN_ID -v /tmp/scons_cache:/tmp/scons_cache -v /tmp/comma_download_cache:/tmp/comma_download_cache $BASE_IMAGE /bin/sh -c
UNIT_TEST: coverage run --append -m unittest discover UNIT_TEST: coverage run --append -m unittest discover
jobs: jobs:

4
Jenkinsfile vendored

@ -127,7 +127,7 @@ pipeline {
stage('Devel Tests') { stage('Devel Tests') {
steps { steps {
phone_steps("eon-build", [ phone_steps("eon-build", [
["build devel", "cd release && SCONS_CACHE=1 DEVEL_TEST=1 ./build_devel.sh"], ["build devel", "cd release && DEVEL_TEST=1 ./build_devel.sh"],
["test manager", "python selfdrive/manager/test/test_manager.py"], ["test manager", "python selfdrive/manager/test/test_manager.py"],
["onroad tests", "cd selfdrive/test/ && ./test_onroad.py"], ["onroad tests", "cd selfdrive/test/ && ./test_onroad.py"],
["test car interfaces", "cd selfdrive/car/tests/ && ./test_car_interfaces.py"], ["test car interfaces", "cd selfdrive/car/tests/ && ./test_car_interfaces.py"],
@ -166,7 +166,7 @@ pipeline {
timeout(time: 90, unit: 'MINUTES') { timeout(time: 90, unit: 'MINUTES') {
sh script: "/home/batman/tools/zookeeper/enable_and_wait.py $device_ip 120", label: "turn on device" sh script: "/home/batman/tools/zookeeper/enable_and_wait.py $device_ip 120", label: "turn on device"
phone(device_ip, "git checkout", readFile("selfdrive/test/setup_device_ci.sh"),) phone(device_ip, "git checkout", readFile("selfdrive/test/setup_device_ci.sh"),)
phone(device_ip, "build", "SCONS_CACHE=1 scons -j4 && sync") phone(device_ip, "build", "scons -j4 && sync")
sh script: "/home/batman/tools/zookeeper/disable.py $device_ip", label: "turn off device" sh script: "/home/batman/tools/zookeeper/disable.py $device_ip", label: "turn off device"
sh script: "/home/batman/tools/zookeeper/enable_and_wait.py $device_ip 120", label: "turn on device" sh script: "/home/batman/tools/zookeeper/enable_and_wait.py $device_ip 120", label: "turn on device"
sh script: "/home/batman/tools/zookeeper/check_consumption.py 60 3", label: "idle power consumption after boot" sh script: "/home/batman/tools/zookeeper/check_consumption.py 60 3", label: "idle power consumption after boot"

@ -223,13 +223,10 @@ env = Environment(
if GetOption('compile_db'): if GetOption('compile_db'):
env.CompilationDatabase('compile_commands.json') env.CompilationDatabase('compile_commands.json')
if os.environ.get('SCONS_CACHE'): # Setup cache dir
cache_dir = '/tmp/scons_cache' cache_dir = '/data/scons_cache' if TICI else '/tmp/scons_cache'
if TICI: CacheDir(cache_dir)
cache_dir = '/data/scons_cache' Clean(["."], cache_dir)
CacheDir(cache_dir)
Clean(["."], cache_dir)
node_interval = 5 node_interval = 5
node_count = 0 node_count = 0

@ -49,7 +49,7 @@ popd
# Build stuff # Build stuff
ln -sfn /data/openpilot /data/pythonpath ln -sfn /data/openpilot /data/pythonpath
export PYTHONPATH="/data/openpilot:/data/openpilot/pyextra" export PYTHONPATH="/data/openpilot:/data/openpilot/pyextra"
SCONS_CACHE=1 scons -j3 scons -j3
# Run tests # Run tests
python selfdrive/manager/test/test_manager.py python selfdrive/manager/test/test_manager.py

@ -65,7 +65,7 @@ popd
# Build # Build
export PYTHONPATH="$BUILD_DIR" export PYTHONPATH="$BUILD_DIR"
SCONS_CACHE=1 scons -j$(nproc) scons -j$(nproc)
# Run tests # Run tests
#python selfdrive/manager/test/test_manager.py #python selfdrive/manager/test/test_manager.py

@ -25,7 +25,6 @@ PREBUILT = os.path.exists(os.path.join(BASEDIR, 'prebuilt'))
def build(spinner, dirty=False): def build(spinner, dirty=False):
env = os.environ.copy() env = os.environ.copy()
env['SCONS_PROGRESS'] = "1" env['SCONS_PROGRESS'] = "1"
env['SCONS_CACHE'] = "1"
nproc = os.cpu_count() nproc = os.cpu_count()
j_flag = "" if nproc is None else f"-j{nproc - 1}" j_flag = "" if nproc is None else f"-j{nproc - 1}"

Loading…
Cancel
Save