eng/tools/compare-packages.ps1 (45 lines of code) (raw):

param ( $pathToMasterPkg, $pathToCurrentPkg, $dailyDevBuildNo, $pathForDiffFile ) function ExtractTGZPackages($pathToPkg) { $parentExtractDir = Join-Path $pathToPkg "all-contents" Write-Host "mkdir $parentExtractDir" mkdir $parentExtractDir foreach ($p in $(dir $pathToPkg -r -i *.tgz)) { if($p.BaseName -match "(?<name>.*?)(-\d+\.\d+\.\d+.*)") { $extractDir = Join-Path $parentExtractDir $matches["name"] mkdir "$extractDir" pushd "$extractDir" tar -xzf $p.FullName popd if($LastExitCode -ne 0) { Write-Host "error >> tar -xzf $p.FullName failed with exit code $LastExitCode" } } else { write-error "Package name $($p.BaseName) doesn't match the expected format [<name>-<version>]!" } } } try { $extractMasterDir = Join-Path $pathToMasterPkg "all-contents" ExtractTGZPackages($pathToMasterPkg) $extractCurrentDir = Join-Path $pathToCurrentPkg "all-contents" ExtractTGZPackages($pathToCurrentPkg) Write-Host "Finished unzipping of all .tgz packages" $diffFile = Join-Path $pathForDiffFile "Change_$dailyDevBuildNo.diff" Write-Host "created filename variable $diffFile" git diff $extractMasterDir $extractCurrentDir | tee $diffFile if($LastExitCode -ne 0) { Write-Host "error >> git diff $extractMasterDir $extractCurrentDir | tee $diffFile executes with exit code $LastExitCode" } Write-Host "created the diff file - $diffFile" exit 0 } catch { Write-Host "An error occurred:" Write-Host $_ }