Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
var Quiet bool
Quiet suppresses progress messages.
Functions ¶
This section is empty.
Types ¶
type EnrollmentCustomizationInfo ¶
EnrollmentCustomizationInfo holds metadata for downloading the branding image.
type IconInfo ¶
type IconInfo struct {
ID int
Name string
URL string
Label string // Terraform resource label (includes type hint + referencing resource label)
RefLabel string // Label of the resource that references this icon
}
IconInfo holds metadata about a discovered icon for downloading.
type PackageInfo ¶
PackageInfo holds extra metadata about a package needed for post-processing.
type Resource ¶
type Resource struct {
JamfID string
Name string
Label string // Sanitized Terraform resource label
}
Resource represents a discovered Jamf Pro resource with its ID, name, and derived TF label.
type Results ¶
type Results struct {
Sites []Resource
Buildings []Resource
Categories []Resource
Departments []Resource
Scripts []Resource
ComputerExtensionAttributes []Resource
Packages []Resource
DockItems []Resource
Printers []Resource
NetworkSegments []Resource
SmartComputerGroups []Resource
StaticComputerGroups []Resource
MacOSConfigurationProfiles []Resource
Policies []Resource
Icons []Resource
IconInfo map[string]IconInfo // icon ID -> metadata (for downloading)
EnrollmentCustomizations []Resource
EnrollmentCustomizationInfo map[string]EnrollmentCustomizationInfo // enrollment customization ID -> metadata (for image downloading)
ComputerPrestages []Resource
AdvancedComputerSearches []Resource
AppInstallers []Resource
MacApplications []Resource
DeviceEnrollments []Resource
VolumePurchasingLocations []Resource
RestrictedSoftware []Resource
SmartMobileDeviceGroups []Resource
StaticMobileDeviceGroups []Resource
MobileDeviceConfigurationProfiles []Resource
MobileDevicePrestages []Resource
MobileDeviceExtensionAttributes []Resource
AdvancedMobileDeviceSearches []Resource
APIIntegrations []Resource
APIRoles []Resource
Accounts []Resource
Webhooks []Resource
AccountGroups []Resource
DiskEncryptionConfigurations []Resource
AllowedFileExtensions []Resource
LDAPServers []Resource
MobileDeviceApplications []Resource
UserGroups []Resource
SelfServiceBrandingMacOS []Resource
SelfServiceBrandingIOS []Resource
AdvancedUserSearches []Resource
// Singletons maps TF resource type -> single Resource for settings with no list API.
Singletons map[string][]Resource
}
Results holds all discovered resources grouped by type.
func DiscoverAll ¶
func DiscoverAll(client *jamfpro.Client, reg *registry.Registry, packageInfo map[string]string, filter map[string]bool, progressFn func()) (*Results, error)
DiscoverAll lists all supported resources from Jamf Pro and registers them in the dependency registry for later reference resolution. packageInfo is populated with package_name -> filename mappings for post-processing. filter optionally restricts which resource types to discover. If nil, all types are discovered. Filter keys use friendly names matching the ResourceDef.FilterKey values in pro/resources.go. progressFn is called after each resource type finishes discovery (may be nil).
Source Files
¶
- account_groups.go
- accounts.go
- advanced_computer_searches.go
- advanced_mobile_device_searches.go
- advanced_user_searches.go
- allowed_file_extensions.go
- api_integrations.go
- api_roles.go
- app_installers.go
- buildings.go
- categories.go
- computer_extension_attributes.go
- computer_prestages.go
- departments.go
- device_enrollments.go
- discovery.go
- disk_encryption_configurations.go
- dock_items.go
- enrollment_customizations.go
- icons.go
- ldap_servers.go
- mac_applications.go
- macos_configuration_profiles.go
- mobile_device_applications.go
- mobile_device_configuration_profiles.go
- mobile_device_extension_attributes.go
- mobile_device_prestages.go
- network_segments.go
- packages.go
- policies.go
- printers.go
- restricted_software.go
- scripts.go
- self_service_branding_macos.go
- self_service_ios_branding.go
- sites.go
- smart_computer_groups.go
- smart_mobile_device_groups.go
- static_computer_groups.go
- static_mobile_device_groups.go
- user_groups.go
- volume_purchasing_locations.go
- webhooks.go