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

Policy automations: install App Store apps on macOS #23115

Open
15 tasks
marko-lisica opened this issue Oct 23, 2024 · 4 comments
Open
15 tasks

Policy automations: install App Store apps on macOS #23115

marko-lisica opened this issue Oct 23, 2024 · 4 comments
Assignees
Labels
customer-deebradel customer-fourier #g-mdm MDM product group :product Product Design department (shows up on 🦢 Drafting board) story A user story defining an entire feature

Comments

@marko-lisica
Copy link
Member

marko-lisica commented Oct 23, 2024

Goal

User story
As an IT admin,
I want to install App Store apps automatically when a macOS host fails a policy
so that I can deploy App Store apps to many hosts without having to use 3rd party automation tool (e.g. Tines).

Objective

Mission critical app management

Original requests

#22616

Context

Changes

Product

Engineering

ℹ️  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

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.
@marko-lisica marko-lisica added story A user story defining an entire feature :product Product Design department (shows up on 🦢 Drafting board) labels Oct 23, 2024
@sharon-fdm
Copy link
Collaborator

#23170 is a duplicate and was closed.

@noahtalerman noahtalerman changed the title Policy automations: install App Store apps Policy automations: install App Store apps on macOS Oct 25, 2024
@ambrusps
Copy link
Member

ambrusps commented Nov 1, 2024

@noahtalerman adding some context here from customer-fourier: https://fleetdm.slack.com/archives/C07RX27HW4U/p1729724660779979

@marko-lisica
Copy link
Member Author

@georgekarrv heads up, this is ready to spec.

@georgekarrv georgekarrv assigned getvictor and unassigned georgekarrv Nov 4, 2024
@noahtalerman noahtalerman added the #g-mdm MDM product group label Nov 5, 2024
@getvictor
Copy link
Member

getvictor commented Nov 5, 2024

Rough engineering tasks:

Frontend

  • Update the software titles page
  • Update install software automation modal
  • Update activity feed processing to show new Fleet user

Backend

  • Add a join table for policy and adam_id. Since VPP apps are macOS-specific, we should use a join table. If the policy is deleted, cascade. As a side effect, this allows for a future one policy to many VPP installs feature.
  • Update PATCH /api/v1/fleet/teams/:team_id/policies/:policy_id endpoint to accept a VPP app in software_title_id parameter.
  • Add logic to install VPP app on policy failure. Use Policy automations: install software #19551 as a guide.
  • Update policy and software title endpoints to return vpp/adam_id info.
  • Add a check when deleting VPP app if it is linked to policy. If linked, fail the deletion.
  • Update NewActivity to allow a generic Fleet user. Use ID=0 as a convention for this user.
  • Update automatic VPP install activity feed to use Fleet user.
  • Update GitOps to allow app_store_app_id in policies.

Other

  • Update usage guides

@getvictor getvictor added Epic DO NOT USE. Auto-created by ZenHub, cannot be disabled. and removed Epic DO NOT USE. Auto-created by ZenHub, cannot be disabled. labels Nov 5, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
customer-deebradel customer-fourier #g-mdm MDM product group :product Product Design department (shows up on 🦢 Drafting board) story A user story defining an entire feature
Development

No branches or pull requests

7 participants