Commit Graph
18849 Commits
Author SHA1 Message Date
Tim Lee aae4ccec54 31010 santa tables (#33218) 2025-10-08 08:58:08 -06:00
Noah Talerman ad93a44ad9 Add back gitops-migrate file (#33981) 2025-10-08 09:44:59 -05:00
Noah Talerman 4682334131 GitOps migration tool (#33913) 2025-10-08 09:44:38 -05:00
Jahziel Villasana-EspinozaandRachelElysia 0a3c6c35d3 Android software ingestion (#33826)
> Closes #33581 


<!-- Add the related story/sub-task/bug number, like Resolves #123, or
remove if NA -->
**Related issue:** Resolves #

# Checklist for submitter

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

- [x] 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

- [x] Added/updated automated tests

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

## Database migrations

- [x] Checked table schema to confirm autoupdate
- [x] Checked schema for all modified table for columns that will
auto-update timestamps during migration.
- [x] Ensured the correct collation is explicitly set for character
columns (`COLLATE utf8mb4_unicode_ci`).

---------

Co-authored-by: RachelElysia <rachel@fleetdm.com>
2025-10-08 10:24:38 -04:00
Noah Talerman e01f8c7ebd 4.74 article: Emphasize Linux (#33961) 2025-10-08 09:50:40 -04:00
RachelElysia 18984f9ffa Fleet UI: Fix "existing software" error message and make other add sw error messages consistent (#33947) 2025-10-08 09:17:07 -04:00
Mike Thomas 21ce42e9da Update free-migration-from-jamf-to-fleet.md (#33969)
- changed bullets to prose so the article reads naturally rather than a
bulleted outline.
2025-10-08 19:50:29 +09:00
hwlans 6a1592bd9d Update deploying-entra-platform-sso-with-fleet.md (#33895)
Added information about Secure Enclave being the default key storage
since august 2025.

<!-- Add the related story/sub-task/bug number, like Resolves #123, or
remove if NA -->
**Related issue:** Resolves #

# Checklist for submitter
2025-10-08 06:49:58 -03:00
Lucas Manuel RodriguezandIan Littman b5626e17e6 Fix lingering live queries keys in Redis (#33928)
Resolves #33254

This can be reproduced locally by running the following "high load"
test:

Run 500 hosts using osquery-perf:
```
go run ./cmd/osquery-perf --enroll_secret ... \
  --host_count 500 \
  --server_url https://localhost:8080 \
  --live_query_fail_prob 0.0 \
  --live_query_no_results_prob 0.0 \
  --orbit_prob 0.0 \
  --http_message_signature_prob 0.0
```

Run `stress_test_live_queries.sh`:
```
#!/bin/bash

while true; do
        curl -v -k -X POST -H "Authorization: Bearer $TEST_TOKEN" https://localhost:8080/api/latest/fleet/queries/$SAVED_QUERY_ID/run -d '{"host_ids": [<500 comma-separated host ids>]}'
done
```

Use "Redis Insight" or the like and you will start to see
`livequery:{$CAMPAIGN_ID}` keys with `No limit` (which is the bug):

<img width="1380" height="227" alt="Screenshot 2025-10-07 at 3 10 26 PM"
src="https://github.com/user-attachments/assets/30434348-3217-40c4-8ebc-bab5ceb4daa9"
/>

- [X] Changes file added for user-visible changes in `changes/`,
`orbit/changes/` or `ee/fleetd-chrome/changes`.

## Testing

- [x] Added/updated automated tests

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

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

## Summary by CodeRabbit

- Bug Fixes
- Prevent lingering Redis keys for live queries by ensuring keys are
cleaned up and not recreated when completing/canceling non-existent
queries.
- Improves resource usage and avoids stale state in live query
processing.

- Tests
- Added tests verifying proper retrieval/completion behavior and that no
Redis key is created for non-existent live queries.

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

---------

Co-authored-by: Ian Littman <iansltx@gmail.com>
2025-10-08 06:36:38 -03:00
Dante Catalfamo 53f74e3ebc Add guide for Windows and Linux setup experience (#33471)
**Related issue:** Resolves #32543
2025-10-07 17:44:44 -04:00
RachelElysia b7068c2be9 Fleet UI: Update generateResultCountText to handle "certificates" (#33952) 2025-10-07 17:24:05 -04:00
Zach WassermanandJacob Shandling 41c53860e3 Add support for VSCode fork extensions in software inventory (#33595)
**Related issue:** Resolves #31397

# Checklist for submitter

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

- [x] 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

- [x] Added/updated automated tests

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

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2025-10-07 14:05:22 -07:00
Luke Heath d9480eb460 Add missed changelog item in 4.74.0 (#33955) 2025-10-07 15:44:49 -05:00
Harrison RavazzoloandBrock Walters 9e3cab666e Update doc assets (#33740)
After talking with eng team and @nonpunctual, the /assets folder is
reserved for things inside the fleet app, so creating a new folder in
`/docs/solutions`

@AdamBaali - I updated your article paths and moved the assets to the
new folder, do you mind taking a peek and making sure it looks good?

Note: brock, we should also update handbook for new ritual to add
articles with assets like this.

---------

Co-authored-by: Brock Walters <153771548+nonpunctual@users.noreply.github.com>
2025-10-07 13:02:36 -06:00
Rachael Shaw 75104bfbcb Rename "Single sign-on options" settings page to "Single sign-on (SSO)" (#33946)
As part of https://github.com/fleetdm/fleet/issues/25798, we planned to
rename "Single sign-on options" to "Single sign-on (SSO)". However, we
missed adding a check for the copy change in the test plan, so we didn't
catch that the change didn't make it in.

The documentation/guide changes referencing the new page name were
already merged as part of 4.71.
2025-10-07 13:38:37 -05:00
RachelElysia ad73c5ce01 Fleet UI: Show Android software inventory (#33809)
## Issue
Closes #33580
Part of Story #33060 

## Description
- Anything related to adding "android_apps" into the FE code
- Add to frontend interfaces `interfaces/platform.ts` for platforms that
do not support vuln scanning
- Add `application_id` key and `source: "android_apps"` value to
`ISoftware`
- Add source type conversion `android_apps: "Application (Android)"` for
rendering type in UI
  - Add to `INSTALLABLE_SOURCE_PLATFORM_CONVERSION`
- Show unsupported vuln empty state in software details page for
`source: "android_apps"`
  - Add android icon to software icons
- Use android icon as default fallback for `source: "android_apps"`
software
- Show android host details page > software library tab, but with
unsupported empty state correct showing android link instead of hiding
tab all together
- Show android host details page > software inventory tab > vuln filter
on, vuln not supported empty state

## Testing

- [x] QA'd all new/changed functionality manually
-
> FE code was manually QAed with hard coded data but will require BE
changes to be merged to E2E QA
2025-10-07 14:08:25 -04:00
fleet-releaseandmostlikelee e02e9cb352 Update Fleet-maintained apps (#33932)
Automated ingestion of latest Fleet-maintained app data.

Co-authored-by: mostlikelee <16102903+mostlikelee@users.noreply.github.com>
2025-10-07 13:22:07 -04:00
jacobshandlingandJacob Shandling bb608296fe Add gap between batch details tab table and table header (#33899)
<!-- Add the related story/sub-task/bug number, like Resolves #123, or
remove if NA -->
**Related issue:** Resolves #33888 

<img width="1252" height="563" alt="Screenshot 2025-10-06 at 2 00 40 PM"
src="https://github.com/user-attachments/assets/2a021874-688a-4a14-a2b3-43eaa11c7af1"
/>

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

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2025-10-07 09:33:46 -07:00
RachelElysia 6edc78d8ec Fleet UI: Resurface post-install script output (#33765) 2025-10-07 11:02:39 -04:00
Mike McNeil 884faded33 Update comparison tables to reflect where folks are most commonly migrating from rn (#33936)
Updates comparison tables to reflect where folks are most commonly
migrating from rn
2025-10-07 08:47:26 -06:00
Martin Angers adee5f78ed Bugfix: error when package added that matches software title with existing VPP app (#33727) 2025-10-07 10:15:12 -04:00
Noah Talerman 3edec2d4b2 Engineering handbook: Update milestone due dates (#33933) 2025-10-07 10:14:29 -04:00
Rachael Shaw b94aba24aa Remove duplicate certificate authorities example from YAML docs (#33931)
There was an extra one left over from merging in doc updates.
2025-10-07 08:59:30 -05:00
Gabriel Hernandez 95c559fbab Add host platform to mdm enrolled and mdm unenrolled activity details (#33858)
**Related issue:** Fixes #33807

Adds missing host platform key to mdm enrolled and mdm unenrolled
activity details api response data. This allows the UI to display the
activities properly

- [x] Added/updated automated tests
- [x] QA'd all new/changed functionality manually
2025-10-07 14:22:37 +01:00
Graham Williams e18fbd9208 Add GrayW to humans (#33743) 2025-10-07 13:51:44 +01:00
Mike Thomas a893aa00c9 re-positioned the image (#33925)
a couple more tweaks.
2025-10-07 20:33:09 +09:00
Mike Thomas 62208c861f Jnuc article - added image (#33924)
- Fixed note block and caveat asterisk.
- Added article image
2025-10-07 20:16:03 +09:00
Ian Littman 153301e892 Update copy to indicate that iOS/iPadOS work with vitals labels (#33919)
For #32072. Should be cherry-picked to 4.75 since that's where the
support was added.

# Checklist for submitter

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

- [x] 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.

## Testing

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

For unreleased bug fixes in a release candidate, one of:

- [x] Confirmed that the fix is not expected to adversely impact load
test results
2025-10-07 06:07:51 -05:00
Irena ReedyandMike Thomas e8bcd480fc Create $0-migration-to-fleet.md (#33872)
Alex's article that we are hoping to get live today and point the Uber
ad URL redirect to it
[fleetdm.com/jnuc-2025](http://fleetdm.com/jnuc-2025)

---------

Co-authored-by: Mike Thomas <78363703+mike-j-thomas@users.noreply.github.com>
2025-10-07 20:07:06 +09:00
Noah Talerman a243ddc68a Product Designer position (#33912) 2025-10-07 00:34:32 -06:00
Lucas Manuel Rodriguez 865ca2ae0a Add fleetd post-release step (#33881)
Improving the release script for fleetd to not miss the post-release
steps.
2025-10-06 22:05:26 -03:00
George KarrandAllen Houchins c262310ae3 Update team g-mdm hosts with new identifiers (#33792)
Pending 4.74.0 for host id support in gitops

---------

Co-authored-by: Allen Houchins <allenhouchins@mac.com>
2025-10-06 19:11:36 -05:00
Allen Houchins 9d61bebde1 Migrating yaml to 4.74.0 requirements (#33915)
- Walked through the new gitops-migrate process
2025-10-06 19:01:24 -05:00
Eric 489cb4e773 Website: update logos on /contact page (#33911)
Closes: https://github.com/fleetdm/fleet/issues/33608

Changes:
- Replaced the rows of logos on the /contact page with the
`<logo-carousel>` component
- Updated the layout of the contact page at <990px screen width
2025-10-06 18:01:55 -05:00
Luke Heath 23d95c3fdd Fix typo in AWS IAM authentication section (#33908) 2025-10-06 17:30:46 -05:00
Mike Thomas cd4c67f1e5 Update entra-conditional-access-integration.md (#32574)
Related to
https://github.com/fleetdm/fleet/pull/32434#pullrequestreview-3172873391

I re-edited the guide to follow an easier-to-scan, step-by-step format. 

- Rewrote steps into shorter, directive numbered lists in the imperative
mood.
- I added intro lines and note blocks to separate essential instructions
from the supporting context.
- Reorganized post-setup sections into clearer buckets: Disabling,
troubleshooting, end-user experience, and advanced GitOps setup.
- Tightened up UI references using bold instead of quotes.

No technical meaning was changed (I hope). The goal was to make the
guide easier to scan, follow, and maintain, as part of an ongoing effort
to improve doc content consistency and readability.
2025-10-07 07:06:59 +09:00
Noah Talerman f4fe03e1ca Release article: 4.74.0 (#33716) 2025-10-06 17:04:05 -05:00
+1 48cb0908cd Docs v4.74.0 (#33879)
Documentation changes for 4.74

---------

Co-authored-by: Marko Lisica <83164494+marko-lisica@users.noreply.github.com>
Co-authored-by: Noah Talerman <47070608+noahtalerman@users.noreply.github.com>
Co-authored-by: Victor Lyuboslavsky <2685025+getvictor@users.noreply.github.com>
Co-authored-by: Ian Littman <iansltx@gmail.com>
Co-authored-by: Noah Talerman <noahtal@umich.edu>
Co-authored-by: Lucas Manuel Rodriguez <lucas@fleetdm.com>
Co-authored-by: Magnus Jensen <magnus@fleetdm.com>
Co-authored-by: Jordan Montgomery <elijah.jordan.montgomery@gmail.com>
Co-authored-by: Janis Watts <184028114+jmwatts@users.noreply.github.com>
Co-authored-by: Allen Houchins <32207388+allenhouchins@users.noreply.github.com>
2025-10-06 17:03:10 -05:00
Noah Talerman 46df8f8274 API reference: Remove errant key (#33898) 2025-10-06 17:01:11 -05:00
Magnus Jensen 58c9df8796 Smallstep qa fixes (#33885) 2025-10-06 16:32:29 -05:00
Jordan Montgomery b0866dcb10 Fix failing migration by conditionally deleting old constraint (#33878)
<!-- Add the related story/sub-task/bug number, like Resolves #123, or
remove if NA -->
**Related issue:** Resolves #33876 

Modifies the migration to check for the old constraint before deleting
it in case it was created on mysql 5.7

No changes file since this is an unreleased bug

# Checklist for submitter

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

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

## Testing

- [x] Added/updated automated tests
- [x] Where appropriate, [automated tests simulate multiple hosts and
test for host
isolation](https://github.com/fleetdm/fleet/blob/main/docs/Contributing/reference/patterns-backend.md#unit-testing)
(updates to one hosts's records do not affect another)

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

For unreleased bug fixes in a release candidate, one of:

- [x] Confirmed that the fix is not expected to adversely impact load
test results

## Database migrations

- [x] Checked table schema to confirm autoupdate
- [x] Checked schema for all modified table for columns that will
auto-update timestamps during migration.
- [x] Confirmed that updating the timestamps is acceptable, and will not
cause unwanted side effects.
- [x] Ensured the correct collation is explicitly set for character
columns (`COLLATE utf8mb4_unicode_ci`).
2025-10-06 16:01:26 -04:00
Eric 30abc992fb Website: fix typo in error handler in create-historical-event helper (#33886)
Changes:
- Fixed a typo in an error returned by the create-historical-event
helper. (`inpsect` » `inspect`)
2025-10-06 14:50:59 -05:00
Sam Pfluger 5b2b32ef7f Update receive-from-clay.js (#33883) 2025-10-06 13:25:11 -06:00
Victor Lyuboslavsky 91c15314b7 Updated product group parser to include tech leads and Security & compliance group. (#33849)
<!-- Add the related story/sub-task/bug number, like Resolves #123, or
remove if NA -->
**Related issue:** Resolves #33848

Verified by running the GitHub Action:

```
***"timestamp":"2025-10-05T21:10:43.408Z","level":"info","message":"Parsing product groups from /home/runner/work/fleet/fleet/handbook/company/product-groups.md"***
***"timestamp":"2025-10-05T21:10:43.409Z","level":"info","message":"Found 1 tech lead(s) in mdm group: JordanMontgomery"***
***"timestamp":"2025-10-05T21:10:43.409Z","level":"info","message":"Found 3 developer(s) in mdm group: gillespi314, ghernandez345, MagnusHJensen"***
***"timestamp":"2025-10-05T21:10:43.409Z","level":"info","message":"Found 1 tech lead(s) in orchestration group: lucasmrod"***
***"timestamp":"2025-10-05T21:10:43.410Z","level":"info","message":"Found 4 developer(s) in orchestration group: sgress454, juan-fdz-hawa, iansltx, ksykulev"***
***"timestamp":"2025-10-05T21:10:43.410Z","level":"info","message":"Found 1 tech lead(s) in software group: cdcme"***
***"timestamp":"2025-10-05T21:10:43.410Z","level":"info","message":"Found 4 developer(s) in software group: rachelelysia, jahzielv, jkatz01, mna"***
***"timestamp":"2025-10-05T21:10:43.410Z","level":"info","message":"Found 1 tech lead(s) in security-compliance group: getvictor"***
***"timestamp":"2025-10-05T21:10:43.410Z","level":"info","message":"Found 3 developer(s) in security-compliance group: dantecatalfamo, jacobshandling, mostlikelee"***
```

# Checklist for submitter

This is not a product change. Only an update to gathering engineering
metrics.

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

## Summary by CodeRabbit

- New Features
  - Adds support for the Security & compliance group.
- Extracts and reports Tech Lead memberships, including inclusion in
overall engineering stats.
- Bug Fixes
- More reliable username parsing (handles hyphens, numbers, multi-line
cells).
- Stricter validation halts on missing sections or rows to prevent
partial/inaccurate results, with clearer error messages.
- Tests
- Expanded coverage for new groups, tech leads, error paths, and
edge-case username formats.
- Chores
  - Updated dependencies for stability and maintenance.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-10-06 13:44:18 -05:00
Victor Lyuboslavsky 6eefc8ecb5 Add Security & compliance group to GitHub webhook. (#33850)
<!-- Add the related story/sub-task/bug number, like Resolves #123, or
remove if NA -->
**Related issue:** Resolves #33848



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

## Summary by CodeRabbit

- New Features
- Added support for the Security & Compliance project within the GitHub
integration, enabling tracking and visibility alongside existing
projects.

- Refactor
- Streamlined project mapping logic to improve consistency when
processing updates from GitHub; behavior for existing projects remains
unchanged.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-10-06 13:44:03 -05:00
Eric 292c23497f Website: Update Android Proxy endpoints to return 404 responses if an Android Enterprise are not managed by Fleet (#33816)
Related to: https://github.com/fleetdm/fleet/issues/33266

Changes:
- Added a new helper
`sails.helpers.androidProxy.getIsEnterpriseManagedByFleet`. This helper
returns `true` if a provided Android Enterprise ID is present in the
list of all Android Enterprises managed by Fleet, or `false` if it is
not in the list.
- Updated `create-android-enrollment-token`,
`create-android-signup-url`, and `modify-android-policies` to return a
404 response to the requesting Fleet instance if their Android
Enterprise is not managed by Fleet.
2025-10-06 12:50:42 -05:00
Magnus Jensen a683185bb3 Sort found variables by length descending (#33875)
<!-- Add the related story/sub-task/bug number, like Resolves #123, or
remove if NA -->
**Related issue:** Resolves #33502 

This fixes the mentioned issue by always sorting the found variables in
length descending, to ensure we process the longest variables first,
avoiding us processing a smaller variation of a longer variable first
breaking substitution.

# Checklist for submitter

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

- [x] 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.

## Testing

- [x] Added/updated automated tests
- [x] QA'd all new/changed functionality manually
2025-10-06 14:50:22 -03:00
Noah Talerman e1ca48f549 Supported host operating systems (#33861)
- openSUSE 15.6+
- Lowercase "openSUSE"

Supported added in the following user story:
- #32778
2025-10-06 11:59:35 -05:00
Jonathan Katz e393c1a87c Fix typo in README.md (#33871) 2025-10-06 11:42:35 -05:00
Victor Lyuboslavsky 563bcdf18b Handle multiple software entries with the same bundle ID during renames. (#33479)
- Adjusted logic to support multiple software versions sharing a bundle
ID.
- Extended tests to validate scenarios involving renamed software across
versions.

<!-- Add the related story/sub-task/bug number, like Resolves #123, or
remove if NA -->
**Related issue:** Resolves #33468

# Checklist for submitter

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

- [x] 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.

## Testing

- [x] Added/updated automated tests
- [x] Manually QA'd using osquery `--common_software_name_suffix` switch


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

## Summary by CodeRabbit

- Bug Fixes
- Improves handling of apps that share the same bundle ID, ensuring all
versions are correctly linked and consistently renamed across hosts.
- Reduces duplicate software entries and keeps host associations intact
during rename operations.
- Delivers more reliable software inventory views with accurate app
names derived from bundle IDs.

- Tests
- Adds comprehensive coverage for scenarios with multiple versions per
bundle ID to validate linking and renaming behavior across hosts.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-10-06 11:32:26 -05:00