Share via


Azure Artifacts의 주요 개념

Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019

불변성

특정 버전의 패키지를 피드에 게시하면 해당 버전 번호가 영구적으로 예약됩니다. 동일한 버전 번호로 최신 수정 패키지를 업로드하거나 삭제하고 동일한 버전 번호로 새 패키지를 업로드할 수 없습니다.

NuGet 및 npm을 비롯한 많은 패키지 클라이언트는 컴퓨터에 패키지의 로컬 캐시를 유지합니다. 클라이언트가 특정 패키지 버전을 캐시하면 이후 설치/복원 요청에 따라 해당 복사본을 반환합니다.

서버 쪽에서 패키지 버전 v1을 새 버전 v2로 바꾸면 클라이언트가 차이를 알 수 없습니다. 이로 인해 다른 컴퓨터의 빌드 결과가 확정되지 않습니다. 예를 들어 개발자의 컴퓨터와 빌드 에이전트가 패키지의 다른 수정 버전을 캐시하여 예기치 않은 빌드 결과를 초래했을 수 있습니다.

패키지가 손상되거나 버그가 있거나 의도하지 않은 콘텐츠(예: 비밀)를 공유하는 경우 가장 좋은 방법은 수정을 준비하고 새 버전으로 게시하는 것입니다. 그런 다음 문제의 심각도 및 패키지에 얼마나 광범위하게 의존하는지에 따라 패키지를 삭제하여 사용할 수 없도록 할 수 있습니다.

불변성 제약 조건을 해결하는 유일한 방법은 새 피드를 만들고 원하는 패키지 버전을 새 피드에 게시하는 것입니다.

참고 항목

삭제된 피드는 30일 동안 휴지통에 다시 기본 영구적으로 삭제됩니다. 피드가 영구적으로 삭제되면 피드 이름을 사용할 수 있게 됩니다.

인덱싱

Azure Artifacts는 빠른 목록 작업을 가능하게 하는 각 피드의 모든 패키지 인덱스를 기본. 파일 공유에 대한 목록 작업을 수행하려면 클라이언트가 모든 패키지를 열고 파일 공유가 클라이언트가 이해하는 인덱스를 제공하도록 구성되지 않은 한 해당 메타데이터를 검사해야 합니다.

올바른 형식

Azure Artifacts는 게시된 모든 패키지의 유효성을 검사하여 잘 구성되었는지 확인합니다. 이렇게 하면 잘못된 패키지가 개발 및 빌드 환경에 들어가지 못하게 됩니다. 그러나 잘못된 형식의 패키지를 게시하는 모든 워크플로는 Azure Artifacts로 마이그레이션할 때 중단됩니다.

휴지통

패키지를 수동으로 삭제하거나 피드에 대한 보존 정책을 설정하여 삭제할 수 있습니다. 삭제된 패키지는 30일 동안 휴지통에 다시 기본 영구적으로 삭제됩니다. 피드 소유자는 휴지통에서 삭제된 패키지를 복구할 수 있습니다.