너겟 또는 닷넷 CodeArtifact CLI와 함께 사용 - CodeArtifact

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

너겟 또는 닷넷 CodeArtifact CLI와 함께 사용

nuget및 와 같은 CLI 도구를 사용하여 패키지를 게시하고 dotnet 사용할 수 있습니다. CodeArtifact 이 문서에서는 CLI 도구를 구성하고 이를 사용하여 패키지를 게시하거나 사용하는 방법에 관한 정보를 제공합니다.

nuget 또는 dotnet CLI 구성하기

자격 증명 공급자를 사용하여, 또는 수동으로 nuget 또는 dotnet CodeArtifact NuGet CLI를 구성할 수 있습니다. AWS CLI설정을 간소화하고 인증을 지속하려면 자격 증명 공급자를 NuGet 사용하여 구성하는 것이 좋습니다.

방법 1: CodeArtifact NuGet 자격 증명 공급자를 사용하여 구성

CodeArtifact NuGet 자격 증명 공급자는 CodeArtifact CLI NuGet 도구를 사용하여 인증 및 구성을 간소화합니다. CodeArtifact 인증 토큰은 최대 12시간 동안 유효합니다. nuget 또는 dotnet CLI를 사용하는 동안 토큰을 수동으로 갱신할 필요가 없도록 보안 인증 공급자는 현재 토큰이 만료되기 전에 정기적으로 새 토큰을 발행합니다.

중요

자격 증명 공급자를 사용하려면 수동으로 추가하거나 이전에 구성을 NuGet 실행하여 추가했을 수 있는 기존 AWS CodeArtifact 자격 증명을 nuget.config 파일에서 모두 aws codeartifact login 삭제해야 합니다.

자격 증명 제공자 설치 및 구성 CodeArtifact NuGet

dotnet
  1. 최신 버전의 AWS를 다운로드하십시오. CodeArtifact. NuGet. CredentialProvider NuGet.org의 도구를 사용하여 다음 dotnet 명령을 실행합니다.

    dotnet tool install -g AWS.CodeArtifact.NuGet.CredentialProvider
  2. codeartifact-creds install명령을 사용하여 자격 증명 공급자를 NuGet 플러그인 폴더에 복사합니다.

    dotnet codeartifact-creds install
  3. (선택 사항): 자격 증명 공급자와 함께 사용할 AWS 프로필을 설정합니다. 설정하지 않으면 보안 인증 공급자가 기본 프로파일을 사용합니다. AWS CLI 프로필에 대한 자세한 내용은 명명된 프로필을 참조하십시오.

    dotnet codeartifact-creds configure set profile profile_name
nuget

NuGet CLI를 사용하여 Amazon S3 버킷에서 CodeArtifact NuGet 자격 증명 공급자를 설치하고 구성하려면 다음 단계를 수행하십시오. 자격 증명 공급자는 기본 AWS CLI 프로필을 사용합니다. 프로필에 대한 자세한 내용은 명명된 프로필을 참조하십시오.

  1. Amazon S3 버킷에서 최신 버전의 CodeArtifact NuGet 자격 증명 공급자 (codeartifact-nuget-credentialprovider.zip) 를 다운로드합니다.

    이전 버전을 보고 다운로드하려면 CodeArtifact NuGet 자격 증명 공급자 버전를 참조하십시오.

  2. 파일 압축을 풉니다.

  3. AWS를 복사합니다. CodeArtifact. NuGetCredentialProvidernetfx %user_profile%/.nuget/plugins/netfx/ 폴더에서 윈도우 또는 리눅스 또는 macOS로 이동할 수 ~/.nuget/plugins/netfx 있는 폴더입니다.

  4. AWS를 복사합니다. CodeArtifact. NuGetCredentialProvider넷코어 %user_profile%/.nuget/plugins/netcore/ 폴더에서 윈도우 또는 리눅스 또는 macOS로 ~/.nuget/plugins/netcore 연결되는 폴더입니다.

리포지토리를 생성하고 보안 인증 공급자를 구성한 후 nuget 또는 dotnet CLI 도구를 사용하여 패키지를 설치하고 게시할 수 있습니다. 자세한 내용은 에서 패키지를 사용하십시오. NuGet CodeArtifact 패키지를 에 게시하십시오 NuGet . CodeArtifact 섹션을 참조하세요.

방법 2: 로그인 명령으로 nuget 또는 dotnet을 구성하기

codeartifact login 명령은 NuGet 구성 파일에 리포지토리 엔드포인트와 인증 토큰을 AWS CLI 추가하여 nuget 또는 dotnet이 리포지토리에 연결할 수 있도록 합니다. CodeArtifact 이렇게 하면 Windows 및 %appdata%\NuGet\NuGet.Config ~/.config/NuGet/NuGet.Config Mac/Linux용 사용자 수준 NuGet 구성이 수정됩니다. ~/.nuget/NuGet/NuGet.Config 구성에 대한 자세한 내용은 일반 NuGet 구성을 참조하십시오. NuGet

login 명령을 사용하여 nuget 또는 dotnet을 구성하기
  1. 에 설명된 대로 에서 사용할 AWS 자격 증명을 구성하십시오CodeArtifact 시작하기. AWS CLI

  2. NuGet CLI 도구 (nuget또는dotnet) 가 제대로 설치 및 구성되었는지 확인합니다. 지침은 nuget 또는 dotnet 설명서를 참조하십시오.

  3. CodeArtifact login명령을 사용하여 에서 사용할 자격 증명을 가져올 수 있습니다. NuGet

    참고

    소유한 도메인의 리포지토리에 액세스하는 경우 --domain-owner를 포함하지 않아도 됩니다. 자세한 정보는 크로스 계정 도메인을 참조하세요.

    dotnet
    중요

    Linux 및 macOS 사용자: Windows 이외의 플랫폼에서는 암호화를 지원하지 않으므로 가져온 보안 인증은 구성 파일에 일반 텍스트로 저장됩니다.

    aws codeartifact login --tool dotnet --domain my_domain --domain-owner 111122223333 --repository my_repo
    nuget
    aws codeartifact login --tool nuget --domain my_domain --domain-owner 111122223333 --repository my_repo

로그인 명령은 다음과 같습니다.

  • 자격 증명을 CodeArtifact 사용하여 인증 토큰을 가져오십시오. AWS

  • NuGet 패키지 소스의 새 항목으로 사용자 수준 NuGet 구성을 업데이트하십시오. CodeArtifact 리포지토리 엔드포인트를 가리키는 소스가 domain_name/repo_name 호출됩니다.

login 직접 호출 후의 기본 승인 기간은 12시간이며, 토큰을 주기적으로 재발급하려면 login를 직접적으로 호출해야 합니다. login 명령으로 만든 인증 토큰에 대한 자세한 내용은 login 명령으로 생성된 토큰을 참조하십시오.

리포지토리를 생성하고 인증을 구성한 후 nuget, dotnet 또는 msbuild CLI 클라이언트를 사용하여 패키지를 설치하고 게시할 수 있습니다. 자세한 정보는 에서 패키지를 사용하십시오. NuGet CodeArtifact 패키지를 에 게시하십시오 NuGet . CodeArtifact 를 참조하세요.

방법 3: 로그인 명령 없이 nuget 또는 dotnet 구성하기

수동 구성의 경우 NuGet 구성 파일에 리포지토리 엔드포인트와 인증 토큰을 추가하여 nuget 또는 dotnet이 리포지토리에 연결할 수 있도록 해야 합니다. CodeArtifact

리포지토리에 연결하도록 nuget 또는 dotnet을 수동으로 구성하십시오. CodeArtifact

  1. 명령을 사용하여 CodeArtifact 리포지토리 엔드포인트를 결정합니다. get-repository-endpoint AWS CLI

    aws codeartifact get-repository-endpoint --domain my_domain --domain-owner 111122223333 --repository my_repo --format nuget

    출력 예제:

    { "repositoryEndpoint": "https://my_domain-111122223333.d.codeartifact.us-west-2.amazonaws.com/nuget/my_repo/" }
  2. get-authorization-token AWS CLI 명령을 사용하여 패키지 관리자로부터 리포지토리에 연결하는 데 필요한 인증 토큰을 가져옵니다.

    aws codeartifact get-authorization-token --domain my_domain

    출력 예제:

    { "authorizationToken": "eyJ2I...viOw", "expiration": 1601616533.0 }
  3. 3단계에서 get-repository-endpoint가 반환한 URL에 /v3/index.json을 추가하여 전체 리포지토리 엔드포인트 URL을 생성합니다.

  4. 1단계의 리포지토리 엔드포인트와 2단계의 인증 토큰을 사용하도록 nuget 또는 dotnet을 구성합니다.

    참고

    nuget 또는 dotnet이 /v3/index.json 저장소에 성공적으로 연결되려면 소스 URL이 로 끝나야 합니다. CodeArtifact

    dotnet

    Linux 및 macOS 사용자: Windows 이외의 플랫폼에서는 암호화를 지원하지 않으므로 다음 명령에 --store-password-in-clear-text 플래그를 추가해야 합니다. 단, 이렇게 하면 비밀번호가 구성 파일에 일반 텍스트로 저장됩니다.

    dotnet nuget add source https://my_domain-111122223333.d.codeartifact.us-west-2.amazonaws.com/nuget/my_repo/v3/index.json --name packageSourceName --password eyJ2I...viOw --username aws
    참고

    기존 소스를 업데이트하려면 dotnet nuget update source 명령을 사용하세요.

    nuget
    nuget sources add -name domain_name/repo_name -Source https://my_domain-111122223333.d.codeartifact.us-west-2.amazonaws.com/nuget/my_repo/v3/index.json -password eyJ2I...viOw -username aws

    출력 예제:

    Package source with Name: domain_name/repo_name added successfully.

에서 패키지를 사용하십시오. NuGet CodeArtifact

NuGet 로 CodeArtifact 구성한 후에는 CodeArtifact 리포지토리 또는 해당 업스트림 리포지토리 중 하나에 저장된 NuGet 패키지를 사용할 수 있습니다.

또는 을 사용하여 CodeArtifact 리포지토리 또는 해당 업스트림 리포지토리 중 하나의 패키지 버전을 사용하려면 다음 명령을 실행하여 PackageName을 사용하려는 패키지 이름으로 바꾸고 구성 파일의 리포지토리 소스 이름으로 대체합니다. nuget dotnet packageSourceName CodeArtifact NuGet login명령을 사용하여 NuGet 구성을 구성한 경우 소스 이름은 도메인_이름/repo_name입니다.

참고

패키지가 요청되면 NuGet 클라이언트는 해당 패키지의 어떤 버전이 존재하는지 캐시합니다. 이 동작으로 인해 원하는 버전이 제공되기 전에 이전에 요청된 패키지의 설치가 실패할 수 있습니다. 이러한 실패를 방지하고 기존 패키지를 성공적으로 설치하려면 또는 를 사용하여 설치하기 전에 NuGet 캐시를 nuget locals all --clear 지우거나dotnet nuget locals all --clear, 에 대한 -NoCache nuget 옵션 또는 옵션을 제공하여 installrestore 명령 실행 중에 캐시를 사용하지 않도록 할 수 있습니다. --no-cache dotnet

dotnet
dotnet add package packageName --source packageSourceName
nuget
nuget install packageName -Source packageSourceName

특정 버전 패키지 설치 방법

dotnet
dotnet add package packageName --version 1.0.0 --source packageSourceName
nuget
nuget install packageName -Version 1.0.0 -Source packageSourceName

자세한 내용은 Microsoft 설명서nuget.exe CLI를 사용하여 패키지 관리 또는 dotnet CLI를 사용하여 패키지 설치 및 관리를 참조하십시오.

NuGet.org에 대한 외부 연결을 통해 리포지토리를 구성하면 CodeArtifact 리포지토리를 통해.org의 NuGet 패키지를 사용할 수 NuGet 있습니다. NuGet.org에서 사용한 패키지는 저장소에 인제스트되어 저장됩니다. CodeArtifact 외부 연결 추가에 대한 자세한 내용은 CodeArtifact 리포지토리를 공용 리포지토리에 연결을 참조하세요.

패키지를 에 게시하십시오 NuGet . CodeArtifact

NuGet 로 구성한 후에는 nuget 또는 를 사용하여 패키지 CodeArtifact 버전을 리포지토리에 dotnet 게시할 수 있습니다. CodeArtifact

패키지 버전을 CodeArtifact 리포지토리로 푸시하려면 NuGet 구성 .nupkg 파일에 파일의 전체 경로와 CodeArtifact 리포지토리의 소스 이름을 포함하여 다음 명령을 실행합니다. login명령을 사용하여 NuGet 구성을 구성한 경우 소스 이름은 입니다domain_name/repo_name.

참고

게시할 NuGet 패키지가 없는 경우 패키지를 만들 수 있습니다. 자세한 내용은 Microsoft 설명서패키지 생성 워크플로를 참조하십시오.

dotnet
dotnet nuget push path/to/nupkg/SamplePackage.1.0.0.nupkg --source packageSourceName
nuget
nuget push path/to/nupkg/SamplePackage.1.0.0.nupkg -Source packageSourceName

CodeArtifact NuGet 자격 증명 제공자 참조

CodeArtifact NuGet 자격 증명 공급자를 사용하면 리포지토리를 쉽게 구성하고 인증할 수 NuGet 있습니다. CodeArtifact

CodeArtifact NuGet 자격 증명 공급자 명령

이 섹션에는 CodeArtifact NuGet 자격 증명 공급자의 명령 목록이 포함되어 있습니다. 다음 예제와 같이 이러한 명령 앞에 접두사 dotnet codeartifact-creds 를 붙여야 합니다.

dotnet codeartifact-creds command
  • configure set profile profile: 제공된 프로필을 사용하도록 자격 증명 공급자를 구성합니다. AWS

  • configure unset profile: 구성된 프로필이 설정된 경우 해당 프로필을 제거합니다.

  • install: 보안 인증 공급자를 plugins 폴더에 복사합니다.

  • install --profile profile: 자격 증명 공급자를 plugins 폴더에 복사하고 제공된 프로필을 사용하도록 구성합니다. AWS

  • uninstall: 보안 인증 공급자를 제거합니다. 이렇게 해도 구성 파일에 대한 변경 내용은 제거되지 않습니다.

  • uninstall --delete-configuration: 보안 인증 공급자를 제거하고 구성 파일의 모든 변경 사항을 제거합니다.

CodeArtifact NuGet 자격 증명 제공자 로그

CodeArtifact NuGet 자격 증명 공급자에 대한 로깅을 활성화하려면 사용자 환경에서 로그 파일을 설정해야 합니다. 보안 인증 공급자 로그에는 다음과 같은 유용한 디버깅 정보가 포함되어 있습니다.

  • 연결에 사용되는 AWS 프로필

  • 모든 인증 오류

  • 제공된 엔드포인트가 CodeArtifact URL이 아닌 경우

CodeArtifact NuGet 자격 증명 제공자 로그 파일 설정

export AWS_CODEARTIFACT_NUGET_LOGFILE=/path/to/file

로그 파일이 설정되면 모든 codeartifact-creds 명령은 해당 로그 출력을 해당 파일의 내용에 추가합니다.

CodeArtifact NuGet 자격 증명 공급자 버전

다음 표에는 CodeArtifact NuGet 자격 증명 공급자의 버전 기록 정보와 다운로드 링크가 나와 있습니다.

버전 변경 게시 날짜 다운로드 링크 (S3)

1.0.2 (최신)

업그레이드된 종속성

2024년 6월 26일

v1.0.2 다운로드

1.0.1

넷5, 넷6 및 SSO 프로파일 지원이 추가되었습니다

2022년 3월 5일

v1.0.1 다운로드

1.0.0

최초 자격 증명 제공업체 출시 CodeArtifact NuGet

2020년 11월 20일

v1.0.0 다운로드