fleetdm / fleet

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

Improve activities for GitOps #16678

Open getvictor opened 9 months ago

getvictor commented 9 months ago

Goal

User story
As a user that merged a PR in my GitOps repo that uses Fleet's best practice GitOps ,
I want to see a clear message that I made a change to Fleet in my GitOps repo
so that I can go to GitHub to see what change I made.

Context

Current activities generated when a PR is merged in GitOps repo (fleetctl gitops runs):

image.png

Changes

Product

Engineering

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

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 7 months ago

Hey @getvictor heads up, we didn't get to this in the last design sprint.

Bringing it back to feature fest.

noahtalerman commented 7 months ago

Noah: Let's understand whether the changes we make for GitOps activity affect fleetctl apply and/or Puppet module activities.

Related discussion in Slack here (internal): https://fleetdm.slack.com/archives/C03C41L5YEL/p1711464429022319

noahtalerman commented 7 months ago

Hey @getvictor, heads up, we brought this into the upcoming design sprint (4.49).

getvictor commented 7 months ago

@rachaelshaw we need additional messages because there are a couple of use cases here.

noahtalerman commented 7 months ago

there are a couple of use cases here.

  • gitops runs via workflow based on our gitops best practices repo. A gitops user would typically run this.
  • A single user runs something like fleetctl gitops -f teams/my-team.yml
  • gitops flow runs, applies some changes, but fails. This can happen if --dry-run was not run first, or due to some corner cases.

@getvictor understood that any of these use cases (scenarios) are possible.

However, fleetctl gitops is only intended for use w/ best practice GitHub action (first scenario above). The plan is to document this as such. (docs PR here)

I think this means that we don't want to have additional messages for the second scenario: running fleetctl gitops outside of the GitHub action.

For the third scenario, the GitHub action always runs --dry-run first, right? If yes, I think we don't need an additional message for the third workflow.

cc @rachaelshaw @marko-lisica

rachaelshaw commented 7 months ago

@getvictor we decided to keep this message as-is (per @noahtalerman's comment above)

sharon-fdm commented 7 months ago

Estimations: FE: 1 BE: 5