labelsΒΆ

Builds an Installomator label fragment from an app’s stitched record plus its per-source payloads. Used by the POST /apps/{slug}/generate-label endpoint. The fallback chain picks the best available value for each field (name, downloadURL, expectedTeamID, etc.) across Installomator, Homebrew Cask, and Jamf App Installers, with explicit warnings when a field can’t be sourced cleanly.

build_installomator_label(app_row: App, detail: AppSourceDetail | None) GenerateLabelResponse[source]ΒΆ

Project an apps row + source detail into an Installomator label.

Parameters:
  • app_row (AppRow) – The apps table row for this slug.

  • detail (AppSourceDetailRow | None) – The matching app_source_details row, or None if the app has no source detail attached (rare β€” usually a leftover seed record).

Returns:

Generated label content + provenance metadata.

Return type:

GenerateLabelResponse