Как сослаться на файл, который был только что зарегистрирован в систему контроля версий? - PullRequest
0 голосов
/ 08 января 2020

У меня есть Azure конвейер, который запускается при "возврате" в систему управления исходным кодом TFS. Он также запускает простой сценарий PowerShell.

В этом триггере проверки я хотел бы также взять проверенный файл и сослаться на него в своем сценарии PowerShell. Файл представляет собой сценарий SQL, который я буду запускать на сервере SQL через PowerShell.

Как я могу сослаться на проверенный файл в моей задаче агента PowerShell? Например, вы можете ссылаться на вашу рабочую папку с помощью что-то вроде $(Build.Repository.LocalPath) в задаче PowerShell.

А затем $(Build.Repository.LocalPath)/mypath/myfile.sql для указанного c файла. Я предполагаю, что есть какая-то «рабочая» переменная, которая может ссылаться на элемент, который только что активировал триггер.

Ответы [ 2 ]

0 голосов
/ 08 января 2020

Если вы посмотрите здесь: https://docs.microsoft.com/en-us/azure/devops/pipelines/build/variables?view=azure-devops&tabs=yaml, здесь есть список всех переменных, доступных во время сборки, либо в задачах, либо в качестве переменных среды в сценариях. Одним из них является идентификатор изменения / фиксации, который запустил эту сборку "Build.SourceVersion". С этим значением вы можете выбрать любые файлы, которые являются частью этого набора изменений / фиксации, и использовать его в своем скрипте.

Удачи

ET

0 голосов
/ 08 января 2020

Кажется, вы включили триггер CI в своем конвейере сборки. Если вы просто измените файл, который существовал в управлении исходным кодом, то вы можете использовать что-то вроде $ (Build.SourcesDirectory) /myfile.sql в вашем скрипте.

Если вы регистрируете новый файл (просто один файл), затем вы можете получить набор изменений / фиксацию, включенный в эту сборку, в свой скрипт и извлечь файл.

Если вы отметите несколько файлов, это будет сложно, вам нужно получить набор изменений / фиксацию включите в эту сборку и запросите файл, чтобы получить нужный файл.

...