#azure-devops
#azure-devops
Вопрос:
У меня есть сценарий PowerShell, который запускает команду, в данном случае это команда npx. Один из аргументов команды содержит пробелы, локально он работает нормально, но в Azure DevOps кажется, что он удаляет кавычки. Это потому, что сценарий завершается с ошибкой, жалуясь на значение аргумента, которое является всем до первого появления пробела.
Сценарий PowerShell выглядит немного упрощенным, например:
npx testcafe "$env:TESTCAFE_BROWSER_NAME" tests/**/*
Значение переменной среды может быть примерно таким chrome@87.0:OS X Catalina
Ошибка в Azure Devops будет выглядеть примерно так:
ERROR Unable to find the browser. "chrome@87.0:OS" is not a browser alias or path to an executable file.
При запуске сценария на моем локальном компьютере с тем же значением для переменной среды он завершается успешно без каких-либо ошибок.
Комментарии:
1. Вы можете попробовать запустить с помощью автономного агента, возникнет ли у вас та же проблема?
Ответ №1:
Вы можете попробовать следующие обходные пути, чтобы сохранить кавычки в сценарии.
1, вы можете использовать обратную галочку «`», чтобы избежать кавычек. Смотрите ниже:
npx testcafe "`"$env:TESTCAFE_BROWSER_NAME`"" tests/**/*
2, Вы также можете определить значение с помощью кавычек в переменных среды. Определите переменную среды на вкладке Переменные, как показано ниже: