Skip to content

🎸❤️‍🩹 Move self-service management/scoping from the Edit modal to the Actions menu + its own modal #28061

@eugkuo

Description

@eugkuo

Goal

User story
As an IT admin
I want to have a quick, dedicated way to modify self-service options for software
so that I don't have to wade through a busy edit modal to tweak self-service options.

Key result

Auto-update (patch) any software without writing custom policies

Original requests

#21825

Context

Changes

Product

  • UI changes: Figma design

    Move self-service management/scoping from the Edit modal to the Actions menu + its own modal. Frontend-only. Depends on 🎸❤️‍🩹 Allow adding auto-install policies to (and removing from) existing installers #28060 plus some of its dependencies. Designs assume self-service categories have already been added to the existing edit modal.

  • CLI (fleetctl) usage changes: No changes
  • YAML changes: No changes
  • REST API changes: No changes
  • Fleet's agent (fleetd) changes: No changes
  • GitOps mode changes: Self-service actions menu option should be disabled with standard GitOps Mode tooltip when in GitOps Mode
  • Activity changes: No changes
  • Permissions changes: No changes
  • Changes to paid features or tiers: No changes (software installers are Fleet Premium)
  • My device and fleetdm.com/better changes: No changes
  • First draft of test plan added
  • Other reference documentation changes: No changes
  • Once shipped, requester has been notified
  • Once shipped, dogfooding issue has been filed

Engineering

  • Test plan is finalized
  • Contributor API changes: No changes
  • Feature guide changes: No changes

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

QA

Risk assessment

  • Risk level: Low

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.

  1. On /software/titles/:id for software that already has an installer package uploaded and Self-service NOT enabled, click Actions >> Self-service
  2. Self-service modal appears (per Figma), toggle is set to "Disabled"
  3. After toggling to the enabled position, Target and categories options appear.
  4. Modal height changes to accommodate categories list, and labels list when "Custom" target is selected. Labels list is scrollable.
  5. Set Target to "All hosts" and click Save.
  6. A flash message appears (per Figma) indicating success saving Self Service settings per Figma. User is returned to the /software/titles/:id page.
  7. Click Actions >> Self-service
  8. Self-service modal appears (per Figma), toggle is set to "Enabled"
  9. Edit targets or categories, click Save
  10. A flash message appears (per Figma) indicating success saving Self Service settings per Figma. User is returned to the /software/titles/:id page.
  11. Confirm changes have been saved.
  12. Click Actions >> Self-service
  13. Self-service modal appears (per Figma), toggle is set to "Enabled"
  14. Set toggle to "Disabled". All sections below the toggle should disappear in the modal.
  15. Click Save.
  16. A flash message appears (per Figma) indicating success saving Self Service settings per Figma. User is returned to the /software/titles/:id page. Self service should be disabled.
  17. Click the pencil Icon to edit the software installer. Edit software modal appears (per Figma). Self service options should not appear in the modal.
  18. Edit the software installer and swap it out with a different version of the same software. Click Save. NOTE: Fleet maintained apps should not have the option to edit the installer.
  19. "Save changes?" modal appears per Figma.
  20. Click Save. Success flash appears and user is returned to the /software/titles/:id page. Verify changes saved.
  21. Click the trash Icon to delete the software installer. Delete modal appears per Figma. Click Delete.
  22. Flash message appears indicating success of delete. User is returned to the /software/titles/:id page. Any previously configured Fleet maintained policies should also be deleted. If any custom policies were previously set up with install software automations for this software installer, they should no longer appear in the policies table and should no longer have the Install software automation configured (Also want to make sure that not only is the installer not selected for the automation, the automation has been disabled)

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

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions