Commit Graph
20428 Commits
Author SHA1 Message Date
Dante CatalfamoandVictor Lyuboslavsky b2391c80b7 Remove certificates from device when missing from managed config (#37198)
<!-- Add the related story/sub-task/bug number, like Resolves #123, or
remove if NA -->
**Related issue:** Resolves #36690

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

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

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

## Database migrations

- [ ] Checked schema for all modified table for columns that will
auto-update timestamps during migration.
- [ ] Confirmed that updating the timestamps is acceptable, and will not
cause unwanted side effects.
- [ ] Ensured the correct collation is explicitly set for character
columns (`COLLATE utf8mb4_unicode_ci`).

## New Fleet configuration settings

- [ ] Setting(s) is/are explicitly excluded from GitOps

If you didn't check the box above, follow this checklist for
GitOps-enabled settings:

- [ ] Verified that the setting is exported via `fleetctl
generate-gitops`
- [ ] 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)
- [ ] Verified that any relevant UI is disabled when GitOps mode is
enabled

## fleetd/orbit/Fleet Desktop

- [ ] 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))
- [ ] If the change applies to only one platform, confirmed that
`runtime.GOOS` is used as needed to isolate changes
- [ ] Verified that fleetd runs on macOS, Linux and Windows
- [ ] Verified auto-update works from the released version of component
to the new version (see [tools/tuf/test](../tools/tuf/test/README.md))


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

## Summary by CodeRabbit

* **New Features**
* Automatic cleanup of certificates that have been removed from your
system, now executed automatically before enrolling new certificates
* Enhanced certificate operation tracking with improved status reporting
for installation and removal operations, providing better visibility
into certificate lifecycle events

* **Bug Fixes**
* Fixed back navigation behavior on the Debug screen, improving
navigation flow for users

<sub>✏️ Tip: You can customize this high-level summary in your review
settings.</sub>

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

---------

Co-authored-by: Victor Lyuboslavsky <2685025+getvictor@users.noreply.github.com>
2025-12-22 16:28:50 -06:00
Nico fbe21a951e Add Vitals section to Host details (#37604)
<!-- Add the related story/sub-task/bug number, like Resolves #123, or
remove if NA -->
**Related issue:** Resolves #37603 

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

## Screenshots

Note: these were taken on a 32" screen

For reference, see
[Figma](https://www.figma.com/design/v7WjL5zQuFIZerWYaSwy8o/-27322-Surface-custom-host-vitals?node-id=5636-4950&t=vTLKciuyExCbMZp6-0)
design

### Host details page

#### Before

<img width="1447" height="1052" alt="Screenshot 2025-12-22 at 3 53
11 PM"
src="https://github.com/user-attachments/assets/9ea7f2e0-163b-427b-8224-65952896af7e"
/>

#### After

<img width="1441" height="1319" alt="Screenshot 2025-12-22 at 4 14
02 PM"
src="https://github.com/user-attachments/assets/365afd5d-309c-4020-a3a8-260d8cf0d7c9"
/>


### My device page

#### Before

<img width="1444" height="572" alt="Screenshot 2025-12-22 at 3 53 19 PM"
src="https://github.com/user-attachments/assets/aee900f0-02e7-4146-8eef-060dd80befd7"
/>

#### After

<img width="1450" height="866" alt="Screenshot 2025-12-22 at 4 14 20 PM"
src="https://github.com/user-attachments/assets/8a77a33c-f564-4bc5-912e-543bf5806dae"
/>
2025-12-22 18:15:06 -03:00
Magnus Jensen 8cf232513e Small updates to MDM overview (Contributing docs) (#37609)
As part of the on-call responsibilities, I looked over the MDM overview,
and did some small updates/changes.
2025-12-22 17:05:29 -04:00
Lucas Manuel Rodriguez cdebcd46da Remove gofumports which is not a valid option anymore (#37619)
<img width="1446" height="248" alt="Screenshot 2025-12-22 at 5 28 43 PM"
src="https://github.com/user-attachments/assets/ae807a64-247f-4cdd-9a12-8bc5e42f6053"
/>
2025-12-22 17:51:18 -03:00
Irena Reedy 1e212d658d Update fleet-4.78.0.md (#37615)
Video embedded
2025-12-22 14:37:21 -05:00
Marko Lisica 59f318c77a Clarify platform filter description in API docs (#36618)
Related to:

- #34072
2025-12-22 12:58:20 -06:00
Scott Gress 9fd35d5b57 Database / API for auto software updates (#37599)
<!-- Add the related story/sub-task/bug number, like Resolves #123, or
remove if NA -->
**Related issue:** Resolves #35454 

> Note - GitOps will be included in a separate story:
https://github.com/fleetdm/fleet/issues/35457

# 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
Added tests for new DB methods as well as API updates.
- [X] QA'd all new/changed functionality manually

## Database migrations

- [X] Ensured the correct collation is explicitly set for character
columns (`COLLATE utf8mb4_unicode_ci`).
2025-12-22 12:39:30 -06:00
Jonathan KatzandMarko Lisica 5750e4393a Docs change: GET setup_experience/software allows comma separated values (#37499)
**Related issue:** #35554 

Ability to add multiple `platform` values is added to "List setup
experience software" (`GET api/v1/fleet/setup_experience/software`) in
PR #37468. This change is similar to how `platform` can be set in the
"List software" endpoint (`GET /api/v1/fleet/software/titles`).

---------

Co-authored-by: Marko Lisica <83164494+marko-lisica@users.noreply.github.com>
2025-12-22 13:25:19 -05:00
Noah Talerman 3db5d6758c Fix casing in 'use scripts' message (#37606) 2025-12-22 12:20:16 -05:00
Luke Heath 14bb425a4e Fix order in bug and pr report (#37588) 2025-12-22 10:21:31 -06:00
Noah Talerman b7e9c97467 Update fleetdm.com/tables: Fix santa_status columns (#37477)
For the following bug:
- https://github.com/fleetdm/fleet/issues/37230
2025-12-22 09:33:40 -05:00
fleet-releaseandmostlikelee ba11d0b82b Update Fleet-maintained apps (#37596)
Automated ingestion of latest Fleet-maintained app data.

Co-authored-by: mostlikelee <16102903+mostlikelee@users.noreply.github.com>
2025-12-21 16:20:18 -06:00
Allen Houchins 437d3f7cb6 Add Sourcetree as a Windows FMA (#37594)
This pull request adds support for the Windows version of Sourcetree
Enterprise to the maintained apps catalog. The changes introduce
metadata, installation, and uninstallation details for this app,
ensuring it can be managed and deployed via Fleet.

**Addition of Sourcetree Enterprise (Windows):**

* Added a new input definition for Sourcetree Enterprise in
`winget/sourcetree.json`, specifying package identifiers and installer
details.
* Updated `apps.json` to include Sourcetree Enterprise for the Windows
platform, with appropriate metadata and description.
* Created a new output file `sourcetree/windows.json` with version info,
install/uninstall PowerShell scripts, installer URL, SHA256 hash, and
upgrade code for proper management.
2025-12-20 22:42:48 -06:00
fleet-releaseandmostlikelee 585923ba37 Update Fleet-maintained apps (#37593)
Automated ingestion of latest Fleet-maintained app data.

Co-authored-by: mostlikelee <16102903+mostlikelee@users.noreply.github.com>
2025-12-20 08:09:50 -06:00
fleet-releaseandallenhouchins bbea6fc74b Update Fleet-maintained apps (#37592)
Automated ingestion of latest Fleet-maintained app data.

Co-authored-by: allenhouchins <32207388+allenhouchins@users.noreply.github.com>
2025-12-19 23:38:26 -06:00
fleet-releaseandmostlikelee 4ca6280b15 Update Fleet-maintained apps (#37573)
Automated ingestion of latest Fleet-maintained app data.

Co-authored-by: mostlikelee <16102903+mostlikelee@users.noreply.github.com>
2025-12-19 22:06:58 -06:00
Jordan Montgomery 95178043cf Fix race condition in TestRenewEnrollmentProfilePrevented (#37576)
<!-- Add the related story/sub-task/bug number, like Resolves #123, or
remove if NA -->
**Related issue:** Resolves #35852

Tested by adding a small(100ms but even smaller should work) sleep in
the goroutine before calling renewReceiver.Run() which simulates the
active goroutine being preempted and the other running before it gets
scheduled again. When I did this it would hang and timeout every time
before the fix. AFter the fix I never saw a timeout over 500 runs with
the sleep added and without

# 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)
- [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] QA'd all new/changed functionality manually
2025-12-19 22:09:26 -05:00
Victor Lyuboslavsky 5000723bb5 Don't delete Android agent when transferring teams. (#37517)
<!-- Add the related story/sub-task/bug number, like Resolves #123, or
remove if NA -->
**Related issue:** Resolves #37440 

Note, from manual testing, when moving host to a new team, it does NOT
get the certs for the new team. We could fix this as part of this fix or
in a separate PR.

## Testing

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

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

## Summary by CodeRabbit

* **New Features**
  * Added Fleet Agent integration for Android MDM devices
* Fleet Agent policies are now automatically constructed and applied to
managed Android devices
* Fleet Agent configuration includes server URL, enrollment secrets, and
certificate templates

<sub>✏️ Tip: You can customize this high-level summary in your review
settings.</sub>

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-12-19 18:05:48 -06:00
Tim Lee e68cc1a09c Set android host cert statuses on gitops delete (#37502) 2025-12-19 16:54:19 -07:00
Tim Lee f97284cf13 Fix: filter out verified remove android certs in host details (#37539) 2025-12-19 16:35:58 -07:00
Lucas Manuel Rodriguez c1d13ed858 Fix WiX alerts (#37572) 2025-12-19 17:26:26 -06:00
Luke Heath 8648105fe3 Adding changes for Fleet v4.78.0 (#36813) (#37584) 2025-12-19 17:25:22 -06:00
Tim Lee 8774833a54 Handle android certificates on deletion events (#37481) 2025-12-19 16:18:24 -07:00
Rachael Shaw 45b162f940 Preview of v4.78.0 doc changes (#35929) 2025-12-19 17:07:58 -06:00
Noah Talerman df188add91 Release article: 4.78.0 (#37294) 2025-12-19 17:03:16 -06:00
Luke Heath 6490b8c1aa Add @lukeheath as code owner for /docs/solutions (#37583) 2025-12-19 16:57:01 -06:00
Tim Lee e5ea2e7445 Fix: Update android cert status for deleted template (#37537) 2025-12-19 15:48:43 -07:00
Isabell Reedy a0d9f2b461 Update DRI for coworking (#37548) 2025-12-19 15:50:43 -06:00
Lucas Manuel Rodriguez ef2f2e8daa Move security notifications to orchestration channel (#37549) 2025-12-19 14:50:52 -06:00
Noah Talerman 1b9cba021e Handbook release planning project (#37501)
Also, remove "Product roadmap" section. We link to the [near-term
roadmap](HAV3qaRJDWM7-YrwU/edit?gid=1189480063#gid=1189480063) in the
"Feature fest" section.
2025-12-19 15:25:45 -05:00
github-actions[bot]andRachelElysia 8375d6b9b2 Fleet UI: Update osquery version options (#37519)
Automated update of MIN_OSQUERY_VERSION_OPTIONS with any new osquery
release. (Note: This automatic update is the solution to issue #21431)

Co-authored-by: RachelElysia <RachelElysia@users.noreply.github.com>
2025-12-19 14:09:00 -06:00
Magnus Jensen 3d14b1c962 use combined endpoint for android (#37562)
fix a bug that the frontend wasn't changed to use the shared mdm
unenroll endpoint
2025-12-19 15:55:53 -04:00
Noah Talerman 7c16c3b9fc Rename bookmark from 'Sprint planning' to 'Release planning' (#37560)
Less confusing. We already have a meeting called "Pre-sprint planning"
2025-12-19 13:33:51 -06:00
jacobshandling 419c968d4d Align create/delete android cert activity names (#37555)
**Related issue:** Current activity names don't match
https://github.com/fleetdm/fleet/pull/35199/files#diff-455bb344f5cd8c35e2ee02d663d5bdfc9c1f98aaa4bcf77d5762b8824e49f6a9R1357,
while UI expects those names, so this fixes the mismatch


- [x] Added/updated automated tests
- [x] QA'd all new/changed functionality manually
2025-12-19 10:17:45 -08:00
Jahziel Villasana-Espinoza ef73d5aa26 do not error if android mdm isn't set up (#37550)
<!-- Add the related story/sub-task/bug number, like Resolves #123, or
remove if NA -->

# 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.
2025-12-19 12:57:11 -05:00
Eric 1bef786267 Update placeholder in automations guide. (#37554)
Changes:
- Updated the `<target_result_url>` placeholder used in the automations
guide to use square brackets. Text wrapped in angle brackets is parsed
as an HTML element by the website.
2025-12-19 11:13:22 -06:00
Gabriel Hernandez c061efcd81 optimisations and tests for mdm commands UI (#37531)
This adds some optimisations and tests for the mdm commands UI feature.
This includes:

1. optimisations to making the request for the activity card data. We
add a stale time so the request is always occuring
2. consolidate PastCommandFeed and UpcomingCommandFeed to a single
CommandFeed component
3. adding aria label to buttons to improve a11y when buttons dont have
text (e.g. icon buttons)
4. tests for CommandFeed and FeedListItem components
5. change max-height of textarea in command details modal so it stays
within the viewport
2025-12-19 17:03:40 +00:00
Juan Fernandez ab8361735b gitops inconsistent language (#37538)
**Related issue:** Resolves #34351

Made language used in gitops more consistent.
2025-12-19 12:58:27 -04:00
Lucas Manuel Rodriguez 8ce6ea07da Release osqueryd 5.21.0 (#37528) 2025-12-19 13:56:47 -03:00
Jorge Falcon b2e35bcf4c Bump alpine to 3.23.0 in fleet/tools/fleet-docker/Dockerfile (#37552)
- Updates alpine from
`alpine:3.22.2@sha256:4b7ce07002c69e8f3d704a9c5d6fd3053be500b7f1c69fc0d80990c2ad8dd412`
->
`alpine:3.23.0@sha256:51183f2cfa6320055da30872f211093f9ff1d3cf06f39a0bdb212314c5dc7375`
in `fleet/tools/fleet-docker/Dockerfile`
2025-12-19 11:55:10 -05:00
Allen Houchins b91ed33d43 Update self-service.mobileconfig (#37551)
- Updating self-service image
2025-12-19 10:51:34 -06:00
Magnus Jensen 8a3280dfe3 Update error message if user didn't download CSR before uploading APNs cert (#37543)
<!-- Add the related story/sub-task/bug number, like Resolves #123, or
remove if NA -->
**Related issue:** Resolves #35623 

# 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

<img width="1174" height="228" alt="image"
src="https://github.com/user-attachments/assets/5ec6ef89-a4da-4dad-90f0-c5e41e604c6d"
/>
2025-12-19 12:26:31 -04:00
Jahziel Villasana-Espinoza ce4cc92186 account for commands being dequeued in list query (#37505)
<!-- Add the related story/sub-task/bug number, like Resolves #123, or
remove if NA -->
**Related issue:** Resolves #36748

# 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] 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-12-19 11:24:49 -05:00
RachelElysia a59bf11230 Fleet UI: Fix link (#37544) 2025-12-19 11:19:47 -05:00
Allen Houchins a867b53fa7 Add iOS Self-service apps (#37545)
This pull request updates the self-service configuration for iOS devices
by enabling self-service installation for several key apps in both
company-owned and personal mobile device configurations. Additionally,
it makes a minor improvement to the display name in the iOS self-service
configuration profile.

Self-service app enablement:

* Enabled the `self_service` flag for Slack, Zoom, Google Docs, Google
Sheets, and Google Drive in both `company-owned-mobile-devices.yml` and
`personal-mobile-devices.yml`, allowing users to install these apps via
self-service.
[[1]](diffhunk://#diff-b86f7c2a3c8266d5f17dc1cbb37b248bee72ce749c7e0c7f7d16f69c7265b821R35-R47)
[[2]](diffhunk://#diff-ac1234902debdea911a540bc3423aa5ae74ae532d5cea9c9ed3128a07873b925R32-R40)

Configuration profile update:

* Updated the `PayloadDisplayName` in `self-service.mobileconfig` to use
"iOS Self-service" (capitalized "Self-service") for improved consistency
and presentation.
2025-12-19 10:13:32 -06:00
Eric 701fc431db Website: Update case study article template (#37438)
Changes:
- Updated the template page used for case study articles to match the
latest wireframes.
2025-12-19 10:02:15 -06:00
Mitch FranceseandAllen Houchins 31506bc471 Add Self-service webclip for BYO devices (#37510)
Co-authored-by: Allen Houchins <32207388+allenhouchins@users.noreply.github.com>
2025-12-19 10:02:01 -06:00
fleet-releaseandmostlikelee 1bdb62244d Update Fleet-maintained apps (#37530)
Automated ingestion of latest Fleet-maintained app data.

Co-authored-by: mostlikelee <16102903+mostlikelee@users.noreply.github.com>
2025-12-19 10:01:31 -06:00
Jonathan Katz 20230a688f Android Setup Experience Gitops (#37468)
<!-- Add the related story/sub-task/bug number, like Resolves #123, or
remove if NA -->
**Related issue:** Resolves #35554

- Setup experience is generated to and can be set in the GitOps yaml
- No changes to policy creation, setup experience apps are still added
as `PREINSTALLED`
- API change: `GET /fleet/setup_experience/software` modified to be able
to take a comma separated list of platforms, like `GET
/fleet/setup_experience/software` does. Documentation update will be in
another PR.
- Modified `SetTeamVPPApps` to return if setup experience changed so the
function that calls it can create a "setup experience changed" activity.

# Checklist for submitter

## 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
- Used generate-gitops to create a yaml file, edited setup experience
apps with it to test that it applies and creates activities correctly.
- Re-enrolled an Android phone after editing setup experience with
GitOps, all setup experience apps were installed.
2025-12-19 10:45:27 -05:00
Steven Palmesano f955f233ec Fix dashes so the formatting will show correctly on GitHub (#37492)
Sorry for opening another PR on this! Not sure how, but some weird
dashes snuck in and it threw off the formatting.

Screenshots of the rich text before and after below.

<img width="1049" height="276" alt="Screenshot 2025-12-18 at 12 19 15"
src="https://github.com/user-attachments/assets/1fefafda-0b94-4f20-a39a-ace4fa874457"
/>
<img width="1077" height="322" alt="Screenshot 2025-12-18 at 12 20 38"
src="https://github.com/user-attachments/assets/ef7274d2-501a-4394-8c34-78a9a30c43c2"
/>
2025-12-19 09:43:55 -06:00