### 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