Commit Graph

251 Commits

Author SHA1 Message Date
Justin Newberry
839e72de70 CI: use pytest for unittesting (#29709)
* switch to pytest

* static analysis

* fix the helpers

* static analysis

* remove that

* more parallel test

* cleanup

* static analysis

* durations min and tolerance

* reduce those iterations

* sleep time could be decreased too

* in case it's negative

* try using caching

* remove parallelization for first PR

* PR Cleanup

* reduce diff

* fix that

* bump panda
old-commit-hash: ca435d344714f08276f9f9da5039f730987f31fa
2023-09-04 11:54:35 -07:00
Adeeb Shihadeh
0107dfb391 don't rerun those here
old-commit-hash: 75081b2e54134527735b1b5a7b000f452d180093
2023-08-31 18:34:20 -07:00
Adeeb Shihadeh
fbfc0e460d CI: weekly poetry lock (#29738)
* CI: weekly poetry lock

* add that back

* title

* cleanup
old-commit-hash: afd35bf7ecf68c2220390f1bb4cbbfbcd81eb00a
2023-08-31 14:27:59 -07:00
Justin Newberry
47eb055283 CI: fix proc replay download cache permissions (#29636)
chmod that
old-commit-hash: ab05bff07ded3d3cd932c59beaaa75c698195692
2023-08-27 09:45:16 -07:00
Adeeb Shihadeh
68dd600872 CI: use buildjet for process replay (#29277)
* squash for pr

* backoff to 4vcpu

* review suggestions

* simplify

---------

Co-authored-by: Justin Newberry <jnewberry0502@gmail.com>
Co-authored-by: Justin Newberry <justin@comma.ai>
old-commit-hash: d35beffbcec1524ff4c4096079208b109fede3f0
2023-08-25 18:50:21 -07:00
Justin Newberry
643a13f27e CI: use local scons cache instead of building a separate image (#29634)
* use local

* added ci_sim

* revert scons

* dont need these anymore

* same for sim

* fix dockerfiles
old-commit-hash: c46965fc27ecfe76e02affca2aacbe410a55196a
2023-08-25 16:06:17 -07:00
Dean Lee
00f900e8c4 common/tests: combine multiple test binaries into one (#29623)
old-commit-hash: 2709cd6538363e439b3de39a9f4df05619dfbaa0
2023-08-25 10:35:39 -07:00
Justin Newberry
e128aedc63 CI: move cache dir to workspace directory (#29622)
* comma dir

* mkdir

* fix issues

* test

* fix that

* fix

* do the other ones too

* missed that

* fix

* fix pr comments by moving into two different directories

* fix location

* fix that

* only change current

* fix
old-commit-hash: c0b9458a45f208c9773f859169a7de56d19b1bec
2023-08-25 01:41:04 -07:00
Adeeb Shihadeh
06aea7d935 CI: remove redundant apt installs (#29617)
* CI: remove redundant apt installs

* split build and test

* faster build
old-commit-hash: 36cc41f619a50e21b90171bab1eedf1f15dd61a9
2023-08-24 17:32:15 -07:00
Adeeb Shihadeh
8f9dcca26a CI: workaround syntax error in azure lib (#29618)
old-commit-hash: e8638280518938e7029c576be421e7fc35ddc695
2023-08-24 17:18:11 -07:00
Justin Newberry
4063a92683 CI: use GITHUB_ENV for env variables (#29616)
export doesn't work across steps
old-commit-hash: 90cb417caa049261797449d7e75eea01093e073d
2023-08-24 17:03:25 -07:00
Justin Newberry
630b440536 CI: fix docker push (#29614)
* fix those

* fix docker push too

* dont need that twice
old-commit-hash: ede9f2cda5500d9e094e89a32518c88b56c3335b
2023-08-24 16:30:33 -07:00
Justin Newberry
6847f819d1 CI: use scripts for docker build (#29599)
* use scripts

* remove common

* do login in the workflow

* separate step

* cleanup

* one script is cleaner

* keep it consistent

* review suggestions

* move in ci too

* PR cleanup
old-commit-hash: 3d9f238bf9a1f27c5a9a44df1b0f116182829be0
2023-08-24 16:09:08 -07:00
Adeeb Shihadeh
61cf541322 Minimal build (#29600)
* add build flag for minimum build

* add minimal build

* update

* fix pj

* bump opendbc

* update subaru
old-commit-hash: 4917e22615adbfcc9b3c3ec89b00d240e0b48883
2023-08-24 14:58:30 -07:00
Justin Newberry
de7257c22c CI: Normalize file permissions (#29584)
* normalize file permissions

* comment

* add comment

* remove that

* shell

* should be on the top
old-commit-hash: da7504e1e72ac09063901361377a64ec074efe8f
2023-08-23 23:50:51 -07:00
Justin Newberry
7a532e02f3 CI: switch to --cache-to type=inline for buildkit cache (#29575)
this is cleaner
old-commit-hash: 2fdde9b77d5d830277500d6841f32a356544718a
2023-08-23 17:41:33 -07:00
Justin Newberry
e54655626d CI: Docs rebuild base image (#29566)
* docs rebuild base image

* fix order
old-commit-hash: 2e4f8e6608bafc89509f6c104688b7dd8273eeac
2023-08-23 15:33:23 -07:00
Kacper Rączy
3681c1d1b2 devcontainer: handle hosts without X11 (#29537)
* Setup xauthority link on host in initializeCommand

* Create a dummy xauthority if it does no exist on host machine

* Remove xauthority line from ci test
old-commit-hash: 659795b1db85636a2f97eba7616159047bf0c6e9
2023-08-23 10:26:38 -07:00
Kacper Rączy
e250480db6 devcontainer: CI fix (#29534)
Export xauthority before running devcontainer
old-commit-hash: df9564e1722f589fa17e15bce55a4f179f58ab70
2023-08-22 14:14:14 -07:00
Robbe Derks
a04cbced36 Devcontainer (#29259)
* mvp devcontainer. builds, runs and UI works

* fix indentation

* enable color and fix openpilot_env path

* separate dockerfile for devcontainer

* use prebuilt image

* Fix openpilot_env setup

* Add dev container section in readme

* Fix typo

* Fix typo again

* Move dev dockerfile to .devcontainer dir

* Update README

* Add note about x11 forwarding on macos

* Update dev container json

* Fix typo

* Override DISPLAY on macOS

* Mention XAUTHORITY for macOS setup in README

* fix typo

* Add devcontainer CI test

* Rename to devcontainer

* Fix git issues

* ripgrep

* Link instead of vscode manual

* Replace raw path with containerWorkspaceFolder

* Fix typo

* Remove dev tools workflow

* Link away X11 forwarding setup isntructions for mac

* Remove fork consrtaint, add test run of scons

* Add submodules as safe.directories in postStartCommand

* Remove openpilot_env references

* Add scons cache volume

---------

Co-authored-by: Robbe Derks <robbe@localhost.localdomain>
Co-authored-by: Kacper Rączy <gfw.kra@gmail.com>
old-commit-hash: d71a7190f1210f5ac97ce16892552ecf495e2437
2023-08-22 11:47:09 -07:00
Adeeb Shihadeh
b38403f2ca Revert Qt MOC hacks (#29528)
* Revert "CI: prevent moc from running in cache population step (#29401)"

This reverts commit 34634b95aa15dc608315016c40857f3e16ca4ff9.

* Revert "SCons: respect cache read only (#29437)"

This reverts commit 77cb4da6381fdf94ea98c55d6fcc30db4d24dcf6.

* don't change moc path
old-commit-hash: 91dc8457ae8e9b188c8fe613be5b3aa2e86be276
2023-08-22 11:16:58 -07:00
Kacper Rączy
0c17a4f4d0 CI: prevent moc from running in cache population step (#29401)
* Do not remove moc_files from cache

* Add cache cleanup script

* Use cache cleanup script

* Dry-run in cache population command

* Add newline

* Temporarly disable master only constraint for cache cleanup step

* Add test lines

* one more

* Fix shebang

* Remove debug lines

* Bring back master branch constraints
old-commit-hash: d1aedccfbe3cb880ad54adea578f91c04857d81b
2023-08-22 10:47:56 -07:00
Justin Newberry
3e6ce7d6cd CI: use xdist for car model tests (#29514)
* bump panda

* try multithreaded for car models

* need pytest-cov

* upgraded to poetry 1.5.1 and regenerated
old-commit-hash: 3492e80d19a4395d9481076c916f9ab96a8fb004
2023-08-21 20:51:27 -07:00
Justin Newberry
e022ffe528 CI: simulator disable pull to save local space (#29517)
we don't need to pull since the image is different most of the time
old-commit-hash: ec5e3bef956e3f6f2ba7bc1f1eb6e75b0563b987
2023-08-21 20:01:52 -07:00
Justin Newberry
fe844afac7 CI: remove old docs base image push (#29512)
remove that push
old-commit-hash: 9188c560692d9c3019c291ed8ae0e899b2e4bfdf
2023-08-21 15:32:41 -07:00
Justin Newberry
7205b92bb6 CI: use scons cache mount for building simulator and docs (#29436)
* build docker image with scons cache

* use setup

* scons cache

* added the dockerfile

* add the shell

* docs use cache

* dont pull lfs for docs

* simulator too

* dont pull the cache image

* fix inputs

* inputs

* booleans aren't supported

* bool not supported

* bool isnt supported

* fix

* readonly cache

* fix sim cache too

* respect readonly

* gitignore and move to correct folder

* also copy old

* move to tools/ci

* move to selfdrive/test

* just make the cache writable, it's discarded anyway

* minimize diff in this pr
old-commit-hash: 197460e06136f66f60e10ccefece646cb472b872
2023-08-21 15:11:31 -07:00
Kacper Rączy
1d47429f8e Setup cleanup vol. 2 (#29456)
* code from setup cleanup #29419

update ci

update ci

export variables for mac os

check env

what is in the profile script?

install pyenv the same everywhere

temporarily disable brew cache

temporarily disable brew cache

try fixing pyenv virtualenv-init

try this

inject shims path earlier

try alternate install method

switch back to brew install

try         eval "$(pyenv init --path)"

add eval "\$(pyenv init --path)"

* Add local .env file to the cache list

* Change .env paths

* debug line

* order?

* remove .env

* Add .venv to caches

---------

Co-authored-by: Greg Hogan <gregjhogan@gmail.com>
old-commit-hash: 0f7be5b1e6efa04c59ce2a45afacd650b2e4d417
2023-08-21 13:30:48 -07:00
Dean Lee
97631ec362 common: C++ RateKeeper (#29374)
* c++ RateKeeper

* add to files_common

* use util::random_int

* improve monotor_time

* remove ~ratekeeper
old-commit-hash: 3eef63af9b4f4a25bc4c3a0d6ad450bba9f62205
2023-08-20 21:27:02 -07:00
Adeeb Shihadeh
bd27be2b78 move mypy config into pyproject.toml (#29501)
* move mypy config into pyproject.toml

* rm reference
old-commit-hash: ff068dd722b31078b9356d3f55e4898cf00a89cb
2023-08-20 21:08:04 -07:00
Harald Schäfer
3022f06e1e update process replay timeout (#29478)
* Always dict differ

* Update selfdrive_tests.yaml

* bump up more

---------

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
old-commit-hash: bc4b75822a609e6897058bc83688c84004f29093
2023-08-20 17:24:33 -07:00
Justin Newberry
1988b4805e Revert "setup cleanup (#29419)" (#29451)
This reverts commit bc9c60a3f955bb5b96dc41e6072cab47191f8896.
old-commit-hash: 1944945d9dfee6f42a875b119a5cf60daf8ade09
2023-08-17 13:23:06 -07:00
Greg Hogan
cce2c732c6 setup cleanup (#29419)
* setup cleanup

* update ci

* update ci

* export variables for mac os

* check env

* what is in the profile script?

* install pyenv the same everywhere

* temporarily disable brew cache

* temporarily disable brew cache

* try fixing pyenv virtualenv-init

* try this

* inject shims path earlier

* try alternate install method

* switch back to brew install

* try         eval "$(pyenv init --path)"

* add eval "\$(pyenv init --path)"
old-commit-hash: ad32816fd6bdd744e7f596209822707494d3ba5e
2023-08-17 08:51:16 -07:00
Justin Newberry
edbd5d330e CI: use setup script for docs and simulator (#29434)
* use setup

* dont pull lfs for docs

* fix inputs

* bool not supported

* bool isnt supported
old-commit-hash: ad00595ba5f7716840afbdf548a9bdf1290dbfeb
2023-08-16 17:59:42 -07:00
Kacper Rączy
4096be66e4 macOS: fix GH actions cache (#29399)
Add lz4 and xz to dep cache exceptions
old-commit-hash: ae649ec68d670cb2d90773906665695807e4dc2e
2023-08-14 16:13:35 -07:00
Justin Newberry
1424636288 CI: docs speedup by caching first stage (#29397)
* docs speedup

* fix tags on docs build

* build docs without build-push-action
old-commit-hash: f8cbdcfa40a80567a4f6fc3823e46cb37d219cb1
2023-08-14 14:36:17 -07:00
Adeeb Shihadeh
e76af64065 CI: enable PYTHONWARNINGS=error (#29364)
* CI: enable PYTHONWARNINGS=error

* fixes

* more ignore

* more modeld ignore
old-commit-hash: b11b14aff86a4c993bf5342ee37af169788c9026
2023-08-12 17:15:16 -07:00
Adeeb Shihadeh
b3f734283d remove xx dependencies (#29263)
* rm xx deps

* mv that

* fix

* fix a path

* relock

* relock

* update

* update sentry

* update

* revert sentry

* Update lock

* Dummy pip package

* Not needed with poetry

* dont need dummy

---------

Co-authored-by: Bruce Wayne <harald.the.engineer@gmail.com>
old-commit-hash: 0ced56b2ea7e0800f309c4e77d9a78bb90d89fb6
2023-08-11 20:05:44 -07:00
Justin Newberry
20f6a25a1c CI: move other caches out of /tmp (#29348)
* also move other caches

* macos can stay
old-commit-hash: 2482b58968df1faa509a9043b71d164353284146
2023-08-11 17:41:23 -07:00
Justin Newberry
afa33bee18 CI: move cache to home directory (#29347)
move cache to home dir
old-commit-hash: ace4d78e315f48655808e038c96c35b89096b654
2023-08-11 15:45:38 -07:00
Justin Newberry
f8cd844e7c CI: use default caching action (#29339)
old-commit-hash: a0f399677e365a2b7c9913c76ca72b1a22814825
2023-08-11 14:03:10 -07:00
Adeeb Shihadeh
2e818c2393 CI: bump up model test timeout
old-commit-hash: cd4bb412f5a6ecbf150b464ea2597943de12d208
2023-08-10 17:29:56 -07:00
Adeeb Shihadeh
442ec436dd remove rest of pylint (#29302)
* remove rest of pylint

* fix release build
old-commit-hash: e53f9597f3ee711ed21dcba7d2ba1a74c654cf81
2023-08-09 19:03:36 -07:00
Adeeb Shihadeh
d704b0318a CI: move longitudinal tests into unit tests job (#29245)
* move long into unit test job

* try without these

* add that back
old-commit-hash: ae8252c14a87181c9da10bab7e2df64a592987a6
2023-08-07 06:48:06 -07:00
Adeeb Shihadeh
de743e3ec4 CI: add timeouts to selfdrive tests (#29239)
* CI: add timeouts to selfdrive tests

* ugh, so slow

* will have to come back to this one
old-commit-hash: 75ab960557b772add9cf8f484ed330ad7774de0e
2023-08-04 18:14:14 -07:00
Adeeb Shihadeh
4b96635560 CI: update cache action (#29241)
* update that

* update one more
old-commit-hash: f714e7cb24517145b83bb01aa49da9b56ee8563a
2023-08-04 17:59:55 -07:00
Adeeb Shihadeh
ca5d92a1a1 CI: only run on master + PRs (#29242)
old-commit-hash: 0df2cd4fa873636b24407ebe5522fb3ba056e866
2023-08-04 17:56:30 -07:00
Adeeb Shihadeh
5c0a7ef79e CI: add timeouts to tools jobs (#29238)
old-commit-hash: 8633e5f8ab24b42bbe7b85a7063d36ee0c42bcc2
2023-08-04 15:35:21 -07:00
Shane Smiskol
ffd534fdc3 car docs diff bot: don't ignore failures
we have a test for this, so if that fails, doesn't matter if this fails too

old-commit-hash: 6ad6191e6a909445ea2ec2f5e192d6ca4e88ffd9
2023-08-02 17:18:43 -07:00
Adeeb Shihadeh
0903b55fca CI: allow triggering fast release builds
old-commit-hash: e53ab3a18a5c3ce7524120ad7732fe5a9843093c
2023-07-26 15:22:23 -07:00
Adeeb Shihadeh
9f7fa18b7b CI: run plotjuggler test on mac (#29102)
* CI: run plotjuggler test on mac

* source

* python path
old-commit-hash: 34389acbbfdd5ab6e58e40c0819f986552f22a59
2023-07-22 23:10:31 -07:00