Commit Graph

167 Commits

Author SHA1 Message Date
Shane Smiskol
f22eeaa0be selfdrive_tests: allow manual run (#30307)
* allow manual run

* Apply suggestions from code review
old-commit-hash: 2acb22fada
2023-10-25 15:17:17 -07:00
Adeeb Shihadeh
79ad4feddb CI: update to checkout@v4 (#30248)
old-commit-hash: 0336219b6a
2023-10-14 23:25:41 -07:00
Kacper Rączy
2878a3a876 CI: add regen job (#30157)
* Ability to whitelist/blacklist cars in regen_all

* Add CI job for regen, running on 2 segments

* Run regen_all, not regen

* Use coverage run

* Add test_regen

* Use test_regen in ci test

* Add test case names

* ONNXCPU = 1

* Add mazda segment

* Use RUN_CL

* build cl image before running

* unset PYTHONWARNINGS

* Create regen cache

* Replace daemons with processes

* Skip ford

* Skip mazda

* Add comment about commented segments

* Update selfdrive/test/process_replay/test_regen.py

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>

* Remove unset pythonwarnings

---------

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
old-commit-hash: 3aa74c28fc
2023-10-05 13:59:00 -07:00
Adeeb Shihadeh
e0346cac83 CI: disable native mac build (#30082)
old-commit-hash: 4f72e87ab7
2023-09-27 21:15:53 -07:00
Justin Newberry
ef75f0ab12 CI: use "slow" marker for pytest (#30063)
* skip to mark

* fix quotes
old-commit-hash: 0251742079
2023-09-26 13:44:18 -07:00
Adeeb Shihadeh
3512ac86eb pre-commit: always check all file sizes (#30050)
* pre-commit: always check all file sizes

* fix release
old-commit-hash: 425fa316d1
2023-09-25 22:22:48 -07:00
Adeeb Shihadeh
e69eeb7344 move remaining big files into LFS (#30053)
old-commit-hash: e185e5ffcd
2023-09-25 21:53:03 -07:00
Justin Newberry
52b437f6b6 CI: remove warning messages (#30013)
remove ci warnings
old-commit-hash: f223b66b7b
2023-09-22 19:59:38 -07:00
Justin Newberry
70a5d52887 CI: disable buildjet on PR's from forks (#29979)
* fix fork CI

* linter

* needed for docker build too

* slightly more clear

* you should have gone for the head
old-commit-hash: 6f0affbcd2
2023-09-20 13:15:23 -07:00
Adeeb Shihadeh
e14996e079 CI: login to docker hub on BuildJet (#29961)
* CI: login to docker hub on BuildJet

* shell

* try quotes

* forward

* try this

* can't believe this is broken

* try

* fix process replay
old-commit-hash: 4b7b234b9e
2023-09-18 15:53:16 -07:00
Adeeb Shihadeh
ee0ddd7e26 Revert "CI: login to dockerhub on aarch64 runners (#29915)"
This reverts commit 28211fe8ada8997119c57c5619349332a406aa76.

old-commit-hash: 079a51cfdf
2023-09-17 15:16:07 -07:00
Kacper Rączy
4fd9b553be macOS: add prompt about support in setup script (#29939)
* Add prompt about the state of macos support in mac_setup

* Change words

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>

---------

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
old-commit-hash: f0b8ecd14f
2023-09-15 19:05:32 -07:00
Justin Newberry
79feec2438 CI: reduce unittest timeout (#29937)
reduce timeout
old-commit-hash: c6f1f36789
2023-09-15 14:38:51 -07:00
Kacper Rączy
9525da02b6 CI: login to dockerhub on aarch64 runners (#29915)
* DOCKER_HUB_LOGIN command

* Add docker creds

* checkout runner name

* test again

* Use runner.name to distinguish between buildjet and GH runners
old-commit-hash: c9ec7bc2a3
2023-09-14 17:08:49 -07:00
Adeeb Shihadeh
cc4cb7e078 don't run test twice
old-commit-hash: 7ef8898624
2023-09-14 14:08:24 -07:00
Vivek Aithal
244a2fc793 locationd: Unit tests for different scenarios (#29908)
* add different scenarios for locationd

* add locationd scenario tests to unit tests
old-commit-hash: e9edf1300a
2023-09-14 13:59:21 -07:00
Vivek Aithal
370d912053 liblocationd: No longer used (#29909)
remove liblocationd
old-commit-hash: 01011c6c1d
2023-09-13 18:59:32 -07:00
Adeeb Shihadeh
1f8459d285 use pytest for cpp tests (#29833)
* add pytest-cpp package (#29828)

* add pytest-cpp package

* disable for now

* use in ci

* use pytest cpp

* use my branch

* add missing tests

* that doesn't make sense

* it was merged upstream

* replace TEST_RLOG_URL with a publicly accessible url

* PR Cleanup

* assert instead

* update poetry lock

* add comment about  pytest-cpp

---------

Co-authored-by: Justin Newberry <jnewberry0502@gmail.com>
Co-authored-by: Justin Newberry <justin@comma.ai>
Co-authored-by: deanlee <deanlee3@gmail.com>
old-commit-hash: 2c1dfc2f34
2023-09-11 14:01:50 -07:00
Kacper Rączy
fc4972539f docker: fix cl tag (#29858)
unset TARGET_ARCHITECTURE before running build
old-commit-hash: c417669cbd
2023-09-08 17:20:03 -07:00
Justin Newberry
5ac2ef0e3f CI: fix aarch64 cache (#29857)
was not passed in
old-commit-hash: d3e5f66fc1
2023-09-08 17:13:18 -07:00
Kacper Rączy
73c25cc743 docker: fix multiarch tag push (#29850)
Fix multiarch merge script
old-commit-hash: b09ec6bb5b
2023-09-08 15:03:40 -07:00
Kacper Rączy
f8c6ebd3ad docker: multiarch images (amd64/aarch64) (#29691)
* arch specific tags

* merge multiarch script

* arm64 build and merge jobs

* update tag script

* casual ci test

* change image to 2204

* docker -v test

* arch specific naming

* Remove test_buildjet

* build -arch images only when CURRENT_ARCH_BUILD is set

* support new tags in tag_multiarch

* Toggle CURRENT_ARCH_BUILD on in ci

* Docker common

* Fix condition

* Fix path to docker_common

* Add more stuff to common

* Add build_arm job

* composite job for building

* Run checkout before build composite

* add shell arg

* move timeout to selfdrive_tests

* TARGET ARCHITECTURE var

* Support TARGET_ARCHITECTURE in workflow

* Rewrite to Single build job with matrix

* Remove shebang from docker_common

* Attempt for fix build matrix

* Remove setup arch

* build matrix for docker push

* Use 2vcpu for arm build

* 2vcpu for docker_push too

* temporarly unlock docker_push

* Remove requirement for target arch when pushing

* Unset target architecture in docker_push cl

* fix sha tags

* Rename action to compile-openpilot

* move push_image line to tag_multiarch step

* arch suffix for scons cache

* cache_key_prefix for setup-with-retry

* Re-disable docker_push on non-master

* Add newlines
old-commit-hash: 1344a93a35
2023-09-08 14:46:39 -07:00
Adeeb Shihadeh
13c3bf2cbd CI: increase model replay timeout
old-commit-hash: c96fe132e8
2023-09-08 10:41:54 -07:00
Justin Newberry
5b1e60f5da Pytest: enforce a default timeout (#29793)
* pytest: enforce default timeout

* disable that for now

* 30 second timeout on tests
old-commit-hash: b0a71d4553
2023-09-07 17:53:51 -07:00
Justin Newberry
37e4b2cba9 CI: run unittests in parallel with xdist (#29756)
* parallel tests

* review suggesions

* add to pyproject

* add a bit more buffer on that

* fix rare athena issue

* remove from pypoetry
old-commit-hash: dde225221e
2023-09-07 16:29:36 -07:00
Justin Newberry
e468072f1f CI: retry setup on failure (#29785)
* try a setup action

* should be uses

* fix that formatting

* try conclusion

* continue on error

* try without hyphens

* only when failure

* make it optional

* continue on error

* those don't fail anymore

* what about 3 failures

* remove stuff for debugging

* cleanup

* review suggestions

* change that too

* fix pj
old-commit-hash: 917f71d446
2023-09-06 11:11:15 -07:00
Adeeb Shihadeh
53e0f5eb49 pytest: use a clean environment for all tests (#29788)
* pytest: use a clean environment for all tests

* rm that

* fix pj

* put build back

* fix params

* fix that

* handle no key

* that was removed

---------

Co-authored-by: Justin Newberry <justin@comma.ai>
old-commit-hash: 7b6afbc162
2023-09-05 18:52:40 -07:00
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: ca435d3447
2023-09-04 11:54:35 -07:00
Adeeb Shihadeh
0107dfb391 don't rerun those here
old-commit-hash: 75081b2e54
2023-08-31 18:34:20 -07:00
Justin Newberry
47eb055283 CI: fix proc replay download cache permissions (#29636)
chmod that
old-commit-hash: ab05bff07d
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: d35beffbce
2023-08-25 18:50:21 -07:00
Dean Lee
00f900e8c4 common/tests: combine multiple test binaries into one (#29623)
old-commit-hash: 2709cd6538
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: c0b9458a45
2023-08-25 01:41:04 -07:00
Adeeb Shihadeh
8f9dcca26a CI: workaround syntax error in azure lib (#29618)
old-commit-hash: e863828051
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: 90cb417caa
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: ede9f2cda5
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: 3d9f238bf9
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: 4917e22615
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: da7504e1e7
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: 2fdde9b77d
2023-08-23 17:41:33 -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: 91dc8457ae
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: d1aedccfbe
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: 3492e80d19
2023-08-21 20:51:27 -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: 0f7be5b1e6
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: 3eef63af9b
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: ff068dd722
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: bc4b75822a
2023-08-20 17:24:33 -07:00
Justin Newberry
1988b4805e Revert "setup cleanup (#29419)" (#29451)
This reverts commit bc9c60a3f955bb5b96dc41e6072cab47191f8896.
old-commit-hash: 1944945d9d
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: ad32816fd6
2023-08-17 08:51:16 -07:00
Kacper Rączy
4096be66e4 macOS: fix GH actions cache (#29399)
Add lz4 and xz to dep cache exceptions
old-commit-hash: ae649ec68d
2023-08-14 16:13:35 -07:00