dotnet-installer/eng/pipelines/templates/steps/vmr-pull-updates.yml

56 lines
1.9 KiB
YAML
Raw Normal View History

### These steps synchronize new code from product repositories into the VMR (https://github.com/dotnet/dotnet).
### They initialize the darc CLI and pull the new updates.
### Changes are applied locally onto the already cloned VMR (located in $vmrPath).
parameters:
- name: vmrBranch
displayName: dotnet/dotnet branch to use
type: string
- name: targetRef
displayName: Target revision in dotnet/installer to synchronize
type: string
default: $(Build.SourceVersion)
- name: vmrPath
displayName: Path where the dotnet/dotnet is checked out to
type: string
default: $(Agent.BuildDirectory)/vmr
steps:
- checkout: self
displayName: Clone dotnet/installer
path: installer
- script: |
source ./eng/common/tools.sh
InitializeDotNetCli true
./.dotnet/dotnet tool restore
displayName: Restore darc
workingDirectory: $(Agent.BuildDirectory)/installer
- script: git checkout -B ${{ parameters.vmrBranch }}
displayName: Prepare branch ${{ parameters.vmrBranch }}
workingDirectory: ${{ parameters.vmrPath }}
# This step make sure that darc finds the PR commit (which might be in a fork of installer)
# The cloned folder does have the commit so we copy it into temp where the tooling will find it
# We also cannot keep the AzDO remote as pulling from it would require a token
- script: |
cp -r $(Agent.BuildDirectory)/installer $(Agent.TempDirectory)/03298978DFFFCD23
cd $(Agent.TempDirectory)/03298978DFFFCD23
git remote remove origin
git remote add origin https://github.com/dotnet/installer
displayName: Prepare dotnet/installer clone
- script: >
$(Agent.BuildDirectory)/installer/.dotnet/dotnet darc vmr update
--vmr ${{ parameters.vmrPath }}
--tmp $(Agent.TempDirectory)
--github-pat $(BotAccount-dotnet-bot-repo-PAT)
--recursive
--verbose
installer:${{ parameters.targetRef }}
displayName: Synchronize dotnet/dotnet
workingDirectory: $(Agent.BuildDirectory)/installer