Skip to content

Android: list MDM commands in CLI, API, and Host details page #33158

Description

@marko-lisica

Goal

User story
As an IT admin,
I want to be able to list raw Android MDM commands (requests to Google AMAPI)
so that I can easily troubleshoot issues.

Changes

Product

  • UI changes: Figma wireframes

  • CLI (fleetctl) usage changes:

    • fleetctl get mdm-commands --host: Returns a list of recent MDM commands which include requests made to AMAPI that were passed in using fleetctl mdm run-command.
      • In the response:
        • UUID is request UUID
        • Type is request type, like LOCK, WIPE, REBOOT
        • Status will be whatever we get from AMAPI (200, 400, etc.).
    • fleetctl get mdm-command-results --id= where id is the MDM command UUID gets the results for a single MDM command.
      • In the response:
        • ID is MDM command UUID
        • Type is request type, like LOCK, WIPE, REBOOT
        • Status will be whatever we get from AMAPI (200, 400, etc.).
        • Payload is the request JSON that was passed in.
        • Results is the response from AMAPI, which if it is successful, is a instance of Operation. See here.
  • YAML changes: No changes.

  • REST API changes: Docs changes: Update List MDM commands API to include Android #50795. Make sure to retrurn Android custom MDM commands in GET /api/v1/fleet/commands and GET /api/v1/fleet/commands/results.

  • Fleet's agent (fleetd) changes: No changes.

  • GitOps mode UI changes: No changes.

  • GitOps generation changes: No changes.

  • Activity changes: No changes.

  • Permissions changes: [Permissions] Android: list MDM commands in CLI and API #33159

  • Changes to paid features or tiers: Available in Fleet Free and Premium.

  • My device and fleetdm.com/better changes: 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
  • 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 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.

  • Use fleetctl get mdm-commands and fleetctl get mdm-command-resutls --id commands. Make sure that returned fields follow specs in the "Product changes" section

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-byodProduct group focused on Android BYOD:productProduct Design department (shows up on 🦢 Drafting board)customer-cisneros-acustomer-mozartiastoryA user story defining an entire feature~androidRelated to Android support~android-byo-mobileProduct maturity category~coreFeature contributes to the core purpose of Fleet: guide people out of the thicket through openness.~product-maturityContributes to Fleet's product maturity goals for the current year

Type

No type

Projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions