Azure DevOps - Во время конвейера сборки вы знаете путь, по которому агент загружает файлы локально? - PullRequest
2 голосов
/ 17 января 2020

Мы используем Microsoft Hosted Agent для запуска конвейера сборки для сценария автоматического тестирования нашего приложения. Чего мы хотели бы добиться, так это с помощью нашей процедуры автоматизации загрузить файл (из безголового браузера chrome), затем перейти к пути, по которому он был загружен, и открыть его.

Как мне найти путь, по которому файлы загружаются внутри Агента?

Ответы [ 2 ]

2 голосов
/ 17 января 2020

При установке агента вы указываете рабочий каталог. В конвейерных задачах вы можете точно определить, где в этом каталоге находятся файлы с такими переменными, как $ (Agent.BuildDirectory). Возможно, это не точное местоположение, которое вам нужно, но я думаю, что оно в правильном направлении.

Полный список предопределенных переменных см. Здесь: https://docs.microsoft.com/en-us/azure/devops/pipelines/build/variables?view=azure-devops&tabs=yaml

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

Вы можете проверить этот документ :

enter image description here

Так что для Linux его местоположение по умолчанию /home/<username>/Downloads.

Я делаю тест в Microsoft hosted agent-window2019 с тестовым C# кодом (подсказка от Даниэль! ), например:

        static void Main(string[] args)
        {
            string FILEURI = "https://www.nuget.org/api/v2/package/Cauldron.Newton/2.0.0";
            System.Diagnostics.Process prozess = new System.Diagnostics.Process();
            prozess.StartInfo.FileName = @"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe";
            prozess.StartInfo.Arguments = "--download " + FILEURI;
            prozess.Start();
            Console.WriteLine("Test starts.");
        }

И затем я использую команду как dir c:\users\VssAdministrator\cauldron.newton.2.0.0.nupkg /s /b чтобы найти местоположение загруженного файла: cauldron.newton.2.0.0.nupkg.

Затем я подтвердил, что местоположение загрузки по умолчанию Chrome по-прежнему C:/Users/{user}/Downloads, так же, как при использовании самоагента или при локальной загрузке. (VssAdministrator является пользователем при запуске windows размещенного агента)

enter image description here

Так что я думаю, что Linux размещенный агент должен вести себя аналогичным образом. Вы можете попробовать найти свой файл из папки /home/<username>/Downloads. Надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...