Commit Graph
22611 Commits
Author SHA1 Message Date
github-actions[bot]andlucasmrod 73bf4e2938 Update versions of fleetd components in Fleet's TUF [automated] (#41984)
Automated change from [GitHub
action](https://github.com/fleetdm/fleet/actions/workflows/fleetd-tuf.yml).

Co-authored-by: lucasmrod <lucasmrod@users.noreply.github.com>
2026-03-18 15:28:22 -03:00
fleetdm-bot ae10413414 Fix duplicate labels_include_any key on claude/windows (#41955)
## Changes

Removes the duplicate `labels_include_any` mapping key from the
`claude/windows` fleet-maintained app entry in
`fleets/workstations.yml`.

This duplicate key causes a YAML validation error ("duplicated mapping
key") because the same key appears twice on the same mapping. The fix
keeps the first occurrence (before `categories`) and removes the second.
2026-03-18 13:17:03 -05:00
Magnus Jensen f5c7a29345 update nanomdm types to avoid confusion (#41877)
<!-- Add the related story/sub-task/bug number, like Resolves #123, or
remove if NA -->
**Related issue:** None

# 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
2026-03-18 13:10:56 -05:00
kilo-code-bot[bot] c4d142af13 Add configured indicators to OS updates platform tabs (#41597) 2026-03-18 12:34:53 -05:00
Sam Pfluger c5878eb92f Revise marketing team table (#41969)
Updated team roles and responsibilities in the marketing handbook.
2026-03-18 12:19:32 -05:00
bb051c4c51 Add 'Review CTRs of recently boosted posts' ritual to marketing handbook (#41906)
## Summary
- Adds a new weekly ritual **"Review CTRs of recently boosted posts"**
to the marketing handbook rituals
(`handbook/marketing/marketing.rituals.yml`).
- DRI: `irenareedy` (Irena)
- Includes a note that the CEO will attend the first few sessions, then
Irena and the CMO will continue running it going forward.

## Changes
- `handbook/marketing/marketing.rituals.yml`: Added new ritual entry at
the end of the file, following the existing format.

Built for
[mikermcneil](https://fleetdm.slack.com/archives/D0AFASLRHNU/p1773784076321939)
by [Kilo for Slack](https://kilo.ai/features/slack-integration)

---------

Co-authored-by: kiloconnect[bot] <240665456+kiloconnect[bot]@users.noreply.github.com>
Co-authored-by: Irena Reedy <irena@fleetdm.com>
2026-03-18 09:42:53 -07:00
Eric cee07b15e0 Website: fix broken links on customers page. (#41964)
Changes:
- Fixed broken `@click` links on the /customers page
2026-03-18 11:27:15 -05:00
melpike c376ccbe97 Standardize the style and example for default value (#41450)
Update styles and units for server​_default​_max​_request​_body​_size
2026-03-18 10:21:17 -06:00
Juan Fernandez 52822be6d4 Trim spaces on Fleet's names (36312)
Resolves #36312 

- Validate and trim fleet names in NewTeam, ModifyTeam, and
ApplyTeamSpecs
- Trim fleet names in gitops YAML parsing (parseName)
- Disable submit button in CreateTeamModal and RenameTeamModal when name
is whitespace-only
2026-03-18 12:20:23 -04:00
Eric ab3e5ce7f3 Website: Update GitOps workshop page to show events without a venue set. (#41956)
Changes:
- Updated the GitOps workshop page to show events with no venue set.
2026-03-18 11:10:04 -05:00
Irena Reedy 64e247d1ab Update fleet-4.82.0.md (#41958)
added youtube video
2026-03-18 12:08:00 -04:00
Magnus Jensen a2efbd4aab Remove wrong callout that profiles is resent if secrets change (#41916)
This is not behaviour we have today for either Apple or Windows.
2026-03-18 12:03:00 -04:00
fleet-releaseandallenhouchins 4abd911000 Update Fleet-maintained apps (#41954)
Automated ingestion of latest Fleet-maintained app data.

Co-authored-by: allenhouchins <32207388+allenhouchins@users.noreply.github.com>
2026-03-18 11:02:58 -05:00
Lucas Manuel Rodriguez 67043f53c9 Changes to set compliance status on Entra on Windows hosts when processing policy results (#41903)
Resolves #41478

- Generic changes file for the whole feature included in a previous PR.
- Tested with new changes in the proxy merged in
https://github.com/fleetdm/fleet/commit/5a266bfaca3fa2b4a1f942ef130ad478b88b7a13.

## 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
2026-03-18 12:57:49 -03:00
Allen Houchins 151b2bce94 Add secrets in dogfood-gitops workflow to support Okta SSO (#41928)
This pull request updates the environment variable configuration for
Okta metadata URLs in the `dogfood-gitops` GitHub Actions workflow.
Instead of using a single metadata URL, the workflow now distinguishes
between admin and end user metadata URLs.

Workflow configuration changes:

* Split the `DOGFOOD_OKTA_METADATA_URL` environment variable into two
separate variables: `DOGFOOD_OKTA_METADATA_URL_ADMINS` and
`DOGFOOD_OKTA_METADATA_URL_END_USERS` in the
`.github/workflows/dogfood-gitops.yml` workflow file.
2026-03-18 10:37:46 -05:00
fleet-releaseandmostlikelee 0f31455997 Update Fleet-maintained apps (#41947)
Automated ingestion of latest Fleet-maintained app data.

Co-authored-by: mostlikelee <16102903+mostlikelee@users.noreply.github.com>
2026-03-18 10:30:04 -05:00
Eric 4bffa64e14 Website: Update gitops-workshop view action (#41950)
Changes:
- Updated the GitOps workshop page's view action to omit events without
a venue set. (Note: this is a quick fix to resolve 500 errors on that
page, and I will create a follow up PR to display events without a venue
set)
2026-03-18 10:21:21 -05:00
Juan Fernandez b226eb56d0 New API endpoint for host reports (41534)
Resolves #41534 

Added GET /api/v1/fleet/hosts/{id}/reports endpoint (also accessible as
/hosts/{id}/queries) that lists the query reports associated with a
specific host.
2026-03-18 11:03:48 -04:00
Irena ReedyandAshish Kuthiala 701b4a7247 Create national-research-lab.md (#41926)
Co-authored-by: Ashish Kuthiala <53918208+akuthiala@users.noreply.github.com>
2026-03-18 09:46:06 -05:00
Lucas Manuel Rodriguez ba3746f9fa Fix fleetd crash in Apple M5 hardware by upgrading gopsutil (#41940)
Resolves #41863

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

## Testing

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

Tests performed on the following OSs:
- Windows (arm64)
- macOS (Apple silicon)
- Linux (arm64)
- Linux (amd64)

Features tested on the OSs above:
- "My device".
- Restart fleetd.
- Kill fleet desktop, should re-start.
- Killing stale osqueryd processes on orbit startup.
- Checking if osquery is up and running, exit and start.
- Checking if Fleet Desktop is already running before launching it.
- orbit auto update
- Gracefully shutting down Fleet Desktop before restarting it

---

## fleetd/orbit/Fleet Desktop

- [X] Verified compatibility with the latest released version of Fleet
(see [Must
rule](https://github.com/fleetdm/fleet/blob/main/docs/Contributing/workflows/fleetd-development-and-release-strategy.md))
- [x] If the change applies to only one platform, confirmed that
`runtime.GOOS` is used as needed to isolate changes
- [x] Verified that fleetd runs on macOS, Linux and Windows
- [x] Verified auto-update works from the released version of component
to the new version (see [tools/tuf/test](../tools/tuf/test/README.md))
2026-03-18 11:21:02 -03:00
Tim Lee 35551f4e77 Set recovery key: add remove state (#41934) 2026-03-18 08:06:53 -06:00
Jonathan Katz bd0220df29 Fix patch policy query (#41915)
<!-- Add the related story/sub-task/bug number, like Resolves #123, or
remove if NA -->
**Related issue:** Resolves #41857 

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

- [ ] Input data is properly validated, `SELECT *` is avoided, SQL
injection is prevented (using placeholders for values in statements), JS
inline code is prevented especially for url redirects, and untrusted
data interpolated into shell scripts/commands is validated against shell
metacharacters.
- [ ] 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
- Tested 010 Editor on macOS
2026-03-18 10:00:49 -04:00
melpike b2da50a223 [Route] Update routes.js (#41867)
<!-- Add the related story/sub-task/bug number, like Resolves #123, or
remove if NA -->
**Related issue:** Resolves #40905
2026-03-18 07:49:29 -06:00
Brock Walters fdcc382d8a Update software-self-service.md (#41878)
added current platform-specific support.
2026-03-18 09:48:15 -04:00
05f2daad4b Add 'Registered for a conference' intent signal (#41919)
## Summary

- Adds `'Registered for a conference'` to the `intentSignal` `isIn`
array in three files:
- `website/api/helpers/salesforce/create-historical-event.js` — between
`'Signed up for Fleet event'` and `'Engaged with Fleetie at event'`
- `website/api/controllers/webhooks/receive-from-clay.js` — between
`'Signed up for Fleet event'` and `'Engaged with Fleetie at event'`
-
`website/api/helpers/salesforce/update-or-create-contact-and-account.js`
— added to the `isIn` array
- This replaces the incorrect approach in PR #41918, which added the
signal to the handbook markdown table instead of the code where intent
signals are validated.

---

Built for [Sam
Pfluger](https://fleetdm.slack.com/archives/D0AF8QFBVHB/p1773789580384389?thread_ts=1773788922.891409&cid=D0AF8QFBVHB)
by [Kilo for Slack](https://kilo.ai/features/slack-integration)

---------

Co-authored-by: kiloconnect[bot] <240665456+kiloconnect[bot]@users.noreply.github.com>
Co-authored-by: Sam Pfluger <108141731+Sampfluger88@users.noreply.github.com>
2026-03-18 08:21:50 -05:00
Dale Ribeiro bd8c7dbda1 Fix Customer Support Engineer listing in README (#41828) 2026-03-18 12:51:39 +00:00
Tim Lee 18f364b176 Add recovery password empty state (#41929) 2026-03-18 06:02:15 -06:00
Tim Lee 3833496d26 Show recovery lock password if available (#41924) 2026-03-18 06:01:27 -06:00
Irena ReedyandAshish Kuthiala ab19bed790 Create open-source-technology-company.md (#41927)
Co-authored-by: Ashish Kuthiala <53918208+akuthiala@users.noreply.github.com>
2026-03-18 00:37:56 -05:00
Irena Reedy c72c7f88b6 Tiles for case studies (#41925) 2026-03-17 23:43:11 -05:00
kilo-code-bot[bot]andkiloconnect[bot] cd54e6dc86 Add pricing page cards and comic book illustrations to logos page (#41813)
## Summary

- Adds the three pricing page card images (Free, Premium, Custom) to the
fleetdm.com/logos page
- Adds comic book style illustrations to the logos page, including both
base versions and captioned variants
- Images are displayed attractively in a grid with minimal text — no
stage labels or setup flow framing

### Changes
- `website/views/pages/press-kit.ejs`: Added two new sections ("Pricing
page cards" and "Comic book illustrations") following the existing page
layout pattern, with images only and minimal generic alt text

Built for
[mikermcneil](https://fleetdm.slack.com/archives/D0AFASLRHNU/p1773792420505909?thread_ts=1773792045.787089&cid=D0AFASLRHNU)
by [Kilo for Slack](https://kilo.ai/features/slack-integration)

---------

Co-authored-by: kiloconnect[bot] <240665456+kiloconnect[bot]@users.noreply.github.com>
2026-03-18 11:47:39 +09:00
Allen Houchins 0dc53ec2c3 Switch dogfood SSO to Okta and add metadata URL (#41900)
Add DOGFOOD_OKTA_METADATA_URL to the dogfood GitOps workflow environment
and update SSO configuration to use Okta. it-and-security/default.yml:
change end_user_authentication.entity_id to fleet-end-users and org SSO
entity_id to fleet-admins, set idp_name to Okta for both, remove inline
metadata values, and point metadata_url to $DOGFOOD_OKTA_METADATA_URL.
This centralizes IdP metadata retrieval via a secret URL.
2026-03-17 21:27:33 -05:00
bd4db05e79 Add sampfluger88 as maintainer for Clay webhook and Salesforce helpers (#41922)
## Summary

- Adds `sampfluger88` to `githubRepoMaintainersByPath` for
`website/api/controllers/webhooks/receive-from-clay.js`
- Adds `sampfluger88` to `githubRepoMaintainersByPath` for
`website/api/helpers/salesforce`

These are new entries in the maintainers mapping in
`website/config/custom.js`, ensuring that changes to the Clay webhook
controller and Salesforce helper files are auto-approved for
`sampfluger88`.

Built for [Sam
Pfluger](https://fleetdm.slack.com/archives/D0AF8QFBVHB/p1773792660524399)
by [Kilo for Slack](https://kilo.ai/features/slack-integration)

---------

Co-authored-by: kiloconnect[bot] <240665456+kiloconnect[bot]@users.noreply.github.com>
Co-authored-by: Sam Pfluger <108141731+Sampfluger88@users.noreply.github.com>
2026-03-17 19:37:06 -05:00
Sam Pfluger 886be1c8c3 Add 'go-to-market' to issue template assignments (#41920) 2026-03-17 19:00:59 -05:00
Marko Lisica 3756a8e901 [Guide] Automatically renew certificates deployed from custom SCEP CA on Windows (#41854)
Related to:

- #32746
2026-03-17 17:36:31 -05:00
f8e1623179 Add orbit/fleetd version detection and support both singular/plural version fields in bug tagging workflow (#41268)
Updates the auto-tag-unreleased-bugs workflow to improve version
detection and handling.

## Changes Made

- **Orbit/Fleetd Version Detection**: Added support for detecting Orbit
and Fleetd versions in addition to Fleet server versions. The workflow
now checks `**Orbit version**:` and `**Fleetd version**:` fields (case
insensitive) and validates them against orbit-v* tags.

- **Optimized API Calls**: The workflow now only fetches the data it
needs:
  - Fetches releases only when checking Fleet server versions
  - Fetches tags only when checking Orbit/Fleetd versions
  - This reduces unnecessary GitHub API calls and improves performance

- **Singular/Plural Field Support**: Updated regex patterns to match
both "version" and "versions" in issue templates (e.g., `**Fleet
version**:` and `**Fleet versions**:`). This handles variations in issue
template formatting where either singular or plural forms may be used.

- **Pagination Support**: Both `listReleases` and `listTags` API calls
now use `github.paginate()` to fetch all results instead of just the
first 100. This ensures older Orbit/Fleetd versions or Fleet versions
won't be misclassified as unreleased when they exist beyond the first
page of results.

- **Fixed 4.x Handling**: Corrected the logic for handling "4.x" version
strings (which represent all 4.x versions). The check now occurs before
the empty versions check, preventing issues reporting only "4.x" from
being incorrectly tagged as unreleased.

## Testing

-  Verified regex patterns match both singular and plural forms for
Fleet, Orbit, and Fleetd version fields
-  Confirmed the workflow correctly parses versions from various issue
formats
-  Tested that API optimization only fetches releases or tags based on
which version types are present
-  Verified pagination logic fetches all releases and tags, not just
first 100
-  Tested 4.x handling logic correctly treats it as released

The changes maintain backward compatibility with existing issue formats
while adding support for Orbit/Fleetd version detection, handling
template variations, and ensuring comprehensive version checking through
pagination.

---------

Co-authored-by: anthropic-code-agent[bot] <242468646+Claude@users.noreply.github.com>
Co-authored-by: iansltx <472804+iansltx@users.noreply.github.com>
Co-authored-by: lukeheath <2495927+lukeheath@users.noreply.github.com>
2026-03-17 17:32:01 -05:00
Tim Lee cc02191ae2 Rotate recovery lock password (#41833) 2026-03-17 16:28:25 -06:00
kilo-code-bot[bot]andkiloconnect[bot] 5444c8b705 Double the Quote column width in Fleet Customer Testimonials table (#41904)
## Summary
- Adds a `min-width: 500px` inline style to the "Quote" column header in
the Fleet Customer Testimonials table on the marketing-assets handbook
page.
- This makes the Quote column approximately twice as wide as it
currently renders by default, giving the longer testimonial quotes more
readable space.
- No other columns or content are changed.

Built for [Ashish
Kuthiala](https://fleetdm.slack.com/archives/D0AG9JQ53GA/p1773783685614189)
by [Kilo for Slack](https://kilo.ai/features/slack-integration)

Co-authored-by: kiloconnect[bot] <240665456+kiloconnect[bot]@users.noreply.github.com>
2026-03-17 16:55:02 -05:00
kilo-code-bot[bot]andKilo Code 18b4faa9e5 Fix CVE-2025-2857: Add Windows Firefox update policy and maintained app (#41882)
## Summary

- Adds a Windows Firefox update policy (`update-firefox.yml`) to detect
outdated Firefox installations vulnerable to CVE-2025-2857
- Adds Firefox as a Fleet-maintained app for Windows workstations
(`firefox/windows`) for self-service installation/update
- Registers both the policy and maintained app in `workstations.yml`

## CVE-2025-2857: Firefox Sandbox Escape on Windows

[CVE-2025-2857](https://nvd.nist.gov/vuln/detail/CVE-2025-2857) is a
**critical** sandbox escape vulnerability in Mozilla Firefox on Windows.
Following the Chrome sandbox escape (CVE-2025-2783), Firefox developers
identified a similar pattern in Firefox's IPC code where a compromised
child process could cause the parent process to return an
unintentionally powerful handle, leading to a sandbox escape.

**Affected versions:**
- Firefox < 136.0.4
- Firefox ESR < 128.8.1
- Firefox ESR < 115.21.1

**Only affects Firefox on Windows.** Other operating systems are
unaffected.

## What was changed and why

The Fleet-maintained Firefox app is already at version 148.0.2 (well
beyond the fix), and macOS workstations already had both an update
policy and software package configured. However, **Windows workstations
had no Firefox update policy or maintained app** — meaning there was no
mechanism to:

1. **Detect** Windows hosts running vulnerable Firefox versions
2. **Remediate** by offering an updated Firefox via self-service

This PR closes that gap by:

1. **`it-and-security/lib/windows/policies/update-firefox.yml`** — New
policy that queries the Windows `programs` table to flag any host with
Firefox < 148.0.2 (uses `LIKE 'Mozilla Firefox%'` and `NOT LIKE '%ESR%'`
to match standard Firefox installations, matching the pattern used in
other Windows update policies)
2. **`it-and-security/fleets/workstations.yml`** — Adds the policy
reference under Windows policies, and adds `firefox/windows` to
`fleet_maintained_apps` for self-service browser installation on x86
Windows hosts

---

Built for
[mikermcneil](https://fleetdm.slack.com/archives/D0AFASLRHNU/p1773774729891479)
by [Kilo for Slack](https://kilo.ai/features/slack-integration)

Co-authored-by: Kilo Code <kilo-bot@kilo.ai>
2026-03-17 16:45:10 -05:00
Allen Houchins d2893a8fe3 Update CVSSv3 to CVSSv4 in security documentation (#41814) 2026-03-17 16:28:50 -05:00
Eric 38d89d6637 Website: Remove release section in GitHub webhook (#41898)
Changes:
- Commented out the section of the GitHub webhook that handles "release"
webhook events. The Zapier automation triggered by the webhook has been
turned off.
2026-03-17 16:19:27 -05:00
Tim Lee e28cc2f861 Add recovery lock password status (#41322) 2026-03-17 15:15:04 -06:00
Ashish Kuthiala 8f0f3449fd Add customer testimonials section to marketing assets (#41901)
Added a section for Fleet customer testimonials with quotes from various
companies, highlighting their experiences and feedback on using Fleet.
This section aims to showcase the effectiveness and satisfaction of
Fleet's device management solutions.
2026-03-17 16:13:55 -05:00
Noah Talerman 9c9961e9e5 GitOps: Link to Fleet's catalog (#41861) 2026-03-17 15:43:49 -05:00
Magnus Jensen 6e181ca5ac reset MDM enrollment if SCEP renewal but awaiting configuration (#41881)
<!-- Add the related story/sub-task/bug number, like Resolves #123, or
remove if NA -->
**Related issue:** Resolves unreleased bug found in QA

# 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
2026-03-17 15:31:08 -05:00
Victor Lyuboslavsky f01cf0e4e3 Docs: Run multiple independent Fleet dev servers in parallel (#41868) 2026-03-17 15:22:50 -05:00
github-actions[bot]andallenhouchins 379eeb8754 Update 1Password policy versions (#41869)
This PR automatically updates both 1Password macOS version policy and
Safari version policy for dogfood.

The changes were generated automatically by the
[dogfood-automated-policy-updates
workflow](https://github.com/fleetdm/fleet/actions/workflows/dogfood-automated-policy-updates.yml).

Co-authored-by: allenhouchins <32207388+allenhouchins@users.noreply.github.com>
2026-03-17 15:00:05 -05:00
Sam Pfluger 1227279b65 Update title to be correct (#41889) 2026-03-17 14:46:45 -05:00
Eric b4cd1d0425 Website: Update accepted intentSignal values in createHistoricalEvent helper (#41884)
Changes:
- updated the accepted `intentSignal` values in the
createHistoricalEvent helper
2026-03-17 14:32:11 -05:00
Noah Talerman 7d2374fcba Clarify default fleets (#41777) 2026-03-17 15:30:46 -04:00