Skip to content

Add WinSCP as a Windows FMA - #46311

Merged
allenhouchins merged 1 commit into
mainfrom
allenhouchins-winscp-fma
May 28, 2026
Merged

Add WinSCP as a Windows FMA#46311
allenhouchins merged 1 commit into
mainfrom
allenhouchins-winscp-fma

Conversation

@allenhouchins

@allenhouchins allenhouchins commented May 28, 2026

Copy link
Copy Markdown
Member

Add WinSCP to maintained apps: introduce winget input metadata (winscp.json) and add installer/uninstaller PowerShell scripts (winscp_install.ps1 uses Inno Setup silent flags; winscp_uninstall.ps1 locates UninstallString/QuietUninstallString from registry and runs it with silent args). Update outputs: add app entry in apps.json and add winscp/windows.json with version, installer URL, checksums and embedded script refs. Add frontend icon component and image, and register the icon in the icons index.

Summary by CodeRabbit

  • New Features
    • Added WinSCP to the managed software catalog with complete Windows installation and uninstallation support.
    • Integrated WinSCP icon throughout the application interface for improved visual identification and user experience.

Review Change Stack

Add WinSCP to maintained apps: introduce winget input metadata (winscp.json) and add installer/uninstaller PowerShell scripts (winscp_install.ps1 uses Inno Setup silent flags; winscp_uninstall.ps1 locates UninstallString/QuietUninstallString from registry and runs it with silent args). Update outputs: add app entry in apps.json and add winscp/windows.json with version, installer URL, checksums and embedded script refs. Add frontend icon component and image, and register the icon in the icons index.
@codecov

codecov Bot commented May 28, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 50.00000% with 1 line in your changes missing coverage. Please review.
✅ Project coverage is 66.86%. Comparing base (3dec9a0) to head (0a4329e).
⚠️ Report is 2 commits behind head on main.

Files with missing lines Patch % Lines
...end/pages/SoftwarePage/components/icons/Winscp.tsx 50.00% 1 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main   #46311      +/-   ##
==========================================
- Coverage   66.86%   66.86%   -0.01%     
==========================================
  Files        2762     2763       +1     
  Lines      221030   221032       +2     
  Branches    10919    10919              
==========================================
+ Hits       147794   147795       +1     
- Misses      59835    59836       +1     
  Partials    13401    13401              
Flag Coverage Δ
frontend 55.79% <50.00%> (-0.01%) ⬇️

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

☔ View full report in Codecov by Sentry.
📢 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.

@allenhouchins allenhouchins changed the title Add WinSCP app support Add WinSCP as a Windows FMA May 28, 2026
@allenhouchins
allenhouchins marked this pull request as ready for review May 28, 2026 02:54
@allenhouchins
allenhouchins requested a review from a team as a code owner May 28, 2026 02:54
Copilot AI review requested due to automatic review settings May 28, 2026 02:54
@fleet-release
fleet-release requested a review from eashaw May 28, 2026 02:54

@claude claude Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Claude Code Review

This repository is configured for manual code reviews. Comment @claude review to trigger a review and subscribe this PR to future pushes, or @claude review once for a one-time review.

Tip: disable this comment in your organization's Code Review settings.

@allenhouchins
allenhouchins merged commit 796a33b into main May 28, 2026
28 of 29 checks passed
@allenhouchins
allenhouchins deleted the allenhouchins-winscp-fma branch May 28, 2026 02:54
@coderabbitai

coderabbitai Bot commented May 28, 2026

Copy link
Copy Markdown
Contributor

Caution

Review failed

The pull request is closed.

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: d3c56562-f095-4c0a-b19f-2b49fd66389d

📥 Commits

Reviewing files that changed from the base of the PR and between 0b35bf2 and 0a4329e.

⛔ Files ignored due to path filters (1)
  • website/assets/images/app-icon-winscp-60x60@2x.png is excluded by !**/*.png
📒 Files selected for processing (7)
  • ee/maintained-apps/inputs/winget/scripts/winscp_install.ps1
  • ee/maintained-apps/inputs/winget/scripts/winscp_uninstall.ps1
  • ee/maintained-apps/inputs/winget/winscp.json
  • ee/maintained-apps/outputs/apps.json
  • ee/maintained-apps/outputs/winscp/windows.json
  • frontend/pages/SoftwarePage/components/icons/Winscp.tsx
  • frontend/pages/SoftwarePage/components/icons/index.ts

Walkthrough

This PR adds WinSCP support to Fleet by implementing installation and uninstallation automation, application metadata, and frontend UI components. Two PowerShell scripts handle silent installation via Inno Setup flags and registry-based uninstallation with multiple command-format parsing. A winget input manifest defines the x86 MSI installer configuration and script paths. Output definitions include version-specific metadata, detection SQL queries, installer download URL, checksum validation, and embedded script contents. A new React icon component and icon-map entry provide UI support on the Software page.

Possibly related PRs

  • fleetdm/fleet#46252: Adds Beyond Compare as a managed application using the same install/uninstall PowerShell script patterns and registry-based uninstall-string discovery.
  • fleetdm/fleet#46222: Extends SOFTWARE_NAME_TO_ICON_MAP in the icon registry module similar to the WinSCP icon registration logic.
  • fleetdm/fleet#46208: Adds TortoiseGit icon support by extending the shared icon map, following the same frontend integration pattern.
✨ 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 allenhouchins-winscp-fma

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.

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.

2 participants