mirror of
https://github.com/game-ci/unity-builder.git
synced 2026-06-01 22:36:15 -07:00
61 lines
2.2 KiB
PowerShell
61 lines
2.2 KiB
PowerShell
# delete-me-update-this-integration-branch.ps1
|
|
# Run this script from the repo root while on the release/lts-2.0.0 branch.
|
|
# It merges the latest from each component branch to keep this integration branch current.
|
|
# After running, review any conflicts, then commit and push.
|
|
|
|
$ErrorActionPreference = 'Stop'
|
|
|
|
$branchName = git rev-parse --abbrev-ref HEAD
|
|
if ($branchName -ne 'release/lts-2.0.0') {
|
|
Write-Error "Must be on release/lts-2.0.0 branch. Currently on: $branchName"
|
|
exit 1
|
|
}
|
|
|
|
# Component branches for this integration branch
|
|
$branches = @(
|
|
# Infrastructure
|
|
'feature/orchestrator-enterprise-support'
|
|
'feature/cloud-run-azure-providers'
|
|
'feature/provider-load-balancing'
|
|
'feature/orchestrator-unit-tests'
|
|
'fix/secure-git-token-usage'
|
|
'feature/premade-secret-sources'
|
|
'feature/ci-platform-providers'
|
|
'feature/build-reliability'
|
|
'ci/orchestrator-integrity-speedup'
|
|
# Next-gen
|
|
'feature/test-workflow-engine'
|
|
'feature/hot-runner-protocol'
|
|
'feature/generic-artifact-system'
|
|
'feature/incremental-sync-protocol'
|
|
'feature/community-plugin-validation'
|
|
'feature/cli-support'
|
|
)
|
|
|
|
Write-Host "Fetching latest from origin..." -ForegroundColor Cyan
|
|
git fetch origin
|
|
|
|
$failed = @()
|
|
foreach ($branch in $branches) {
|
|
Write-Host "`nMerging origin/$branch..." -ForegroundColor Yellow
|
|
$result = git merge "origin/$branch" --no-edit 2>&1
|
|
if ($LASTEXITCODE -ne 0) {
|
|
Write-Host " CONFLICT merging $branch - resolve manually" -ForegroundColor Red
|
|
$failed += $branch
|
|
# Abort this merge so we can continue with others
|
|
git merge --abort
|
|
} else {
|
|
Write-Host " Merged successfully" -ForegroundColor Green
|
|
}
|
|
}
|
|
|
|
if ($failed.Count -gt 0) {
|
|
Write-Host "`nThe following branches had conflicts and were skipped:" -ForegroundColor Red
|
|
$failed | ForEach-Object { Write-Host " - $_" -ForegroundColor Red }
|
|
Write-Host "`nRe-run after resolving, or merge them manually:" -ForegroundColor Yellow
|
|
$failed | ForEach-Object { Write-Host " git merge origin/$_" -ForegroundColor Yellow }
|
|
} else {
|
|
Write-Host "`nAll branches merged successfully!" -ForegroundColor Green
|
|
Write-Host "Run 'git push origin release/lts-2.0.0' to update the remote." -ForegroundColor Cyan
|
|
}
|