Azure DevOps 서비스 | Azure DevOps Server | Azure DevOps Server 2022
Azure Artifacts 업스트림 원본은 개발자가 여러 원본의 패키지를 단일 피드에 저장할 수 있도록 하여 패키지 관리를 간소화합니다. 업스트림 원본에서 패키지를 처음으로 설치하면 업스트림 원본을 일시적으로 사용할 수 없게 되는 경우에도 Azure Artifacts는 피드에 복사본을 자동으로 저장하여 지속적인 액세스를 보장합니다. 이 자습서에서는 Azure Artifacts의 업스트림 원본과 동일한 조직에서 내부 피드를 설정하는 방법을 안내합니다.
사전 요구 사항
| 제품 | 요구 사항 |
|---|---|
| Azure DevOps | - 하나의 Azure DevOps 조직. - Azure DevOps 프로젝트. |
피드 만들기
피드가 아직 없는 경우 다음 단계에 따라 피드를 만들고 공용 공용 레지스트리를 업스트림 원본으로 추가합니다.
Azure DevOps에 로그인하고 프로젝트로 이동합니다.
아티팩트,피드 만들기를 선택합니다.
피드의 이름을 입력하고 적절한 표시 유형 및 범위 설정을 선택합니다.
공용 공용 원본에서 패키지 포함을 선택하여 공용 공용 레지스트리를 업스트림 원본으로 추가합니다.
완료되면 만들기를 선택합니다.
피드에 연결
다음 단계를 사용하여 프로젝트를 구성하고 피드를 사용하여 인증합니다. 이 예제에서는 Rust 프로젝트를 사용합니다. 다른 기술은 다음 섹션의 프로젝트 설정 링크를 참조하세요.
Azure DevOps에 로그인하고 프로젝트로 이동합니다.
아티팩트 선택, 드롭다운 메뉴에서 피드 선택, 피드에 연결 선택
왼쪽 탐색 창에서 Cargo를 선택합니다.
프로젝트 설정 섹션에서 첫 번째 코드 조각을 복사하여 원본 리포지토리의 cargo/config.toml 파일에 추가합니다. config.toml 파일은 다음과 유사합니다.
[registries] FEED_NAME = { index = "sparse+https://pkgs.dev.azure.com/ORGANIZATION_NAME/PROJECT_NAME/_packaging/FEED_NAME/Cargo/index/" }
다른 패키지 형식에 대한 프로젝트 설정
다른 기술을 사용하는 경우 아래 링크를 사용하여 적절한 프로젝트 설정 지침을 따라 피드에 연결합니다.
업스트림 피드 설정
업스트림 원본과 동일한 조직에서 내부 피드를 설정하려면 다음 단계를 수행합니다.
Azure DevOps에 로그인한 다음, 프로젝트로 이동합니다.
아티팩트를 선택한 후, 피드 드롭다운 메뉴에서 이전에 만든 피드를 선택합니다.
기어 아이콘 단추
을 선택하여 피드 설정으로 이동합니다.업스트림 원본을 선택한 다음 업스트림 추가를 선택합니다.
유형 탭에서 이 조직에서 Azure Artifacts 피드를 선택합니다.
구성 탭의 피드 드롭다운 메뉴에서 업스트림 원본으로 추가할 피드를 선택합니다. 원하는 보기를 선택한 다음 포함할 패키지 유형을 선택하고 선택적으로 업스트림 원본 이름을 업데이트합니다.
완료되면 추가를 선택합니다.
저장을 선택하여 변경 내용을 적용합니다.
업스트림에서 패키지 설치
다음 예제에서는 Test_FeedCargoDemoFeed 가 업스트림 원본으로 구성된 시나리오를 보여 줍니다. 데모용 으로 Test_Feed 비어 있고 패키지가 없습니다.
공동 작업자(이상)가 업스트림 CargoDemoFeed에서 사용할 수 있는 Test_Feed 패키지를 설치하는 경우 Azure Artifacts는 해당 패키지를 다운스트림 Test_Feed 복사하여 일반 cargo install 흐름의 일부로 다운로드합니다. 이 처음 복사 후에는 나중에 다운로드한 경우 다운스트림 피드를 수정하지 않으므로 Test_Feed 해당 패키지의 모든 향후 다운로드에는 피드 판독 기(또는 그 이상) 권한만 필요합니다. 첫 번째 설치만 업스트림에서 다운스트림으로 패키지를 복사하므로 초기 작업에만 상승된 권한이 필요합니다.
Azure DevOps에 로그인한 다음 업스트림 피드를 호스트하는 프로젝트(이 예제에서는 CargoDemoFeed)로 이동합니다.
아티팩트 선택, 드롭다운 메뉴에서 업스트림 피드(CargoDemoFeed)를 선택합니다.
설치할 패키지를 찾고 해당 이름을 적어 둡다. 이 예제에서 atomic-waker 는 패키지 이름입니다. Azure Artifacts UI의 다운스트림 피드에서 직접 업스트림 패키지를 검색할 수도 있습니다. 자세한 내용은 업스트림 원본의 검색 패키지를 참조하세요 .
프로젝트의 루트로 이동하여 Cargo.toml을 엽니다. [종속성] 아래에 패키지를 추가합니다. 이는 프라이빗 크레이트 종속성이므로 Cargo.toml 파일에서 레지스트리 이름을 지정해야 합니다. Cargo는 달리 지정하지 않는 한 crates.io 기본 레지스트리로 가정합니다. 다음과 같이 종속성을 추가합니다.
CRATE_NAME = { version = "VERSION_NUMBER", registry = "FEED_NAME" } # Example: # [dependencies] # atomic-waker = { version = "1.1.2", registry = "Test_Feed" }로컬 명령 프롬프트를 열고 프로젝트의 루트로 이동한 다음 다음 명령을 실행하여 프로젝트를 빌드하고 상자를 다운로드합니다.
cargo build빌드가 완료되면 Azure DevOps>아티팩 트로 돌아가서 사용 피드를 선택합니다(이 예제에서는 Test_Feed).
로컬로 설치한 패키지가 이제 다운스트림 피드에 표시되는지 확인합니다. Azure Artifacts는 업스트림 원본에서 설치될 때 패키지의 복사본을 자동으로 저장합니다.