Azure DevOps'ta parolanın sona erme tarihini güncelleme

Dec 22 2020

Azure derleme işlem hattında UnitTest projesini çalıştırırken. Feryat hatası alıyorum:

Restoring NuGet package Microsoft.Portal.TestFramework.UnitTest.6.672.0.5.
  GET https://msazure.pkgs.visualstudio.com/_packaging/ae95f9fe-9452-4aa1-b167-92a7fcfc670f/nuget/v3/flat2/microsoft.portal.testframework.unittest/6.672.0.5/microsoft.portal.testframework.unittest.6.672.0.5.nupkg
  GET https://msazure.pkgs.visualstudio.com/_packaging/d387a8da-063b-4a96-afb8-093924314a98/nuget/v3/flat2/microsoft.portal.testframework.unittest/6.672.0.5/microsoft.portal.testframework.unittest.6.672.0.5.nupkg
  GET https://msazure.pkgs.visualstudio.com/_packaging/ab5b6ade-9b91-4eb5-8dc6-eacc4a5cdda7/nuget/v3/flat2/microsoft.portal.testframework.unittest/6.672.0.5/microsoft.portal.testframework.unittest.6.672.0.5.nupkg
MSBuild auto-detection: using msbuild version '16.8.2.56705' from 'C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\MSBuild\Current\Bin'.
  GET https://api.nuget.org/v3-flatcontainer/microsoft.portal.testframework.unittest/6.672.0.5/microsoft.portal.testframework.unittest.6.672.0.5.nupkg
  NotFound https://api.nuget.org/v3-flatcontainer/microsoft.portal.testframework.unittest/6.672.0.5/microsoft.portal.testframework.unittest.6.672.0.5.nupkg 57ms
    [CredentialProvider]Using the ADAL UI  flow for uri https://msazure.pkgs.visualstudio.com/_packaging/Toolset/nuget/v3/index.json. User sign-in required in a pop-up authentication window.

Kimlik doğrulamanın gerekli olduğunu belirtir.

Bu gönderiye göre NuGet Paketi Nuke.Common / NuGet.CommandLine aracılığıyla dağıtılırken Azure Auth nasıl geçirilir , önerilen çözüm " Parola DevOps üzerindeki son kullanma tarihini güncellemektir ".

Herkes Azure DevOps'ta sona erme tarihini nasıl güncelleyebileceğimi söyleyebilir. Bu yazıya yorum yapacak kadar itibarım yoktu, bu yüzden yeni bir gönderi oluşturmam gerekiyordu.

Yanıtlar

1 DanCsharpster Dec 22 2020 at 22:02

Bu durumda parola için, bunun PAT veya Kişisel Erişim Belirteci anlamına geldiğine inanıyorum. Bu belirteç oluşturulan kullanıcı için Azure Devops'ta o kullanıcı olarak, kullanıcı ayarları -> kişisel erişim belirteçlerine tıklayın. Ardından istenen jetonu bulun ve düzenle'yi tıklayın, ardından istenen yeni bir son kullanma tarihi seçin.

Güncelleme: burada tanımlanan yaml işlem hattı tanımına nuget kimlik doğrulama görevini eklediğinizden emin olun .

1 LeoLiu-MSFT Dec 24 2020 at 14:53

Azure DevOps'ta parolanın sona erme tarihini güncelleme

Hata günlüğüne göre, şu URL'ye erişebildiğinizden emin olmalısınız:

https://msazure.pkgs.visualstudio.com/_packaging/Toolset/nuget/v3/index.json

Bu, erişim için belirli izinler gerektiren bir beslemedir. Hesabınıza erişim izniniz olup olmadığını kontrol etmek için bu URL'yi tarayıcınızda özel modda açabilirsiniz.

Bu URL'ye erişebildiyseniz, nuget.config:sayfanıza aşağıdakileri eklemeyi deneyebilirsiniz.

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <packageSources>
    <add key="MyAzureFeed" value="https://msazure.pkgs.visualstudio.com/_packaging/Toolset/nuget/v3/index.json" />
    <add key="nuget.org" value="https://api.nuget.org/v3/index.json" />
  </packageSources>

  <packageSourceCredentials>
    <MyAzureFeed>
      <add key="Username" value="YouAccount" />
      <add key="ClearTextPassword" value="xxxx(could be your PAT)" />
    </MyAzureFeed>
  </packageSourceCredentials>

</configuration>

Ardışık düzen oluşturmak için özel aracı kullanıyorsanız, parolayı doğrudan sunucuda da güncelleyebilirsiniz:

Özel NuGet Yayını - Şifreyi Hatırlama

Not: Bu URL'yi tarayıcımda açabilseydim, ancak bu besleme kaynağını test olarak Visual Studio'ma ekledikten sonra bu beslemeden hala bu paketi bulamadıysam, yalnızca paketi bulabilirdim microsoft.portal.testframework(İzinlerimin yetersiz olup olmadığından emin değilim ):

1 HughLin-MSFT Dec 23 2020 at 15:55

Ardışık düzeninizin geri yükleme görevinde aşağıdaki seçeneği seçiyor musunuz:

Genellikle bu seçeneğin seçilmesi kimlik doğrulama gerektirmez.

İkinci seçeneği seçerseniz, NuGet araçlarını Azure Yapıları ve diğer NuGet depolarıyla kimlik doğrulaması yapacak şekilde yapılandırmak için geri yükleme görevinden önce bir NuGet kimlik doğrulama görevi ekleyebilirsiniz .

NuGet kimlik bilgisi eklentisini kullanmanın yanı sıra, NuGet kaynağına kimlik bilgileri eklemek için dotnet cli'yi de kullanabilirsiniz.

RUN dotnet nuget add source "your-source-url" --name "source-name" --username "useless" --password "$PAT" --store-password-in-clear-text
RUN dotnet restore

İşte başvurabileceğiniz bir durum .

Azhar Dec 28 2020 at 18:37

Topluluk üyelerinden yardım aldıktan sonra, AzureDevOps derleme işlem hattında UnitTest'i çalıştırmama yardımcı olan son çözümümü yayınlıyorum. UnitTests'i çalıştırmadan önce eklediğim adımlar:

  1. NuGet geri yükleme görevi eklendi
  2. NuGet kimlik doğrulama görevi eklendi

İşte derleme ardışık düzeni ekran görüntüsü.