Skip to content

Commit

Permalink
add github action to sync generation branch to future branch (#25019)
Browse files Browse the repository at this point in the history
  • Loading branch information
VeryEarly authored May 29, 2024
1 parent 80325ac commit 378209f
Showing 1 changed file with 54 additions and 0 deletions.
54 changes: 54 additions & 0 deletions .github/workflows/sync-generation-to-future.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
name: sync-generation
run-name: Sync commit from generation to future - temporary
env:
GH_TOKEN: ${{ github.token }}
on:
push:
branches:
- 'generation'
jobs:
sync_generation:
runs-on: ubuntu-latest
permissions:
contents: write
steps:
- uses: actions/setup-node@v4
with:
node-version: 14.17.1
- run: npm install -g autorest@latest
- uses: actions/checkout@v4
with:
ref: 'future'
- name: sync generation
shell: pwsh
run: |
Install-Module -Name PowerShellGet -RequiredVersion 2.2.3 -Force;
Install-Module -Name platyPS -RequiredVersion 0.14.2 -Force;
git config user.email "[email protected]";
git config user.name "azure-powershell-bot";
$commitId = '${{ github.sha }}'
$repoRoot = '${{ github.workspace }}'
git fetch origin generation
git cherry-pick $commitId --strategy-option theirs
git reset HEAD~1
<#
calculate changed modules
#>
$modulePaths = @()
git status --short | Where-Object { $_ -match ".*src.*" } | ForEach-Object { $modulePaths += $_.substring($_.IndexOf("src"), $_.IndexOf(".Autorest")+6) }
if (0 -eq $modulePaths.Count) {
return
}
$modulePaths | Select-Object -Unique
foreach ($modulePath in $modulePaths) {
$modulePath = Join-Path $repoRoot $modulePath
Set-Location $modulePath
autorest --max-memory-size=8192
./build-module.ps1
}
Set-Location $repoRoot
git add src
git commit -m "cherry-pick $commitId from generation"
git push origin future

0 comments on commit 378209f

Please sign in to comment.