Публикация пакета nuget в Azure артефактов с помощью Nuget.exe запрашивает вход из браузера - PullRequest
0 голосов
/ 08 мая 2020

Я использовал Nuget.exe для sh пакета Azure артефактов. Но команда ниже всегда запрашивает вход в браузер. Пакет был успешно отправлен после входа в систему. Я не могу автоматизировать сборку с таким поведением. Как я могу обойти эту проблему?

nuget pu sh ./out/MonoTorrent.1.0.39.nupkg -Source "https://pkgs.dev.azure.com/myacct/myproject/_packaging/myfeed/nuget/v3/index.json" -ApiKey "myapikey" -ConfigFile Nuget .config

Nuget.Config

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <packageSources>
    <clear />
    <add key="myfeed" value="https://pkgs.dev.azure.com/myacct/myproject/_packaging/myfeed/nuget/v3/index.json" />
  </packageSources>
    <myfeed>
      <add key="Username" value="myliveidemail" />
      <add key="ClearTextPassword" value="myapikey" />
    </myfeed>
</configuration>

1 Ответ

0 голосов
/ 08 мая 2020

Пожалуйста, отметьте Azure Поставщик учетных данных артефактов . Вам необходимо установить его, и в первый раз, когда вы получите sh свой пакет, вам будет предложено

Чтобы войти, используйте веб-браузер, чтобы открыть страницу https://microsoft.com/devicelogin и введите код XXXXXXXX для аутентификации.

После входа в систему при следующем запуске вас не спросят.

Это мой файл nuget.config

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <packageSources>
    <clear />

    <add key="devops-manual" value="my-feed-url" />

  </packageSources>
</configuration>

Один ремак: вместо nuget я использовал dotnet pack и dotnet nuget push --source "devops-manual" --api-key az <package-path>. Когда в первом pu sh я добавил флаг --interactive, чтобы меня попросили войти в Azure DevOps.

EDIT

Вероятно, у меня отсутствует тег:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <packageSources>
    <clear />
    <add key="myfeed" value="https://pkgs.dev.azure.com/myacct/myproject/_packaging/myfeed/nuget/v3/index.json" />
  </packageSources>
  <packageSourceCredentials>
    <myfeed>
      <add key="Username" value="myliveidemail" />
      <add key="ClearTextPassword" value="myapikey" />
    </myfeed>
  </packageSourceCredentials>
</configuration>

EDIT2:

Вы также можете запустить эту команду (из конвейера или один раз авторизоваться на компьютере)

dotnet nuget add source your-source-url --name your-feed-name --username any-name-here --password PAT

Это добавит nuget источник для размещения на вашем компьютере, чтобы позже вы могли использовать этот источник без дополнительной аутентификации.

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