Skip to main content

Module artifacts_download

Module artifacts_download 

Source
Expand description

Artifacts download (Universal Packages) Download Universal Packages from Azure DevOps Artifacts.

This module implements the dedup-based download protocol used by Azure DevOps Artifacts for universal packages.

§Protocol overview

  1. Discover service URLs via the ResourceAreas API
  2. Get package metadata (manifestId, superRootId) from the packaging endpoint
  3. Resolve blob IDs to download URLs via the dedup service
  4. Download and parse the manifest to get the file/chunk structure
  5. Download content chunks, decompress, and reassemble files

Structs§

Client
Client for downloading Universal Packages from Azure Artifacts.
ClientBuilder
Builder for creating an artifacts download Client.
DedupBlobRef
A reference to a dedup blob (hash ID + logical size).
Manifest
Parsed manifest listing all files in a package.
ManifestItem
A file entry in the dedup manifest.
PackageMetadata
Package metadata returned by the packaging endpoint.

Functions§

decompress_chunk
Decompress a chunk compressed with the LZ77 encoding used by Azure DevOps blob store.