Since #33321, Angular packages have been persisted on each build as CircleCI build artifacts (`.tgz` files), which can be used to install dependencies on a project (for the purpose of testing or trying out a change before a PR being merged and without having to build the packages from source locally). Previously, only packages published to npm under the `@angular` scope were persisted as build artifacts. This commit adds the `zone.js` package to the list of persisted packages. Fixes #33686 PR Close #33733
		
			
				
	
	
		
			41 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			41 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
#!/usr/bin/env bash
 | 
						|
 | 
						|
set -eu -o pipefail
 | 
						|
 | 
						|
readonly prNumber="$1"
 | 
						|
readonly prLastSha="${2:0:7}"
 | 
						|
readonly inputDir="$PROJECT_ROOT/$3"
 | 
						|
readonly outputDir="$PROJECT_ROOT/$4"
 | 
						|
readonly fileSuffix="-pr$prNumber-$prLastSha.tgz"
 | 
						|
 | 
						|
echo "Creating compressed archives for packages in '$inputDir'."
 | 
						|
 | 
						|
# Create or clean-up the output directory.
 | 
						|
echo "  Preparing output directory: $outputDir"
 | 
						|
rm -rf "$outputDir"
 | 
						|
mkdir -p "$outputDir"
 | 
						|
 | 
						|
# If there are more than one packages in `$inputDir`...
 | 
						|
if [[ $(ls -1 "$inputDir" | wc -l) -gt 1 ]]; then
 | 
						|
  # Create a compressed archive containing all packages.
 | 
						|
  # (This is useful for copying all packages into `node_modules/` (without changing `package.json`).)
 | 
						|
  outputFileName=all$fileSuffix
 | 
						|
  echo "  Creating archive with all packages --> '$outputFileName'..."
 | 
						|
  tar --create --gzip --directory "$inputDir" --file "$outputDir/$outputFileName" --transform s/^\./packages/ .
 | 
						|
fi
 | 
						|
 | 
						|
# Create a compressed archive for each package.
 | 
						|
# (This is useful for referencing the path/URL to the resulting archive in `package.json`.)
 | 
						|
for dir in $inputDir/*
 | 
						|
do
 | 
						|
  packageName=`basename "$dir"`
 | 
						|
  outputFileName="$packageName$fileSuffix"
 | 
						|
  outputFilePath="$outputDir/$outputFileName"
 | 
						|
 | 
						|
  echo "  Processing package '$packageName' --> '$outputFileName'..."
 | 
						|
 | 
						|
  tar --create --gzip --directory "$dir" --file "$outputFilePath" --transform s/^\./package/ .
 | 
						|
done
 | 
						|
 | 
						|
echo "Done creating compressed archives."
 |