mirror of
				https://github.com/microsoft/playwright.git
				synced 2025-06-26 21:40:17 +00:00 
			
		
		
		
	 7d2078ef6f
			
		
	
	
		7d2078ef6f
		
			
		
	
	
	
	
		
			
			This patch bakes browsers into docker image. Important observations: - We now re-build docker image everytime we roll browsers. - Docker image size almost doubles: from `225MB` to `496MB`. References #2926
		
			
				
	
	
		
			57 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			57 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
| #!/bin/bash
 | |
| set -e
 | |
| set +x
 | |
| 
 | |
| # This script computes **compressed image size with all its layers**.
 | |
| # This solution is based on https://stackoverflow.com/a/55156181/314883
 | |
| 
 | |
| 
 | |
| if [[ ($1 == '--help') || ($1 == '-h') ]]; then
 | |
|   echo "usage: $(basename $0) [--image-name <local image to compute size>]"
 | |
|   echo
 | |
|   echo "Compute docker image size defined by the 'Dockerfile.bionic'."
 | |
|   echo ""
 | |
|   echo "Script will build the image using 'build.sh', unless '--image-name'"
 | |
|   echo "is specified."
 | |
|   echo ""
 | |
|   echo "NOTE: this requires on Playwright dependencies to be installed with 'npm install'"
 | |
|   echo "      and Playwright itself being built with 'npm run build'"
 | |
|   echo
 | |
|   echo "  --image-name    custom image name to compute size of."
 | |
|   echo ""
 | |
|   exit 0
 | |
| fi
 | |
| 
 | |
| CUSTOM_IMAGE_NAME=""
 | |
| if [[ $1 == "--image-name" ]]; then
 | |
|   CUSTOM_IMAGE_NAME=$2
 | |
| fi
 | |
| 
 | |
| TMP_IMAGE_NAME="docker-image-to-count-compressed-size"
 | |
| FILE_NAME="docker-image-to-count-compressed-size"
 | |
| 
 | |
| function cleanup() {
 | |
|   rm -f "${FILE_NAME}.tar"
 | |
|   rm -f "${FILE_NAME}.tar.gz"
 | |
|   docker rmi "${TMP_IMAGE_NAME}:bionic" >/dev/null
 | |
| }
 | |
| 
 | |
| trap "cleanup; cd $(pwd -P)" EXIT
 | |
| cd "$(dirname "$0")"
 | |
| 
 | |
| if [[ -z "${CUSTOM_IMAGE_NAME}" ]]; then
 | |
|   echo "-- Building image..."
 | |
|   ./build.sh >/dev/null
 | |
|   echo "-- Saving .tar of the image..."
 | |
|   docker save "${TMP_IMAGE_NAME}:bionic" > "${FILE_NAME}.tar"
 | |
| else
 | |
|   echo "-- Saving .tar of the image..."
 | |
|   docker save "${CUSTOM_IMAGE_NAME}" > "${FILE_NAME}.tar"
 | |
| fi
 | |
| echo "-- Compressing image..."
 | |
| gzip "${FILE_NAME}.tar" >/dev/null
 | |
| 
 | |
| echo "(generated with docker-image-size.sh)" > CURRENT_DOCKER_IMAGE_SIZE
 | |
| du -sh ${FILE_NAME}.tar.gz | cut -f1 | xargs >> CURRENT_DOCKER_IMAGE_SIZE
 | |
| 
 |