Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Retrieve and aggregate available MDM solutions for MacOS hosts #6928

Closed
4 of 6 tasks
lukeheath opened this issue Jul 27, 2022 · 2 comments
Closed
4 of 6 tasks

Retrieve and aggregate available MDM solutions for MacOS hosts #6928

lukeheath opened this issue Jul 27, 2022 · 2 comments
Assignees
Labels
~frontend Frontend-related issue. ~legacy-interface-product-group Associated with the legacy "interface" product group. (No longer exists)
Milestone

Comments

@lukeheath
Copy link
Member

lukeheath commented Jul 27, 2022

Goal

For MacOS hosts, add ability to know which host is enrolled in an undesired Mobile Device Management (MDM) solution.

Figma

https://www.figma.com/file/hdALBDsrti77QuDNSzLdkx/%F0%9F%9A%A7-Fleet-EE-(dev-ready%2C-scratchpad)?node-id=7652%3A275866

Related

Tasks

  • This card is available to all user roles.
  • This card is only visible if the "macOS" platform is selected.

1

  • Use the newly updated GET /api/v1/fleet/macadmins endpoint to retrieve aggregate count of MDM solutions by name.
  • Reference backend ticket for example API specs.
  • If a team is selected, continue to pass the team_id query param. Example: GET /api/v1/fleet/macadmins?team_id=3

2

  • Update homepage Mobile device management (MDM) enrollment card.
  • Update title to “Mobile device management (MDM)”
  • Add a new Tabs component with two tabs: "Solutions" and "Enrollment".
  • Example Tabs implementation on HostDetailsPage.tsx.
  • Previous table goes under the "Enrollment" tab.
  • Add a “Solutions” table to the Mobile device management (MDM) card.
  • Table is sorted by host count ascending by default.
  • Enable clickable rows on the "Solutions" table only with a "View all hosts" link that appears on hover. Example implementation on manage software page.
  • If the name is null, display the string Unknown.
  • Client side pagination appears if there are more than 8 items.

image

3

  • Add empty state to MDM card.

image

4

  • Update manage hosts table to filter by MDM name.
  • Filter contains name and server url. Example: Kandji https://UUID2.devices.us-1.kandji.io
  • Filter contains tooltip with name and server url. Example Hosts enrolled to Kandji at https://UUID2.devices.us-1.kandji.io.
    If the name is null...
  • only the server url is displayed in the card.
  • only the server url is included in the tooltip: “Hosts enrolled at ”

image

5

  • Update MDM Enrollment table.
  • Update table sort to “Status” desceding by default.
  • Add a “View all hosts” button. This button appears when the user hovers over a row. This button navigates the user to the Hosts page with the MDM enrollment status.
  • Tooltips appear on hover over “Enrolled (automatic)” and “”Enrollled (manual)”
    Enrolled (automatic) tooltip: Hosts automatically enrolled to an MDM solution the first time the host is used. Administrators might have a higher level of control over these hosts.
    Enrolled (manual) tooltip: Hosts manually enrolled to an MDM solution by a user or administrator.
  • Provide MDM id in API GET URL param:
    /hosts/manage/?mdm_id=1

image

6

  • Ensure manage hosts table is filtered by enrollment status.
  • If “Enrolled (automatic)”, show tooltip on filter: “Hosts automatically enrolled to an MDM solution the first time the host is used. Administrators might have a higher level of control over these hosts.”
  • If “Unenrolled”, show tooltip on filter: “Hosts not enrolled to an MDM solution.”
  • Provide status in API GET URL param:
    /hosts/manage/?mdm_enrollment_status=manual
    /hosts/manage/?mdm_enrollment_status=automatic
    /hosts/manage/?mdm_enrollment_status=unenrolled

image

@lukeheath lukeheath added ~frontend Frontend-related issue. ~legacy-interface-product-group Associated with the legacy "interface" product group. (No longer exists) labels Jul 27, 2022
@lukeheath lukeheath moved this to 🥚 Prioritized in ⚗️ ‎‎Roadmap Jul 27, 2022
@lukeheath lukeheath moved this from 🥚 Prioritized to 🐥 Specified in ⚗️ ‎‎Roadmap Jul 27, 2022
@RachelElysia
Copy link
Member

@lukeheath : Maybe update the host details page to include solutions

Current:
Screen Shot 2022-07-29 at 1 21 13 PM

@lukeheath
Copy link
Member Author

  • TODO: Luke create new issue to backfill dashboard E2E tests.

@lukeheath lukeheath added the 5 label Jul 29, 2022
@lukeheath lukeheath moved this from 🐥 Specified to 🦤 Estimated in ⚗️ ‎‎Roadmap Jul 29, 2022
@lukeheath lukeheath moved this to 🥚 Ready in 🚀 Release Aug 1, 2022
@RachelElysia RachelElysia moved this from 🥚 Ready to 🐣 In progress in 🚀 Release Aug 1, 2022
@RachelElysia RachelElysia moved this from 🐣 In progress to ✨ ‎ ‎In review in 🚀 Release Aug 5, 2022
@RachelElysia RachelElysia moved this from ✨ ‎ ‎In review to 🐣 In progress in 🚀 Release Aug 5, 2022
@RachelElysia RachelElysia moved this from 🐣 In progress to ✨ ‎ ‎In review in 🚀 Release Aug 15, 2022
@lukeheath lukeheath moved this from ✨ ‎ ‎In review to ✔️ ‎ ‎‎‎Awaiting QA in 🚀 Release Aug 15, 2022
@xpkoala xpkoala moved this from ✔️ ‎ ‎‎‎Awaiting QA to ✅ Ready for release in 🚀 Release Aug 17, 2022
@lukeheath lukeheath added this to the 4.19.0 milestone Aug 24, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
~frontend Frontend-related issue. ~legacy-interface-product-group Associated with the legacy "interface" product group. (No longer exists)
Development

No branches or pull requests

2 participants