fleetdm / fleet

Open-source platform for IT, security, and infrastructure teams. (Linux, macOS, Chrome, Windows, cloud, data center)
https://fleetdm.com
Other
3.01k stars 418 forks source link

Recategorize MDM REST API endpoints #16260

Closed rachaelshaw closed 4 months ago

rachaelshaw commented 8 months ago

Goal

User story
As a Fleet API user,
I want the API endpoints to manage MDM features to not be nested under /mdm
so that I understand that MDM features are a core part of Fleet and not a separate, MDM product.

Changes

Product

Engineering

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

Context

QA

Risk assessment

Manual testing steps

  1. Step 1
  2. Step 2
  3. Step 3

Testing notes

Confirmation

  1. [ ] Engineer (@____): Added comment to user story confirming successful completion of QA.
  2. [ ] QA (@____): Added comment to user story confirming successful completion of QA.
noahtalerman commented 8 months ago

@rachaelshaw we moved the original issue description here:

Problem

The MDM section of the REST API has a lot of endpoints compared to other sections (26), and is getting a bit unwieldy to navigate.

It would be easier for people to find what they're looking for if we moved away from nesting the APIs for MDM features under /mdm/, and recategorized & set up redirects for existing MDM endpoints.

rachaelshaw commented 8 months ago

@noahtalerman here's the spreadsheet I started to figure out the new URLs + categories if you want to leave feedback: https://docs.google.com/spreadsheets/d/1aH1fTtrpftmwglxVuYqXUSfIRfhk88x5ORVUcIQhdbs/edit#gid=907717004

georgekarrv commented 7 months ago

Hey team! Please add your planning poker estimate with Zenhub @ghernandez345 @gillespi314 @mna @roperzh

gillespi314 commented 7 months ago

As discussed in estimation, linking to this ticket that also relates to the disk encryption endpoint

mna commented 7 months ago

Note that the scope of this ticket (as estimated) does not cover updating the UI/fleetctl/fleetd to use the new endpoints.

mna commented 7 months ago

@noahtalerman @rachaelshaw I updated the spreadsheet while implementing the new endpoints, I highlighted in yellow the endpoints that are not platform-agnostic yet (either because they specifically require Apple MDM to be enabled or because they only apply to Apple, at least for now), and in green those that work for either Windows or Apple MDM.

This is just a heads-up, I don't think it's an issue for now, it's to make it clear that as part of this story, we're just making the new routes available, there's no change to the implementation (except for "Update disk encryption enforcement" which couldn't be a simple route path change). And as mentioned in my comment above, the UI/CLI/agent are not updated to use the new routes either. (I can create a new ticket as a follow up for this, let me know if there's not already something to track this work)

Also, did we reach a decision regarding /abm and /apns vs the non-acronym form? Referring to this: https://github.com/fleetdm/fleet/pull/16728/files#r1488694302 and https://github.com/fleetdm/fleet/pull/16728/files#r1488694787.

roperzh commented 6 months ago

QA: went through all the endpoints listed here: https://github.com/fleetdm/fleet/pull/16728 , both the old version and the new version using curl and everything worked fine.

rachaelshaw commented 5 months ago

C&C: need to make fresh PRs to the docs (draft PR was open a long time, messing with the PR open time KPI). TODO @rachaelshaw

noahtalerman commented 5 months ago

C&C: Doc PRs are still open. cc @rachaelshaw

noahtalerman commented 4 months ago

Docs PR is merged! https://github.com/fleetdm/fleet/pull/18886

fleet-release commented 4 months ago

Endpoints shift, aligned, Fleet core, MDM enshrined. Clear path, users find.