Как мне пройти аутентификацию с TFVC из задачи релиз-конвейера? - PullRequest
0 голосов
/ 04 февраля 2019

У меня есть конвейер выпуска и я хочу добавить этап с задачей, которая запишет номер версии в файл, который хранится в TFVC.

Я пытался использовать задачу powershell, которая вызывает tf.exe для работы с файлами.Я подумал, что начну с того, что попробую загрузить файл, прежде чем подумать о том, чтобы попытаться вернуть его обратно. Кажется, я не могу разрешить использование tf.exe для загрузки файла.Вы можете помочь?

    $workspaceName = "temp_123"

    $login = "/login:.,$env:SYSTEM_ACCESSTOKEN"

    & tf vc workspace /new /noprompt $workspaceName /collection:https://mycorp.visualstudio.com $login
    Try
    {
        & tf vc workfold /unmap "$/" /workspace:$workspaceName $login
        & tf vc workfold /map "$/SomePath" $dir /workspace:$workspaceName $login
        & tf vc get $login
    }
    Finally
    {
        & tf vc workspace /delete $workspaceName /collection:https://mycorp.visualstudio.com $login
    }

        # Verify it appeared
    if (-Not (Test-Path "$dir\Version.txt")) { throw "failed to download" }

Я получаю эту ошибку:

TF30063: You are not authorized to access https://mycorp.visualstudio.com/

Как вы аутентифицируетесь с tf.exe, когда у вас есть токен доступа к системе?Или есть лучший способ загрузки и регистрации файлов.

1 Ответ

0 голосов
/ 05 февраля 2019

Для аутентификации из Azure DevOps из tf.exe необходимо добавить /loginType:OAuth к команде.

Например:

tf vc workspace /new /noprompt $workspaceName /collection:https://mycorp.visualstudio.com /loginType:OAuth /login:.,[OAuth token]

Кроме того, есть Регистрацияизменяет задачу в Расширении TFVC Build Tasks , что позволяет использовать ее для проверки изменений без проблем.

enter image description here

...