다음을 통해 공유


Azure Artifacts 피드에 연결(dotnet)

Azure DevOps Services | Azure DevOps Server 2022 | Azure DevOps Server 2020

Azure Artifacts를 사용하면 NuGet 패키지를 Azure Artifacts 피드에 원활하게 게시할 수 있으므로 피드의 표시 유형 설정에 따라 비공개 또는 공개적으로 다른 사용자와 공유할 수 있습니다. 이 가이드에서는 dotnet 명령줄 인터페이스를 사용하여 Azure Artifacts 피드로 인증하도록 프로젝트를 설정하는 방법을 안내합니다.

필수 구성 요소

피드에 연결

  1. 아티팩트을 선택한 후 드롭다운 메뉴에서 피드를 선택합니다.

  2. 연결을 선택하여피드한 다음, NuGet 섹션에서 dotnet 선택합니다.

    dotnet을 사용하여 피드에 연결하는 방법을 보여 주는 스크린샷

  3. Project 설정 지침에 따라 nuget.config 파일을 설정하십시오. 파일의 구조는 다음과 유사합니다.

    • 프로젝트 범위 피드:

      <?xml version="1.0" encoding="utf-8"?>
      <configuration>
        <packageSources>
          <clear />
          <add key="<FEED_NAME>" value="https://pkgs.dev.azure.com/<ORGANIZATION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/nuget/v3/index.json" />
        </packageSources>
      </configuration>
      
    • 조직 범위 피드:

      <?xml version="1.0" encoding="utf-8"?>
      <configuration>
        <packageSources>
          <clear />
          <add key="<FEED_NAME>" value="https://pkgs.dev.azure.com/<ORGANIZATION_NAME>/_packaging/<FEED_NAME>/nuget/v3/index.json" />
        </packageSources>
      </configuration>
      
  1. Azure DevOps 컬렉션에 로그인한 다음 프로젝트로 이동합니다.

  2. 아티팩트을 선택하고, 드롭다운 메뉴에서 당신의 피드를 선택합니다.

  3. 피드에 연결을 선택한 후 왼쪽 탐색 창에서 dotnet를 선택합니다.

  4. Project 설치 섹션의 지침에 따라 nuget.config 파일을 구성하고 피드에 연결합니다.

    Azure DevOps Server 2020 및 2022에서 dotnet을 사용하여 피드에 연결하는 방법을 보여 주는 스크린샷

서비스 주체를 사용하여 NuGet 피드를 인증하다

서비스 주체를 사용하여 인증하려면 먼저 아티팩트 자격 증명 공급자설치해야 합니다.

아래와 같이 ARTIFACTS_CREDENTIALPROVIDER_FEED_ENDPOINTS 환경 변수를 설정하고 피드 URL, 서비스 주체의 애플리케이션(클라이언트) ID 및 주체 이름 또는 서비스 주체 인증서의 파일 경로를 지정합니다. (인증서 주체 이름 또는 파일 경로 사이에는 하나만 필요합니다.)

PowerShell에서 다음 코드를 입력합니다.

$env:ARTIFACTS_CREDENTIALPROVIDER_FEED_ENDPOINTS = @'{
    "endpointCredentials": [
        {
            "endpoint": "<FEED_URL>",
            "clientId": "<SERVICE_PRINCIPAL_APPLICATION_(CLIENT)_ID>",
            "clientCertificateSubjectName": "<SERVICE_PRINCIPAL_CERTIFICATE_NAME>",
            "clientCertificateFilePath": "<SERVICE_PRINCIPAL_CERTIFICATE_PATH>"
        }
    ]
}
'@