Commit Graph
18821 Commits
Author SHA1 Message Date
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
Konstantin Sykulev 8c91c03eea Software renaming lock contention (#33791)
**Related issue:** Resolves #33668

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

- [ ] Added/updated automated tests
- [ ] 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
2025-10-06 11:30:10 -05:00
Scott GressandIan Littman 12ab93d9e0 Update "Setting up your device" page for MacOS Setup Experience (#33770)
<!-- Add the related story/sub-task/bug number, like Resolves #123, or
remove if NA -->
**Related issue:** Resolves #33173

# Details

This PR updates the "Setting up your device" page which appears in Linux
and Windows (and as of https://github.com/fleetdm/fleet/issues/30117,
MacOS) setup experiences. Front-end updates:

* Lots of renaming of things that were software-specific to now more
generically refer to "setup step"
* Removed the "My Device" heading
* Moved the info button inside the table header
* Added status of setup script run to the table
* Updated the empty state to not refer specifically to software
* Added optional `setup_only` query param to the `/device` page which,
if set, will always show the "setting up your device" page even if all
setup is complete. Normally as soon as setup finishes, the front-end
redirects to the regular My Device page. In the case of MacOS setup
experience, we don't want this to happen as we expect to either 1) keep
the setup experience up indefinitely if we're blocking device setup on
software install failure, or 2) close the setup dialog on successful
completion. This query param is also handy for testing.
* Added new "Configuration complete" state to be shown when all setup
steps are finished (successfully or not). This is only applicable on
MacOS, since other platforms will redirect to the My Device page when
finished.

This PR also includes one small backend change to the
`/device/{token}/setup_experience/status` API endpoint, to have it
return a `scripts` array alongside the existing `software` array. This
endpoint is not documented publicly.

# 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
Updated existing DeviceUserPage tests that check the SettingUpYourDevice
content, and added new tests for the new scripts content and the new
query param.

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

<img width="1028" height="867" alt="Screenshot 2025-10-02 at 7 20 28 PM"
src="https://github.com/user-attachments/assets/7adab2c2-dac1-4463-96fc-13094da2c379"
/>

(note that as of now we'd only have at most one script, showing multiple
here to demonstrate the different states)

<img width="1031" height="524" alt="Screenshot 2025-10-02 at 7 22 01 PM"
src="https://github.com/user-attachments/assets/bedaa840-d7ef-4b6f-8daf-6ac3b447594f"
/>

<img width="1222" height="760" alt="image"
src="https://github.com/user-attachments/assets/42cf82d5-53e0-4c4d-b60e-9ac2cc86af68"
/>

---------

Co-authored-by: Ian Littman <iansltx@gmail.com>
2025-10-06 16:45:53 +01:00
Victor Lyuboslavsky 0aba71bf05 Updated docker vulnerabilities slack webhooks. (#33814)
Moving Slack webhooks since g-security-compliance will be responsible
for docker image vulnerabilities.
2025-10-06 10:25:38 -05:00
Luke HeathandGeorge Karr 8dc81ecae9 Remove GitOps migrate, add migration shell script (#33680)
For #33671

---------

Co-authored-by: George Karr <georgekarrv@gmail.com>
2025-10-06 10:22:59 -05:00
Noah Talerman 4026bbbe69 Product Designer position (#33868) 2025-10-06 10:10:24 -05:00
Magnus Jensen 5e65615eca error on pending locks for macos (#33857)
<!-- Add the related story/sub-task/bug number, like Resolves #123, or
remove if NA -->
**Related issue:** Resolves #31636 QA finding

# Checklist for submitter

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


## Testing

- [x] Added/updated automated tests

- [x] QA'd all new/changed functionality manually
2025-10-06 11:20:18 -03:00
Allen Houchins 48b7291c8b Fixed broken link (#33866)
- Fixed broken link to
https://fleetdm.com/guides/policy-automation-run-script
2025-10-06 09:13:07 -05:00
Noah Talerman c435d9dce3 Engineering handbook: Conclude current milestone (#33863) 2025-10-06 09:12:56 -05:00
Noah Talerman e1613faba3 Product Design rituals (#33864)
- We haven't been doing product design check-in
2025-10-06 09:56:32 -04:00
Marko LisicaandNoah Talerman 02c75f516e [Update story template] Add name for the type filter in the activity feed (#33856)
- We're adding an option to filter the activity feed on the dashboard,
and we introduced a dropdown to filter by activity type. We want to use
more human friendly names.

e.g. `edited_macos_min_version` -> "OS updates: edited macOS"

---------

Co-authored-by: Noah Talerman <47070608+noahtalerman@users.noreply.github.com>
2025-10-06 09:42:05 -04:00
Noah Talerman dfed16339e Roadmap preview: Use cross (†) instead of star (*) (#33828)
- Star (*) renders as a bullet on the website:

<img width="725" height="109" alt="Screenshot 2025-10-03 at 4 25 10 PM"
src="https://github.com/user-attachments/assets/45b9c987-1c81-417f-915a-29a695e998ce"
/>
2025-10-06 09:37:21 -04:00
Martin Angers 8a9b27b2b9 Bugfix: create past activities when an "activated" VPP app install is cancelled by turning MDM off (#33693) 2025-10-06 09:15:40 -04:00
Jorge FalconandMike Thomas ca2efb90dd Kubernetes guide update - MySQL and Redis to use bitnamilegacy images (#33833)
* Updated MySQL instructions to use `bitnamilegacy/mysql`
* Updated Redis Instructions to use `bitnamilegacy/redis`

---------

Co-authored-by: Mike Thomas <78363703+mike-j-thomas@users.noreply.github.com>
2025-10-06 09:02:08 -04:00
Gabriel Hernandez 83a637469c handle all three ios and ipad unenrollment states and diplay correct copy in unenroll modal (#33804)
This is a quick fix to handle all three cases when showing the unenroll
modal for ios and ipad devices.
It also adds better naming to the functions that check the enrollment
type.

- [x] QA'd all new/changed functionality manually
2025-10-06 10:44:58 +01:00
Robert Fairburn 5f98be0f08 Allow RW of state for github/infra (#33852) 2025-10-05 19:40:49 -05:00
Robert Fairburn c63f3ca183 Update iam rules for github on infra account (#33812) 2025-10-05 18:45:50 -05:00
Sam Pfluger 3009630141 Add an account to your patch (#33846) 2025-10-05 17:41:42 -05:00
Sam Pfluger 9604e64f28 Create "Marketing-led" and "Sales-led" intent signals (#33845) 2025-10-04 19:57:05 -05:00
fleet-releaseandmostlikelee 66600fd7cd Update Fleet-maintained apps (#33844)
Automated ingestion of latest Fleet-maintained app data.

Co-authored-by: mostlikelee <16102903+mostlikelee@users.noreply.github.com>
2025-10-04 20:43:21 -04:00
Sam Pfluger 1c6b30c1dc Update intent signal capture frequency (#33840) 2025-10-04 03:23:24 -05:00
Noah Talerman 10a7348ecf Entra conditional access guide (#33817)
Add link to reach out to sales
- Context: Folks from Microsoft are going to create a LinkedIn post
talking about Entra conditional access. They're going to link to this
guide in the LinkedIn post.
2025-10-03 18:07:04 -04:00
Noah Talerman c92644c72c "macOS" (#33773) 2025-10-04 06:56:41 +09:00
Lucas Manuel Rodriguez 527c2230e9 Add support for legacy Company portal SSO extension (#33796)
Resolves #33319

- [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
2025-10-03 17:56:38 -03:00
Juan FernandezandIan Littman 1ca2b951a7 GitOps bug: Icon was ignored when using software URL (#33799)
**Related issue:** Resolves #33695

When trying to match package icons, first try to match by hash then by
URL.

# 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

---------

Co-authored-by: Ian Littman <iansltx@gmail.com>
2025-10-03 14:12:53 -05:00
fleet-releaseandmostlikelee 2908d8e5ee Update Fleet-maintained apps (#33808)
Automated ingestion of latest Fleet-maintained app data.

Co-authored-by: mostlikelee <16102903+mostlikelee@users.noreply.github.com>
2025-10-03 14:57:47 -04:00
Marko Lisica bd6ed423e4 Update android-mdm-setup.md (#33785)
Remove part that is wrong.
2025-10-03 14:45:55 -04:00
Jordan Montgomery 06dc4e85fd Allow specifying setup experience apps for iOS/iPadOS (#33772)
<!-- Add the related story/sub-task/bug number, like Resolves #123, or
remove if NA -->
**Related issue:** Resolves #33698 

# 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)
- [x] If paths of existing endpoints are modified without backwards
compatibility, checked the frontend/CLI for any necessary changes

## 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
2025-10-03 14:39:09 -04:00
Jonathan Katz 0a666499ae 33492 software title host count includes software installers (#33588)
<!-- Add the related story/sub-task/bug number, like Resolves #123, or
remove if NA -->
**Related issue:** Resolves #33492

# 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.

- [ ] Input data is properly validated, `SELECT *` is avoided, SQL
injection is prevented (using placeholders for values in statements)
- [ ] If paths of existing endpoints are modified without backwards
compatibility, checked the frontend/CLI for any necessary changes

## Testing

- [x] Added/updated automated tests
- [ ] 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:

- [ ] Confirmed that the fix is not expected to adversely impact load
test results
- [ ] Alerted the release DRI if additional load testing is needed
2025-10-03 12:16:00 -04:00