51 lines
1.8 KiB
YAML
51 lines
1.8 KiB
YAML
### 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
|
|
|
|
# This step is needed so that when we get a detached HEAD / shallow clone,
|
|
# we still pull the commit into the temporary installer clone to use it during the sync.
|
|
- script: |
|
|
git branch installer-head
|
|
displayName: Label PR commit
|
|
workingDirectory: $(Agent.BuildDirectory)/installer
|
|
|
|
- script: |
|
|
git checkout -B ${{ parameters.vmrBranch }}
|
|
echo "##vso[task.setvariable variable=vmrBranch]${{ parameters.vmrBranch }}"
|
|
displayName: Prepare branch ${{ parameters.vmrBranch }}
|
|
workingDirectory: ${{ parameters.vmrPath }}
|
|
|
|
- script: >
|
|
./eng/vmr-sync.sh
|
|
--vmr ${{ parameters.vmrPath }}
|
|
--tmp $(Agent.TempDirectory)
|
|
--azdev-pat '$(System.AccessToken)'
|
|
--branch ${{ parameters.vmrBranch }}
|
|
--repository "installer:${{ parameters.targetRef }}"
|
|
--recursive
|
|
--remote "installer:$(pwd)"
|
|
--component-template $(Agent.BuildDirectory)/installer/src/VirtualMonoRepo/Component.template.md
|
|
--tpn-template $(Agent.BuildDirectory)/installer/src/VirtualMonoRepo/THIRD-PARTY-NOTICES.template.txt
|
|
--debug
|
|
displayName: Synchronize dotnet/dotnet
|
|
workingDirectory: $(Agent.BuildDirectory)/installer
|