Мы по-прежнему используем TFS 2010 и msbuild в качестве системы сборки. В настоящее время нам нужно запустить сборку на jenkins, поэтому мы добавили exec-задачу в наш скрипт в msbuild, используя curl и файл netcr. К сожалению, наш URL содержит пробелы, которые мы замаскировали как «% 20», но после того, как наш exec-вызов был повышен в журнале сборки, появляется сообщение об ошибке, в котором говорится, что сервер не найден. Я понял, что msbuild пытается не использовать URL, как я его ввел, но msbuild размазывает наш "% 20" на пустые места, которые нам не нужны. В журнале сборки кажется, что эта команда была запущена:

"c:\Tools\Curl\curl.exe --netrc-file c:\Tools\Curl\.netrc https://my.domain.de/job/My Strange Build Artifacts/buildWithParameters?token=My-token-build&VERSION=1.2.3.10373"

Я пробовал несколько вариантов маскировки всего URL с помощью

" and &

но безуспешно

Итак, как я могу запустить задачу exec, как это:

<Exec ContinueOnError="true" Command="c:\Tools\Curl\curl.exe --netrc-file c:\Tools\Curl\.netrc &quot;https://my.domain.de/job/My%20Strange%20Build%20Artifacts/buildWithParameters?token=MY-token-build&amp;VERSION=1.2.3.10373&quot;">
  <Output TaskParameter="ExitCode" PropertyName="ResultUploadArtifactsToJenkins" />
</Exec>

в результате получится настоящая команда cmd-line, которая по-прежнему содержит «% 20»:

"c:\Tools\Curl\curl.exe --netrc-file c:\Tools\Curl\.netrc https://my.domain.de/job/My%20Strange%20Build%20Artifacts/buildWithParameters?token=My-token-build&VERSION=1.2.3.10373"

0