fleet/docs/Contributing
Magnus Jensen a187842260
always send webhook while device is unmanaged for MDM migration (#39416)
<!-- Add the related story/sub-task/bug number, like Resolves #123, or
remove if NA -->
**Related issue:** Resolves #38322 

This PR utilizes the ping/status ticker that sees if the device is
Unmanaged (aka. not enrolled from a Fleet server perspective), if the
Migrate to Fleet flow before had set the `mdm_migration.txt` file, but
somehow not successfully unenrolled the device, we now keep sending it
if you trigger the modal again.

We wait 90seconds after start, so at most the user can go through the
flow every 90s, but the server has a hard limit on at most one webhook
every 3m, but still it means the user can wait a bit and retry and still
see the webhook gets sent now.

_PS: Updated the old migration test to go from 1,5m to ~2s execution
time with parallel and configurable waitForUnenrollment time (to allow
test to set lower values)

# 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

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

---------

Co-authored-by: Jordan Montgomery <elijah.jordan.montgomery@gmail.com>
2026-02-09 14:08:54 -05:00
..
adr ADR-0008: Migrate from go-kit/log to slog (#38751) 2026-01-26 15:50:31 -06:00
architecture oncall doc updates (#39517) 2026-02-09 10:43:27 -05:00
assets Document research for Android agent app (#35094) 2025-11-24 12:10:40 +01:00
getting-started Add Testing NATS logging local development docs (#37759) 2026-01-06 09:11:58 -03:00
guides Update MDM instructions in design QA considerations (#38371) 2026-01-15 09:54:02 -06:00
product-groups always send webhook while device is unmanaged for MDM migration (#39416) 2026-02-09 14:08:54 -05:00
reference Add activity for modified enroll secrets (#39292) 2026-02-07 09:21:10 -04:00
research Document research for Android agent app (#35094) 2025-11-24 12:10:40 +01:00
responsibilities Organize contributor docs and establish ADR process and template (#29101) 2025-05-17 15:03:52 -05:00
rituals Add PR review to daily standup, remove incoming bug triage (#37090) 2025-12-11 15:31:51 -06:00
workflows Releasing Fleet steps: Wrong Helm chart (#37051) 2025-12-10 14:53:10 -06:00
README.md Update contrib docs headers to sentence case (#29276) 2025-05-20 11:26:35 -05:00

Fleet Contributor Documentation

Welcome to the Fleet contributor documentation! This documentation is designed to help you contribute to the Fleet project.

Documentation structure

The documentation is organized into the following sections:

Product groups

Fleet is organized into three main product groups:

  • MDM - Mobile Device Management
  • Orchestration - Device orchestration using osquery
  • Software - Software inventory, vulnerability management, and software installation

Contributing

If you're new to Fleet, we recommend starting with the Getting Started section to set up your development environment.

Once you're set up, you can explore the Guides section to learn how to contribute to specific areas of the project.

Architectural Decision Records (ADRs)

We use Architectural Decision Records to document significant architectural decisions. If you're making a significant architectural change, please create an ADR to document your decision.