Skip to content

Add more Windows FMAs (A) - #47659

Merged
allenhouchins merged 2 commits into
mainfrom
windows-fma-pmpc-parity
Jun 16, 2026
Merged

Add more Windows FMAs (A)#47659
allenhouchins merged 2 commits into
mainfrom
windows-fma-pmpc-parity

Conversation

@allenhouchins

@allenhouchins allenhouchins commented Jun 16, 2026

Copy link
Copy Markdown
Member

This pull request adds support for several new Windows applications to the maintained apps catalog, including their installation and uninstallation scripts, metadata, and detection queries. It also updates the main apps.json index to include these new apps with descriptions. Additionally, there are minor improvements to existing app descriptions.

New Windows app support:

  • Added support for the following apps, including input definitions and output manifests:
    • Alacritty (alacritty.json, alacritty/windows.json) [1] [2]
    • Amazon Corretto JRE 8 (amazon-corretto-jre-8.json, amazon-corretto-jre-8/windows.json) [1] [2]
    • Aptakube (aptakube.json, aptakube/windows.json) [1] [2]
    • Audiveris (audiveris.json, audiveris/windows.json) [1] [2]
    • Autopsy (autopsy.json, autopsy/windows.json) [1] [2]
    • AWS SAM CLI (aws-sam-cli.json, aws-sam-cli/windows.json)
    • Filebeat (filebeat.json, filebeat/windows.json)
    • Winlogbeat (winlogbeat.json, winlogbeat/windows.json)

Catalog and metadata updates:

  • Updated apps.json to include the new Windows apps with their descriptions and unique identifiers. [1] [2] [3] [4] [5] [6] [7]

Minor improvements:

  • Fixed smart quote usage in the descriptions for "Moom" and "Splice" in apps.json for better typographic consistency. [1] [2]

… Aptakube, Audiveris, AWS SAM CLI, Amazon Corretto JRE 8
Copilot AI review requested due to automatic review settings June 16, 2026 13:34
@allenhouchins
allenhouchins requested a review from a team as a code owner June 16, 2026 13:34
@fleet-release
fleet-release requested a review from eashaw June 16, 2026 13:34
fleet-release
fleet-release previously approved these changes Jun 16, 2026

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR expands Fleet’s Windows Fleet-maintained app (FMA) catalog (PatchMyPC parity “Letter A”) by adding new winget-backed Windows app manifests plus corresponding Software page icons so the catalog can display the correct branding.

Changes:

  • Added Windows FMAs (inputs + generated outputs) for Alacritty, Autopsy, Aptakube, Audiveris, AWS SAM CLI, and Amazon Corretto JRE 8.
  • Added new Software page icon components and wired them into the name→icon map.
  • Updated the generated apps.json catalog list to include the new Windows FMAs.

Reviewed changes

Copilot reviewed 19 out of 24 changed files in this pull request and generated no comments.

Show a summary per file
File Description
frontend/pages/SoftwarePage/components/icons/index.ts Registers new icon components and maps software names to icons (including new Windows FMAs).
frontend/pages/SoftwarePage/components/icons/Alacritty.tsx Adds Alacritty icon (embedded PNG-in-SVG).
frontend/pages/SoftwarePage/components/icons/Aptakube.tsx Adds Aptakube icon (embedded PNG-in-SVG).
frontend/pages/SoftwarePage/components/icons/Audiveris.tsx Adds Audiveris icon (embedded PNG-in-SVG).
frontend/pages/SoftwarePage/components/icons/Autopsy.tsx Adds Autopsy icon (embedded PNG-in-SVG).
frontend/pages/SoftwarePage/components/icons/AwsSamCli.tsx Adds AWS SAM CLI icon (embedded PNG-in-SVG).
ee/maintained-apps/outputs/alacritty/windows.json Generated Windows FMA output (queries, installer URL, hashes, scripts/refs).
ee/maintained-apps/outputs/aptakube/windows.json Generated Windows FMA output (queries, installer URL, hashes, scripts/refs).
ee/maintained-apps/outputs/audiveris/windows.json Generated Windows FMA output (queries, installer URL, hashes, scripts/refs).
ee/maintained-apps/outputs/autopsy/windows.json Generated Windows FMA output (queries, installer URL, hashes, scripts/refs).
ee/maintained-apps/outputs/aws-sam-cli/windows.json Generated Windows FMA output (queries, installer URL, hashes, scripts/refs).
ee/maintained-apps/outputs/amazon-corretto-jre-8/windows.json Generated Windows FMA output (queries, installer URL, hashes, scripts/refs).
ee/maintained-apps/outputs/apps.json Adds new app entries to the generated catalog list.
ee/maintained-apps/inputs/winget/alacritty.json Adds winget input definition for Alacritty Windows FMA generation.
ee/maintained-apps/inputs/winget/aptakube.json Adds winget input definition for Aptakube Windows FMA generation (incl. publisher override).
ee/maintained-apps/inputs/winget/audiveris.json Adds winget input definition for Audiveris Windows FMA generation.
ee/maintained-apps/inputs/winget/autopsy.json Adds winget input definition for Autopsy Windows FMA generation.
ee/maintained-apps/inputs/winget/aws-sam-cli.json Adds winget input definition for AWS SAM CLI Windows FMA generation.
ee/maintained-apps/inputs/winget/amazon-corretto-jre-8.json Adds winget input definition for Amazon Corretto JRE 8 Windows FMA generation.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@codecov

codecov Bot commented Jun 16, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 50.00000% with 7 lines in your changes missing coverage. Please review.
✅ Project coverage is 67.19%. Comparing base (67fce02) to head (9c6e828).
⚠️ Report is 6 commits behind head on main.

Files with missing lines Patch % Lines
.../pages/SoftwarePage/components/icons/Alacritty.tsx 50.00% 1 Missing ⚠️
...d/pages/SoftwarePage/components/icons/Aptakube.tsx 50.00% 1 Missing ⚠️
.../pages/SoftwarePage/components/icons/Audiveris.tsx 50.00% 1 Missing ⚠️
...nd/pages/SoftwarePage/components/icons/Autopsy.tsx 50.00% 1 Missing ⚠️
.../pages/SoftwarePage/components/icons/AwsSamCli.tsx 50.00% 1 Missing ⚠️
...d/pages/SoftwarePage/components/icons/Filebeat.tsx 50.00% 1 Missing ⚠️
...pages/SoftwarePage/components/icons/Winlogbeat.tsx 50.00% 1 Missing ⚠️
Additional details and impacted files
@@           Coverage Diff           @@
##             main   #47659   +/-   ##
=======================================
  Coverage   67.19%   67.19%           
=======================================
  Files        3618     3627    +9     
  Lines      229110   229151   +41     
  Branches    11899    11908    +9     
=======================================
+ Hits       153944   153978   +34     
- Misses      61324    61331    +7     
  Partials    13842    13842           
Flag Coverage Δ
frontend 58.02% <50.00%> (+0.03%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@coderabbitai

coderabbitai Bot commented Jun 16, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

Walkthrough

Eight new Windows maintained apps are added: Alacritty, Amazon Corretto JRE 8, Aptakube, Audiveris, Autopsy, AWS SAM Command Line Interface, Filebeat, and Winlogbeat. Each app receives a Winget input JSON manifest defining package identifiers and installer metadata, a windows.json output file containing versioned SQL detection queries, MSI installer URLs, SHA-256 checksums, upgrade codes, and embedded PowerShell install/uninstall script strings. The global apps.json registry is updated with entries for all eight apps, plus two typographic corrections to existing Moom and Splice descriptions. On the frontend, seven new React SVG icon components are added and registered in SOFTWARE_NAME_TO_ICON_MAP in the icons index.

Possibly related PRs

  • fleetdm/fleet#47648: Extends the same SOFTWARE_NAME_TO_ICON_MAP in frontend/pages/SoftwarePage/components/icons/index.ts with new software-name keys including AWS CLI variants, directly overlapping with this PR's icon mapping changes.
  • fleetdm/fleet#47396: Modifies the same frontend icon infrastructure by adding new icon components and extending SOFTWARE_NAME_TO_ICON_MAP in the same index.ts file.
  • fleetdm/fleet#47175: Adds new app entries to apps.json and extends SOFTWARE_NAME_TO_ICON_MAP with new icon components for newly maintained Windows apps, following the same pattern as this PR.
🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Title check ✅ Passed The title 'Add more Windows FMAs (A)' directly reflects the main change: adding six Windows Fleet-maintained applications beginning with the letter A, as confirmed by the PR objectives.
Description check ✅ Passed The pull request description thoroughly covers the objectives, new applications being added, catalog updates, and minor improvements with specific references to changes.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch windows-fma-pmpc-parity

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@allenhouchins
allenhouchins marked this pull request as draft June 16, 2026 13:48
@allenhouchins allenhouchins changed the title Add Windows FMAs for PatchMyPC parity (Letter A) Add more Windows FMAs (A) Jun 16, 2026

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🧹 Nitpick comments (1)
ee/maintained-apps/outputs/filebeat/windows.json (1)

16-20: ⚡ Quick win

Consider using $UPGRADE_CODE placeholder instead of hardcoding.

The uninstall script hardcodes the upgrade code '{84CD8645-4DB1-5D89-81E3-071F628CFEAE}' while the same value exists in the upgrade_code field. The backend supports $UPGRADE_CODE placeholder substitution (per software_installers.go:330-338), which would ensure the script and JSON field stay synchronized automatically.

If these values ever diverge, the uninstall would target the wrong products.

♻️ Suggested change to use placeholder

In the uninstall script, replace the hardcoded value:

-foreach ($product_code in $inst.RelatedProducts('{84CD8645-4DB1-5D89-81E3-071F628CFEAE}')) {
+foreach ($product_code in $inst.RelatedProducts($UPGRADE_CODE)) {
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@ee/maintained-apps/outputs/filebeat/windows.json` around lines 16 - 20, The
uninstall PowerShell script in the refs field hardcodes the upgrade code value
'{84CD8645-4DB1-5D89-81E3-071F628CFEAE}' in the call to $inst.RelatedProducts(),
but this value is already defined in the upgrade_code field above. Replace the
hardcoded upgrade code in the script with the $UPGRADE_CODE placeholder, which
the backend will automatically substitute during execution. This ensures the
script and JSON configuration stay synchronized and prevents the uninstall from
targeting incorrect products if the values ever diverge.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Nitpick comments:
In `@ee/maintained-apps/outputs/filebeat/windows.json`:
- Around line 16-20: The uninstall PowerShell script in the refs field hardcodes
the upgrade code value '{84CD8645-4DB1-5D89-81E3-071F628CFEAE}' in the call to
$inst.RelatedProducts(), but this value is already defined in the upgrade_code
field above. Replace the hardcoded upgrade code in the script with the
$UPGRADE_CODE placeholder, which the backend will automatically substitute
during execution. This ensures the script and JSON configuration stay
synchronized and prevents the uninstall from targeting incorrect products if the
values ever diverge.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: 1abb21ff-d0fa-4f02-86ea-5f9c79b1db9a

📥 Commits

Reviewing files that changed from the base of the PR and between e8f617e and 9c6e828.

⛔ Files ignored due to path filters (2)
  • website/assets/images/app-icon-filebeat-60x60@2x.png is excluded by !**/*.png
  • website/assets/images/app-icon-winlogbeat-60x60@2x.png is excluded by !**/*.png
📒 Files selected for processing (8)
  • ee/maintained-apps/inputs/winget/filebeat.json
  • ee/maintained-apps/inputs/winget/winlogbeat.json
  • ee/maintained-apps/outputs/apps.json
  • ee/maintained-apps/outputs/filebeat/windows.json
  • ee/maintained-apps/outputs/winlogbeat/windows.json
  • frontend/pages/SoftwarePage/components/icons/Filebeat.tsx
  • frontend/pages/SoftwarePage/components/icons/Winlogbeat.tsx
  • frontend/pages/SoftwarePage/components/icons/index.ts
✅ Files skipped from review due to trivial changes (4)
  • ee/maintained-apps/inputs/winget/filebeat.json
  • frontend/pages/SoftwarePage/components/icons/Filebeat.tsx
  • frontend/pages/SoftwarePage/components/icons/Winlogbeat.tsx
  • ee/maintained-apps/outputs/winlogbeat/windows.json
🚧 Files skipped from review as they are similar to previous changes (2)
  • ee/maintained-apps/outputs/apps.json
  • frontend/pages/SoftwarePage/components/icons/index.ts

@allenhouchins
allenhouchins marked this pull request as ready for review June 16, 2026 14:30
@allenhouchins
allenhouchins merged commit 4dcfab0 into main Jun 16, 2026
31 of 35 checks passed
@allenhouchins
allenhouchins deleted the windows-fma-pmpc-parity branch June 16, 2026 14:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants