Skip to content

v0.1.0

Choose a tag to compare

@robbiet480 robbiet480 released this 07 Mar 01:44
· 5 commits to main since this release

retriever2snipe v0.1.0

Initial public release. Syncs asset records from the Retriever v2 API to Snipe-IT asset management.

Features

  • Sync warehouse device inventory from Retriever to Snipe-IT assets
  • Match assets by serial number (creates new or updates existing)
  • Map all Retriever device statuses to Snipe-IT status labels
  • Custom field support: Retriever ID, Has Charger, CODD, Legal Hold, Rating
  • Map hardware specs (RAM, storage, processor, etc.) to existing Snipe-IT custom fields
  • Automatically download and attach CODD PDFs from Google Drive
  • Interactive setup command to auto-create Snipe-IT resources
  • Config file generation from cached Retriever data with model mapping
  • Local data caching for Retriever's strict rate limits
  • Dry-run mode with debug payload output
  • Single-device sync by serial number or Retriever device ID
  • Idempotent sync: only updates assets when data has actually changed
  • Deduplicates warehouse records by serial number (keeps latest deployment)
  • Optional Slack webhook notifications when new assets are created (Block Kit)
  • Structured logrus logging with progress milestones and summary table
  • Automatic retry with exponential backoff for Snipe-IT API rate limits (429)
  • Stops sync immediately with helpful message on misconfigured custom fields

Configuration

Supports three-tier config precedence: CLI flags > environment variables > config.yaml. See config.yaml.example for all options.

Commands

  • sync — Main sync from Retriever to Snipe-IT
  • setup — Interactive Snipe-IT resource creation
  • download — Cache Retriever API data locally
  • generate-config — Generate config template with model mappings