Skip to content

iOS/iPadOS: More host vitals #39281

Description

@noahtalerman

Goal

User story
As an IT admin,
I want Fleet to collect battery health, UDID, model (i.e. iPhone 14 Pro Max), model number, Bluetooth low energy capability, public IP address, iCloud backup (enabled), last iCloud backup, logged in to the App Store, and everything else available from Apple.

Changes

Product

  • UI changes: Figma wireframes
  • CLI (fleetctl) usage changes: No changes
  • YAML changes: No changes
  • REST API changes: Update get host API to include more vitals for iOS/iPadOS #48303
  • Fleet's agent (fleetd) changes: No changes
  • Fleet server configuration changes: No changes
  • Exposed, public API endpoint changes: No changes
  • fleetdm.com changes: No changes
  • GitOps mode UI changes: No changes
  • GitOps generation changes: No changes
  • Activity changes: No changes
  • Permissions changes: No changes
  • Changes to paid features or tiers: No changes
  • My device and fleetdm.com/better changes: No changes
  • Usage statistics: No changes
  • Other reference documentation changes: No changes
  • First draft of test plan added
  • Once shipped, requester has been notified
  • Once shipped, dogfooding issue has been filed

Engineering

  • Test plan is finalized
  • Contributor API changes: TODO
  • Feature guide changes: TODO
  • Database schema migrations: TODO
  • Load testing: TODO
  • Pre-QA load test: TODO
  • Load testing/osquery-perf improvements: TODO
  • This is a premium only feature: Yes / No

ℹ️  Please read this issue carefully and understand it. Pay special attention to UI wireframes, especially "dev notes".

QA

Risk assessment

  • Requires testing in a hosted environment: TODO
  • Requires load testing: TODO
  • Risk level: Low / High TODO
  • Risk description: TODO

Test plan

Make sure to go through the list and consider all events that might be related to this story, so we catch edge cases earlier.

  • the new properties ONLY apply to iOS and iPadOS. Omit the new host vital values from the API and UI if the host OS is not iOS/iPadOS (don't surface them at all, even with empty strings/null as value)
  • The following properties have different API and UI representations: is_mdm_lost_mode_enabled (API) <-> Lost mode (UI), is_do_not_disturb_in_effect (API) <-> Do not disturb (UI), is_device_locator_service_enabled (API) <-> Device locator service enabled (UI), is_cloud_backup_enabled (API) <-> Cloud backup enabled (UI), app_analytics_enabled (API) <-> App analytics (UI).
  • Some properties will only be available for certain enrollment methods. Please try all three enrollment methods (manual, company-owned, BYOD) and message @Leanngove which properties are included for which enrollment method and which aren’t. This will allow us to write more detailed tooltips
  • If property is not available for a certain enrollment method, we can display this as "Not supported" with a tooltip on the UI. TBD on the API implementation (empty string vs. null?).

Testing notes

Confirmation

  1. Engineer: Added comment to user story confirming successful completion of test plan.
  2. QA: Added comment to user story confirming successful completion of test plan.

Metadata

Metadata

Assignees

Labels

#g-orchestrationOrchestration product group:productProduct Design department (shows up on 🦢 Drafting board)storyA user story defining an entire feature~dedicated-apple-devicesProduct maturity category~ios-ipados-byo-mobileProduct maturity category~product-maturityContributes to Fleet's product maturity goals for the current year

Type

No type

Fields

No fields configured for issues without a type.

Projects

Status
🐥 Ready to spec
Status
No status

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions