fleet/frontend/pages/SoftwarePage/SoftwareTitleDetailsPage
Ian Littman 3f703b557a
Allow setting software icons via GitOps (#32886)
Fixes #31897.

# Checklist for submitter

If some of the following don't apply, delete the relevant line.

- [ ] Changes file added for user-visible changes in `changes/`,
`orbit/changes/` or `ee/fleetd-chrome/changes`.
See [Changes
files](https://github.com/fleetdm/fleet/blob/main/docs/Contributing/guides/committing-changes.md#changes-files)
for more information.

- [x] Input data is properly validated, `SELECT *` is avoided, SQL
injection is prevented (using placeholders for values in statements)

## Testing

- [ ] Added/updated automated tests

- [ ] QA'd all new/changed functionality manually

## New Fleet configuration settings

- [ ] Verified that the setting is exported via `fleetctl
generate-gitops`
- [x] Verified the setting is documented in a separate PR to [the GitOps
documentation](https://github.com/fleetdm/fleet/blob/main/docs/Configuration/yaml-files.md#L485)
- [ ] Verified that the setting is cleared on the server if it is not
supplied in a YAML file (or that it is documented as being optional)
- [x] Verified that any relevant UI is disabled when GitOps mode is
enabled

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

- New Features
- GitOps now supports software icons: generate and include icon
files/paths in specs for packages and App Store apps.
  - CLI adds flags to control concurrent icon uploads/updates.
- Icons are uploaded, updated, or deleted automatically during GitOps
runs.
  - UI YAML modal now includes icon_url and offers icon download.

- Improvements
  - Robust path resolution for icon assets across specs.
  - Non-YAML outputs handle both string and byte file contents.

- Bug Fixes
  - Removes stale icons after App Store app re-association.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Co-authored-by: Scott Gress <scottmgress@gmail.com>
Co-authored-by: Scott Gress <scott@fleetdm.com>
Co-authored-by: Jahziel Villasana-Espinoza <jahziel@fleetdm.com>
2025-09-26 15:59:48 -05:00
..
AdvancedOptionsModal Fleet UI components; Editor copy button added, File details/uploader gitopsCompatible can now be false (#29307) 2025-05-21 13:32:18 -04:00
ConfirmSaveChangesModal FE: Button renaming, better storybook view, remove unused code (#28245) 2025-04-16 09:56:09 -04:00
DeleteSoftwareModal Fleet UI: Follow up for GitOps YAML (#29800) 2025-06-09 10:05:03 -04:00
EditIconModal Fleet UI: Fix self-service preview icon default FMA name match (#32917) 2025-09-12 10:55:31 -04:00
EditSoftwareModal FE: Cleanup lint warnings (#32086) 2025-08-21 16:21:45 -05:00
SoftwareInstallerCard Add custom software icons (#32652) 2025-09-05 17:31:03 -05:00
SoftwareSummaryCard Add custom software icons (#32652) 2025-09-05 17:31:03 -05:00
ViewYamlModal Allow setting software icons via GitOps (#32886) 2025-09-26 15:59:48 -05:00
_styles.scss Fleet UI: Add policies table to the sw title details page (#28886) 2025-05-13 13:41:44 -04:00
helpers.tests.ts Add custom software icons (#32652) 2025-09-05 17:31:03 -05:00
helpers.ts Fleet UI: Allow gitOps mode to add package to view YAML (#29274) 2025-05-22 09:47:57 -04:00
index.ts Implement UI for new software pages (#15579) 2023-12-12 15:03:33 -06:00
SoftwareTitleDetailsPage.tsx Add custom software icons (#32652) 2025-09-05 17:31:03 -05:00