NuGetAuthenticate는 패키지 피드에 대한 인증을 구성합니다. 인증 작업이 성공해도 dotnet, nuget.exe 또는 MSBuild의 아웃바운드 프록시는 구성되지 않습니다.

자격 증명 설정이 성공했고 이어지는 복원에 HTTP 프록시가 필요하다면 해당 프로세스의 환경을 제공하세요. 예를 들면 다음과 같습니다.

- task: NuGetAuthenticate@1

- script: dotnet restore
  env:
    http_proxy: $(proxyUrl)
    no_proxy: packages.corp.example,localhost,127.0.0.1

proxyUrl는 원하는 전체 프록시 URL을 담고 있는 기존 파이프라인 변수입니다. 바이패스 목록은 실제 피드 라우팅 정책에 맞게 조정하세요. 공용 중개자를 통해 허용되는 공용 피드의 경우 HTTP 프록시 목록이 계정 없는 proxyUrl 후보를 제공합니다. 프라이빗 피드의 바이패스는 그대로 두세요. 이 조각은 프로젝트의 패키지 원본이 이미 구성되어 있다고 가정합니다.

Linux와 macOS에서 문서화된 환경 변수 이름은 소문자입니다. http_proxy라는 파이프라인 변수는 자동으로 내보내질 때 대문자가 될 수 있습니다. env를 명시적으로 매핑하면 도구에 필요한 키가 유지됩니다.

자체 호스팅 에이전트의 경우 이 값을 에이전트 프로세스의 환경에 설정하고 변경한 뒤 해당 에이전트를 다시 시작하는 방법도 있습니다. 다른 터미널의 환경은 이미 실행 중인 서비스를 갱신하지 않습니다.

NuGet은 구성 파일의 프록시 항목도 지원합니다. 이러한 항목은 패키지 원본 자격 증명과 분리해 두고, 다른 계정으로 복원이 실행될 때 유효한 구성 범위를 확인하세요.

복원된 패키지는 피드의 첫 번째 URL 외에 더 많은 것을 요구할 수 있습니다. 이후 패키지 다운로드나 인증 호스트가 실패하면 프록시와 바이패스 정책을 평가할 때 그 실제 호스트 이름을 사용하세요.

관련 글