mirror of
https://github.com/MoreTore/openpilot.git
synced 2026-09-30 19:33:49 +08:00
On-device CI framework (#1784)
* let's see if this works * fix build_release actions job * does jenkins like this config * separate jenkinsfile for release build * fix devel build * devel build should work * always pass that for now * run modeld replay * release2 build will be a separate PR * pass env to phone shell * force checkout * run on real jenkins eons * add timeout * rsync * more timeout * trailing slash * fix branch detection * debug * not sure why paramiko doesn't pass it through * newline * CI_PUSH * still not passing it * test branch * should be good now
This commit is contained in:
Vendored
+21
-17
@@ -4,38 +4,42 @@ pipeline {
|
||||
image 'python:3.7.3'
|
||||
args '--user=root'
|
||||
}
|
||||
|
||||
}
|
||||
environment {
|
||||
COMMA_JWT = credentials('athena-test-jwt')
|
||||
CI_PUSH = "${env.BRANCH_NAME == 'master' ? 'master-ci' : ''}"
|
||||
}
|
||||
|
||||
stages {
|
||||
stage('Device Tests') {
|
||||
stage('On-device Tests') {
|
||||
parallel {
|
||||
stage('Build/Test') {
|
||||
|
||||
stage('Build') {
|
||||
steps {
|
||||
lock(resource: "", label: 'eon', inversePrecedence: true, variable: 'eon_name', quantity: 1){
|
||||
lock(resource: "", label: 'eon', inversePrecedence: true, variable: 'eon_ip', quantity: 1){
|
||||
timeout(time: 30, unit: 'MINUTES') {
|
||||
dir(path: 'release') {
|
||||
sh 'pip install paramiko'
|
||||
sh 'python remote_build.py'
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
stage('Replay Tests') {
|
||||
steps {
|
||||
lock(resource: "", label: 'eon2', inversePrecedence: true, variable: 'eon_name', quantity: 1){
|
||||
timeout(time: 45, unit: 'MINUTES') {
|
||||
dir(path: 'selfdrive/test') {
|
||||
sh 'pip install paramiko'
|
||||
sh 'python phone_ci.py'
|
||||
sh 'python phone_ci.py "cd release && ./build_devel.sh"'
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
stage('Replay Tests') {
|
||||
steps {
|
||||
lock(resource: "", label: 'eon2', inversePrecedence: true, variable: 'eon_ip', quantity: 1){
|
||||
timeout(time: 60, unit: 'MINUTES') {
|
||||
dir(path: 'selfdrive/test') {
|
||||
sh 'pip install paramiko'
|
||||
sh 'python phone_ci.py "cd selfdrive/test/process_replay && ./camera_replay.py"'
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user