You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							45 lines
						
					
					
						
							1.4 KiB
						
					
					
				
			
		
		
	
	
							45 lines
						
					
					
						
							1.4 KiB
						
					
					
				| #!/bin/bash
 | |
| set -e
 | |
| 
 | |
| # To build sim and docs, you can run the following to mount the scons cache to the same place as in CI:
 | |
| # mkdir -p .ci_cache/scons_cache
 | |
| # sudo mount --bind /tmp/scons_cache/ .ci_cache/scons_cache
 | |
| 
 | |
| if [ $1 = "base" ]; then
 | |
|   export DOCKER_IMAGE=openpilot-base
 | |
|   export DOCKER_FILE=Dockerfile.openpilot_base
 | |
| elif [ $1 = "docs" ]; then
 | |
|   export DOCKER_IMAGE=openpilot-docs
 | |
|   export DOCKER_FILE=docs/docker/Dockerfile
 | |
| elif [ $1 = "sim" ]; then
 | |
|   export DOCKER_IMAGE=openpilot-sim
 | |
|   export DOCKER_FILE=tools/sim/Dockerfile.sim
 | |
| elif [ $1 = "prebuilt" ]; then
 | |
|   export DOCKER_IMAGE=openpilot-prebuilt
 | |
|   export DOCKER_FILE=Dockerfile.openpilot
 | |
| elif [ $1 = "cl" ]; then
 | |
|   export DOCKER_IMAGE=openpilot-base-cl
 | |
|   export DOCKER_FILE=Dockerfile.openpilot_base_cl
 | |
| else
 | |
|   echo "Invalid docker build image $1"
 | |
|   exit 1
 | |
| fi
 | |
| 
 | |
| export DOCKER_REGISTRY=ghcr.io/commaai
 | |
| export COMMIT_SHA=$(git rev-parse HEAD)
 | |
| 
 | |
| LOCAL_TAG=$DOCKER_IMAGE
 | |
| REMOTE_TAG=$DOCKER_REGISTRY/$LOCAL_TAG
 | |
| REMOTE_SHA_TAG=$REMOTE_TAG:$COMMIT_SHA
 | |
| 
 | |
| SCRIPT_DIR=$(dirname "$0")
 | |
| OPENPILOT_DIR=$SCRIPT_DIR/../../
 | |
| 
 | |
| DOCKER_BUILDKIT=1 docker buildx build --load --cache-to type=inline --cache-from type=registry,ref=$REMOTE_TAG -t $REMOTE_TAG -t $LOCAL_TAG -f $OPENPILOT_DIR/$DOCKER_FILE $OPENPILOT_DIR
 | |
| 
 | |
| if [[ ! -z "$PUSH_IMAGE" ]];
 | |
| then
 | |
|   docker push $REMOTE_TAG
 | |
|   docker tag $REMOTE_TAG $REMOTE_SHA_TAG
 | |
|   docker push $REMOTE_SHA_TAG
 | |
| fi |