|  |  | @ -75,14 +75,8 @@ jobs: | 
			
		
	
		
		
			
				
					
					|  |  |  |         ${{ env.RUN }} "scripts/lint/lint.sh --skip check_added_large_files" |  |  |  |         ${{ env.RUN }} "scripts/lint/lint.sh --skip check_added_large_files" | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  |   build: |  |  |  |   build: | 
			
		
	
		
		
			
				
					
					|  |  |  |     strategy: |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  |       matrix: |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  |         arch: ${{ fromJson( |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  |            ((github.repository == 'commaai/openpilot') && |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  |               ((github.event_name != 'pull_request') || |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  |                (github.event.pull_request.head.repo.full_name == 'commaai/openpilot'))) && '["x86_64", "aarch64"]' || '["x86_64"]' ) }} |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  |     runs-on: |  |  |  |     runs-on: | 
			
		
	
		
		
			
				
					
					|  |  |  |      - ${{ ((matrix.arch == 'aarch64') && 'namespace-profile-arm64-2x8') || ((matrix.arch == 'x86_64') && ((github.repository == 'commaai/openpilot') && ((github.event_name != 'pull_request') || (github.event.pull_request.head.repo.full_name == 'commaai/openpilot'))) && 'namespace-profile-amd64-8x16') || 'ubuntu-24.04'}} |  |  |  |      - ${{ ((matrix.arch == 'x86_64') && ((github.repository == 'commaai/openpilot') && ((github.event_name != 'pull_request') || (github.event.pull_request.head.repo.full_name == 'commaai/openpilot'))) && 'namespace-profile-amd64-8x16') || 'ubuntu-24.04'}} | 
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					|  |  |  |      - ${{ ((matrix.arch == 'x86_64') && ((github.repository == 'commaai/openpilot') && ((github.event_name != 'pull_request') || (github.event.pull_request.head.repo.full_name == 'commaai/openpilot'))) && 'namespace-experiments:docker.builds.local-cache=separate' || 'ubuntu-24.04') }} |  |  |  |      - ${{ ((matrix.arch == 'x86_64') && ((github.repository == 'commaai/openpilot') && ((github.event_name != 'pull_request') || (github.event.pull_request.head.repo.full_name == 'commaai/openpilot'))) && 'namespace-experiments:docker.builds.local-cache=separate' || 'ubuntu-24.04') }} | 
			
		
	
		
		
			
				
					
					|  |  |  |     steps: |  |  |  |     steps: | 
			
		
	
		
		
			
				
					
					|  |  |  |     - uses: actions/checkout@v4 |  |  |  |     - uses: actions/checkout@v4 | 
			
		
	
	
		
		
			
				
					|  |  | @ -92,7 +86,7 @@ jobs: | 
			
		
	
		
		
			
				
					
					|  |  |  |       if: github.ref == 'refs/heads/master' && github.event_name != 'pull_request' && github.repository == 'commaai/openpilot' |  |  |  |       if: github.ref == 'refs/heads/master' && github.event_name != 'pull_request' && github.repository == 'commaai/openpilot' | 
			
		
	
		
		
			
				
					
					|  |  |  |       run: | |  |  |  |       run: | | 
			
		
	
		
		
			
				
					
					|  |  |  |         echo "PUSH_IMAGE=true" >> "$GITHUB_ENV" |  |  |  |         echo "PUSH_IMAGE=true" >> "$GITHUB_ENV" | 
			
		
	
		
		
			
				
					
					|  |  |  |         echo "TARGET_ARCHITECTURE=${{ matrix.arch }}" >> "$GITHUB_ENV" |  |  |  |         echo "TARGET_ARCHITECTURE=x86_64" >> "$GITHUB_ENV" | 
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					|  |  |  |         $DOCKER_LOGIN |  |  |  |         $DOCKER_LOGIN | 
			
		
	
		
		
			
				
					
					|  |  |  |     - uses: ./.github/workflows/setup-with-retry |  |  |  |     - uses: ./.github/workflows/setup-with-retry | 
			
		
	
		
		
			
				
					
					|  |  |  |     - uses: ./.github/workflows/compile-openpilot |  |  |  |     - uses: ./.github/workflows/compile-openpilot | 
			
		
	
	
		
		
			
				
					|  |  | @ -123,23 +117,6 @@ jobs: | 
			
		
	
		
		
			
				
					
					|  |  |  |     - name: Building openpilot |  |  |  |     - name: Building openpilot | 
			
		
	
		
		
			
				
					
					|  |  |  |       run: . .venv/bin/activate && scons -j$(nproc) |  |  |  |       run: . .venv/bin/activate && scons -j$(nproc) | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  |   docker_push_multiarch: |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  |     name: docker push multiarch tag |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  |     runs-on: ubuntu-latest |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  |     if: github.ref == 'refs/heads/master' && github.event_name != 'pull_request' && github.repository == 'commaai/openpilot' |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  |     needs: [build] |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  |     steps: |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  |     - uses: actions/checkout@v4 |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  |       with: |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  |         submodules: false |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  |     - name: Setup docker |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  |       run: | |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  |         $DOCKER_LOGIN |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  |     - name: Merge x64 and arm64 tags |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  |       run: | |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  |         export PUSH_IMAGE=true |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  |         scripts/retry.sh selfdrive/test/docker_tag_multiarch.sh base x86_64 aarch64 |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  |   static_analysis: |  |  |  |   static_analysis: | 
			
		
	
		
		
			
				
					
					|  |  |  |     name: static analysis |  |  |  |     name: static analysis | 
			
		
	
		
		
			
				
					
					|  |  |  |     runs-on: |  |  |  |     runs-on: | 
			
		
	
	
		
		
			
				
					|  |  | 
 |