Создание конвейера выпуска для синхронизации производственного репо

#azure-devops

Вопрос:

У меня есть репозиторий разработки, в котором, когда в него вводятся новые изменения, должен выполняться конвейер выпуска. Конвейер должен принять изменения, внесенные в это хранилище, и синхронизировать их в производственном репозитории. Все хранилища расположены в Azure DevOps. Каков самый простой способ добиться чего-то подобного?

Комментарии:

1. Используйте ветви. Для этого они и предназначены.

2. @DanielMann Я согласен, но это не решает проблему синхронизации двух разных репозиториев

Ответ №1:

Создание конвейера выпуска для синхронизации производственного репо

В данный момент нет другого способа достичь этого.

Чтобы решить эту проблему, нам нужно создать конвейер для production репозитория, чтобы вызвать командную строку git для клонирования development репозитория, а затем перейти в production репозиторий:

 Write-Host Starting the synchronization process
mkdir copyrepo
$sourceURL = "https://$(AZUREPO1PAT)@$(AZUREPO1)"
$destURL = "https://$(AZUREPO2PAT)@$(AZUREPO2)"
Set-Location "$(Build.SourcesDirectory)/copyrepo"
git clone --mirror $sourceURL
Set-Location "$(Build.SourcesDirectory)/copyrepo/"
Write-Host "*****Git removing remote origin****"
git remote rm origin
Write-Output "*****Git remote add****"
git remote add --mirror=fetch origin $destURL
Write-Output "*****Git fetch origin****"
git fetch $sourceURL
Write-Output "*****Git push to Azure Repos****"
git push origin --all -f
 

И мы также могли бы включить ИЦ для этого трубопровода. В этом случае, как только в репозиторий будут отправлены какие-либо изменения development , это вызовет синхронизацию конвейера с production репозиторием.

Вы можете проверить эту тему для получения более подробной информации.