mirror of
https://github.com/fleetdm/fleet
synced 2026-05-22 16:39:01 +00:00
For #32040. --- Backend changes to unblock the development of the orbit and frontend changes. New GET and PUT APIs for setting/getting software for Linux Setup Experience: ``` curl -k -X GET -H "Authorization: Bearer $TEST_TOKEN" https://localhost:8080/api/latest/fleet/setup_experience/linux/software?team_id=8&per_page=3000 curl -k -X PUT -H "Authorization: Bearer $TEST_TOKEN" https://localhost:8080/api/latest/fleet/setup_experience/linux/software -d '{"team_id":8,"software_title_ids":[3000, 3001, 3007]}' ``` New setup_experience/init API called by orbit to trigger the Linux setup experience on the device: ``` curl -v -k -X POST -H "Content-Type: application/json" "https://localhost:8080/api/fleet/orbit/setup_experience/init" -d '{"orbit_node_key": "ynYEtFsvv9xZ7rX619UE8of1I28H+GCj"}' ``` Get status API to call on "My device": ``` curl -v -k -X POST "https://localhost:8080/api/latest/fleet/device/7d940b6e-130a-493b-b58a-2b6e9f9f8bfc/setup_experience/status" ``` --- - [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] 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 ## New Fleet configuration settings - [X] Verified that the setting is exported via `fleetctl generate-gitops` - [X] 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) - [X] 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) <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - New Features - Added Linux support for Setup Experience alongside macOS. - Introduced platform-specific admin APIs to configure and retrieve Setup Experience software (macOS/Linux). - Added device API to report Setup Experience status and an Orbit API to initialize Setup Experience on non-macOS devices. - Setup Experience now gates policy queries on Linux until setup is complete. - New activity log entry when Setup Experience software is edited (includes platform and team). - Documentation - Updated audit logs reference to include the new “edited setup experience software” event. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|---|---|---|
| .. | ||
| adr | ||
| architecture | ||
| assets | ||
| getting-started | ||
| guides | ||
| product-groups | ||
| reference | ||
| research | ||
| responsibilities | ||
| rituals | ||
| workflows | ||
| README.md | ||
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:
- Getting Started - Setup, building, and testing Fleet
- Guides - How-to guides for common tasks
- Architecture - High-level architecture documentation
- Product Groups - Documentation for specific product groups
- Workflows - Development workflows
- Reference - API reference, configuration, etc.
- ADRs - Architectural Decision Records
- Research - Research documents for product groups
- Responsibilities - Responsibility documents for product groups
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.