Commit Graph
16667 Commits
Author SHA1 Message Date
github-actions[bot]andiansltx c47825be60 Update Fleet-maintained apps (#28944)
Automated ingestion of latest Fleet-maintained app data.

Co-authored-by: iansltx <472804+iansltx@users.noreply.github.com>
2025-05-07 18:38:16 -05:00
Konstantin Sykulev a3ae1a6f91 Support for fleet maintained apps in gitops (#28751)
https://github.com/fleetdm/fleet/issues/24469

- [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/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
- [x] Added/updated automated tests
- [x] A detailed QA plan exists on the associated ticket (if it isn't
there, work with the product group's QA engineer to add it)
- [x] Manual QA for all new/changed functionality
2025-05-07 18:16:08 -05:00
github-actions[bot]andnoahtalerman 2d9893a3db Update Fleet-maintained apps (#28939)
Automated ingestion of latest Fleet-maintained app data.

Co-authored-by: noahtalerman <47070608+noahtalerman@users.noreply.github.com>
2025-05-07 17:46:37 -05:00
Eric d549b2e7f3 Website: add redirect for Fleet maintained apps guide. (#28942)
Closes: https://github.com/fleetdm/confidential/issues/10553

Changes:
- Added a redirect for the Fleet maintained apps guide.
2025-05-07 17:05:20 -05:00
Victor Lyuboslavsky 1ffcc21450 Reducing "waiting for mysql" timeout to 1 minute to speed up dev feedback. (#28935)
I'm seeing it takes ~10 seconds to MySQL to come up, so 1 minute should
be plenty. 5 minutes was too long to wait.
2025-05-07 16:17:22 -05:00
Noah Talerman 159d6d7025 Contribute to Fleet-maintained apps (#28812)
Clarify that #g-software is responsible for review/testing.
@allenhouchins thought he had to test which sounds like it was holding
him back from adding more apps.
2025-05-07 17:16:45 -04:00
Victor Lyuboslavsky 2db0959c15 Moved fleetctl to fleetctl package. (#28932)
For #28932

No functional changes.

Left the parent directory (also named fleetctl) with the main package as
is not to break/change any other flows.

This PR is the first step before refactoring integration tests to speed
up (parallelize) fleetctl tests.
2025-05-07 15:53:35 -05:00
Martin Angers 48de857dca BRP: add batch-resend profile to hosts endpoint based on status (#28871) 2025-05-07 16:48:18 -04:00
e92feb17b7 Update single-sign-on-sso.md (#28193)
I've updated this section to include information about SCIM as per this
[website request](https://github.com/fleetdm/fleet/issues/27971) from a
Fleet contributor.

Please confirm that I have understood correctly and that this is
accurate.

---------

Co-authored-by: Noah Talerman <47070608+noahtalerman@users.noreply.github.com>
Co-authored-by: Rachael Shaw <r@rachael.wtf>
2025-05-07 15:47:12 -05:00
Mike Thomas a91042ae02 Update queries.yml (#28897)
uppercase 'S' was breaking the query.
2025-05-07 14:48:08 -05:00
RachelElysia f64753f72b Fleet UI: Fix unreleased VPP icon bug in self-service (#28926) 2025-05-07 14:51:07 -04:00
Jordan Montgomery 0be4e4db39 Add learn more links for Custom SCEP profile errors (#28905)
For #28870 

Adds the proper "learn more" links to these errors as shown in the
Custom SCEP renewal Figma
https://www.figma.com/design/R4HhMXjwTjRelmq3V6n8aS/-27984-Renew-certificates-from-custom-SCEP-certificate-authority-on-macOS?node-id=7304-92:
![Screenshot 2025-05-07 at 9 50
59 AM](https://github.com/user-attachments/assets/f11fb064-0fab-42ad-b8b0-c28705eda921)
![Screenshot 2025-05-07 at 9 51
16 AM](https://github.com/user-attachments/assets/c8822e03-71f7-4fb1-b323-02422f8497b2)


# Checklist for submitter

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

<!-- Note that API documentation changes are now addressed by the
product design team. -->

- [x] A detailed QA plan exists on the associated ticket (if it isn't
there, work with the product group's QA engineer to add it)
- [x] Manual QA for all new/changed functionality
- [x] For unreleased bug fixes in a release candidate, confirmed that
the fix is not expected to adversely impact load test results or alerted
the release DRI if additional load testing is needed.
2025-05-07 12:20:58 -04:00
Jorge Falcon 93091ea718 Enabling AWS Backups for dogfood instances (#28915)
- Will create AWS Backup
  - Source Vault and KMS key
  - Destination Vault and KMS key
  - Backup Plan
  - Backup Selection
  - Required permissions
- Set permissions required for AWS backup on GHA role (pre-added
manually)
- Set `Tag:backup=true` on Dogfood Aurora clusters via `rds_config`
2025-05-07 12:19:24 -04:00
RachelElysia 37511be3a5 Fleet UI: Dashboard vuln bugginess (#28848) 2025-05-07 11:39:32 -04:00
RachelElysia 55f308663a Fleet desktop: Self-service stale time causing previous searches not to recall API (#28910) 2025-05-07 11:39:10 -04:00
Jahziel Villasana-Espinoza 5a8da97c5d feat: software categories in gitops (#28863)
> For #28140

# Checklist for submitter

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

<!-- Note that API documentation changes are now addressed by the
product design team. -->

- [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/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] Added/updated automated tests
- [x] A detailed QA plan exists on the associated ticket (if it isn't
there, work with the product group's QA engineer to add it)
- [x] Manual QA for all new/changed functionality
2025-05-07 11:19:33 -04:00
Victor Lyuboslavsky 2d5ac35578 Improving "Wait for mysql" in Go tests. (#28901)
For #28902

Modified the GitHub Actions workflow to prevent it from hanging at the
"waiting for mysql..." step. The updated workflow now:

- Times out after 5 minutes of unsuccessful MySQL connection attempts
- Logs all connection attempts with timestamps and error messages when a
timeout occurs
- Dumps MySQL container logs when a timeout occurs, providing valuable
diagnostic information
- Automatically stops and restarts all Docker containers using the same
command as the original "Start Infra Dependencies" step
- Retries this process up to 5 times before failing the job
2025-05-07 10:17:53 -05:00
Lucas Manuel Rodriguez aeddd03733 Amend VEX to support both docker scout and trivy (#28899)
For #28837.
2025-05-07 11:57:00 -03:00
Noah Talerman 51fe1d20b7 Fleet-maintained apps guide (#28854)
Remove extra comma
2025-05-07 09:09:31 -04:00
Luke HeathandSam Pfluger db7a0fa43a Open QA Engineer position (#28862)
@Sampfluger88 Position already approved by Mike.

Co-authored-by: Sam Pfluger <108141731+Sampfluger88@users.noreply.github.com>
2025-05-07 00:00:59 -05:00
Sam Pfluger c66989eb3d Remove Apprentice position (#28895) 2025-05-06 22:48:51 -05:00
Ian Littman 0d0233de6c Split .tar.gz extraction into installer and TUF implementations to remove permissions checks on installer implementation (#28888)
For #26692 (fixes permission issue when extracting dirs).

Reverts changes to `update.go` to remove TUF test surface.

# Checklist for submitter

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

<!-- Note that API documentation changes are now addressed by the
product design team. -->

- [x] Input data is properly validated, `SELECT *` is avoided, SQL
injection is prevented (using placeholders for values in statements)
- [x] A detailed QA plan exists on the associated ticket (if it isn't
there, work with the product group's QA engineer to add it)
- [x] Manual QA for all new/changed functionality
- For Orbit and Fleet Desktop changes:
- [ ] Make sure fleetd is compatible with the latest released version of
Fleet (see [Must
rule](https://github.com/fleetdm/fleet/blob/main/docs/Contributing/fleetd-development-and-release-strategy.md)).
- [ ] Orbit runs on macOS, Linux and Windows. Check if the orbit
feature/bugfix should only apply to one platform (`runtime.GOOS`).
- [ ] Manual QA must be performed in the three main OSs, macOS, Windows
and Linux.
- [ ] Auto-update manual QA, from released version of component to new
version (see [tools/tuf/test](../tools/tuf/test/README.md)).
2025-05-06 21:10:14 -05:00
github-actions[bot]andiansltx ed165ba6b5 Update Fleet-maintained apps (#28890)
Automated ingestion of latest Fleet-maintained app data.

Co-authored-by: iansltx <472804+iansltx@users.noreply.github.com>
2025-05-06 17:12:01 -05:00
github-actions[bot]andjahzielv 330ddade0e Update Fleet-maintained apps (#28887)
Automated ingestion of latest Fleet-maintained app data.

Co-authored-by: jahzielv <19838370+jahzielv@users.noreply.github.com>
2025-05-06 17:09:07 -05:00
Noah Talerman 7262c6ed0a GitOps reference (#28877)
- Learned during NYC GitOps training that it's more intuitive to
explicitly set `macos_updates.deadline` to a string
- I think let's pick one of single quotes or double quotes and be
consistent: let's go with double quotes
2025-05-06 16:44:53 -05:00
jacobshandling 55bacd830c Add link to mocks README (#28382) 2025-05-06 15:58:21 -05:00
Luke Heath c247a2b784 Prepare Fleet v4.67.3 (#28883) 2025-05-06 15:29:34 -05:00
Scott Gress ee7e085c15 update docs about disk_info table (#28795)
for #26674 

# Checklist for submitter

- [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/Committing-Changes.md#changes-files)
for more information.

## Details

This PR adds text to the existing `disk_info` notes in the UI,
clarifying that in ChromeOS, the table will only return data about
removable storage media. After researching the issue and trying various
alternatives, my conclusion is that ChromeOS is purposely designed to
make it very difficult to obtain hardware information (including
internal disk space and usage) via extensions. In order to actual do
this reporting, we'd need to integrate the [Chrome Admin
API](https://developers.google.com/workspace/admin/directory/reference/rest/v1/chromeosdevices#ChromeOsDevice)
into Fleet, which requires more design and planning.
2025-05-06 15:28:07 -05:00
d716265641 Add "generate-gitops" command (#28555)
For #27476

# Checklist for submitter

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

# Details

This PR adds a new command `generate-gitops` to the `fleetctl` tool. The
purpose of this command is to output GitOps-ready files that can then be
used with `fleetctl-gitops`.

The general usage of the command is:

```
fleectl generate-gitops --dir /path/to/dir/to/add/files/to
```

By default, the outputted files will not contain sensitive data, but
will instead add comments where the data needs to be replaced by a user.
In cases where sensitive data is redacted, the tool outputs warnings to
the user indicating which keys need to be updated.

The tool uses existing APIs to gather data for use in generating
configuration files. In some cases new API client methods needed to be
added to support the tool:

* ListConfigurationProfiles
* GetProfileContents
* GetScriptContents
* GetSoftwareTitleByID

Additionally, the response for the /api/latest/fleet/software/batch
endpoint was updated slightly to return `HashSHA256` for the software
installers. This allows policies that automatically install software to
refer to that software by hash.

Other options that we may or may not choose to document at this time:

* `--insecure`: outputs sensitive data in plaintext instead of leaving
comments
* `--print`: prints the output to stdout instead of writing files
* `--key`: outputs the value at a keypath to stdout, e.g. `--key
agent_options.config`
* `--team`: only generates config for the specified team name
* `--force`: overwrites files in the given directory (defaults to false,
which errors if the dir is not empty)

# Technical notes

The command is implemented using a `GenerateGitopsCommand` type which
holds some state (like a list of software and scripts encountered) as
well as a Fleet client instance (which may be a mock instance for tests)
and the CLI context (containing things like flags and output writers).
The actual "action" of the CLI command calls the `Run()` method of the
`GenerateGitopsCommand` var, which delegates most of the work to other
methods like `generateOrgSettings()`, `generateControls()`, etc.

Wherever possible, the subroutines use reflection to translate Go struct
fields into JSON property names. This guarantees that the correct keys
are written to config files, and protects against the unlikely event of
keys changing.

When sensitive data is encountered, the subroutines call `AddComment()`
to get a new token to add to the config files. These tokens are replaced
with comments like `# TODO - Add your enrollment secrets here` in the
final output.

# Known issues / TODOs:

* The `macos_setup` configuration is not output by this tool yet. More
planning is required for this. In the meantime, if the tool detects that
`macos_setup` is configured on the server, it outputs a key with an
invalid value and prints a warning to the user that they'll need to
configure it themselves.
* `yara_rules` are not output yet. The tool adds a warning that if you
have Yara rules (which you can only upload via GitOps right now) that
you'll have to migrate them manually. Supporting this will require a new
API that we'll have to discuss the authz for, so punting on it for now.
* Fleet maintained apps are not supported by GitOps yet (coming in
https://github.com/fleetdm/fleet/issues/24469). In the meantime, this
tool will output a `fleet_maintained_apps` key and trigger a warning,
and GitOps will fail if that key is present.

---------

Co-authored-by: Lucas Manuel Rodriguez <lucas@fleetdm.com>
Co-authored-by: Noah Talerman <47070608+noahtalerman@users.noreply.github.com>
2025-05-06 15:25:44 -05:00
jacobshandlingandJacob Shandling 07869b8ad4 Test RunScriptBatchPaginatedList (#28839)
## For #28159

### Follow-up to #28563 

- Add tests
- Misc cleanup

- [x] Added/updated automated tests

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2025-05-06 11:42:04 -07:00
Konstantin SykulevandIan Littman b2c1ddaafa Rewrite label scoping logic for listing host software, fix other ListHostSoftware bugs (#28592)
https://github.com/fleetdm/fleet/issues/28328

- [x] Input data is properly validated, `SELECT *` is avoided, SQL
injection is prevented (using placeholders for values in statements)
- [x] Added/updated automated tests
- [x] A detailed QA plan exists on the associated ticket (if it isn't
there, work with the product group's QA engineer to add it)
- [x] Manual QA for all new/changed functionality
- [x] For unreleased bug fixes in a release candidate, confirmed that
the fix is not expected to adversely impact load test results or alerted
the release DRI if additional load testing is needed.

---------

Co-authored-by: Ian Littman <iansltx@gmail.com>
2025-05-06 12:32:35 -05:00
jacobshandlingandJacob Shandling 260b9ee6c3 UI: Fix condition for modal rendering (#28866)
## For #28861 

- Correctly interpret `0` as a valid team id for rendering the modal

![Screenshot 2025-05-06 at 10 04
46 AM](https://github.com/user-attachments/assets/50c890d5-8cd1-4452-b14f-864907ae53f3)

- [x] Manual QA for all new/changed functionality

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2025-05-06 10:24:15 -07:00
Eric 7ad72ad47c Website: update enrichment helper to use new API routes (#28867)
Changes:
- Updated the HTTP requests in the get-enriched helper to use
Coresignals' new API routes and authorization method.
2025-05-06 12:19:25 -05:00
Lucas Manuel Rodriguez bfe3b186d3 Fix detected CVEs and docker scout exit code to fail the Github Action (#28836)
For #28837.

Fixing this all of this because we got multiple reports from the
community and customers and these were also detected by Amazon
Inspector.

- Fixes CVE-2025-22871 by upgrading Go from 1.24.1 to 1.24.2.
- `docker scout` now fails the daily scheduled action if there are
CRITICAL,HIGH CVEs (we missed setting `exit-code: true`).
- Report CVE-2025-46569 as not affected by it because of our use of
OPA's go package.
- Report CVE-2024-8260 as not affected by it because Fleet doesn't run
on Windows.
- The `security/status.md` shows a lot of changes because we are now
sorting CVEs so that newest come first.

---

- [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/Committing-Changes.md#changes-files)
for more information.
- [ ] Manual QA for all new/changed functionality
- For Orbit and Fleet Desktop changes:
- [ ] Make sure fleetd is compatible with the latest released version of
Fleet (see [Must
rule](https://github.com/fleetdm/fleet/blob/main/docs/Contributing/fleetd-development-and-release-strategy.md)).
- [ ] Orbit runs on macOS, Linux and Windows. Check if the orbit
feature/bugfix should only apply to one platform (`runtime.GOOS`).
- [ ] Manual QA must be performed in the three main OSs, macOS, Windows
and Linux.
- [ ] Auto-update manual QA, from released version of component to new
version (see [tools/tuf/test](../tools/tuf/test/README.md)).
- [ ] For unreleased bug fixes in a release candidate, confirmed that
the fix is not expected to adversely impact load test results or alerted
the release DRI if additional load testing is needed.
2025-05-06 13:35:27 -03:00
Victor Lyuboslavsky 8ad9da71d6 Only allow distribution packages for bootstrap package (#28787)
For #27700 
When uploading bootstrap package for macOS setup experience, validate
that it is a Distribution package since that is required by Apple's
InstallEnterpriseApplication MDM command.


# Checklist for submitter

- [x] Changes file added for user-visible changes in `changes/`,
`orbit/changes/` or `ee/fleetd-chrome/changes`.
- [x] Added/updated automated tests
- [x] A detailed QA plan exists on the associated ticket (if it isn't
there, work with the product group's QA engineer to add it)
- [x] Manual QA for all new/changed functionality
2025-05-06 11:02:13 -05:00
github-actions[bot]andjahzielv 06399a2685 Update Fleet-maintained apps (#28850)
Automated ingestion of latest Fleet-maintained app data.

Co-authored-by: jahzielv <19838370+jahzielv@users.noreply.github.com>
2025-05-06 10:01:18 -05:00
Luke Heath 9dd753007f Update software engineer role to be more general purpose (#28852) 2025-05-06 09:55:44 -05:00
Martin Angers 4c9b955343 Bugfix: resend only affected profile with vars on a team (#28844) 2025-05-06 10:02:23 -04:00
RachelElysia 5e05fd4dac FE: Error messages in Storybook (#28640) 2025-05-06 09:20:03 -04:00
Sam Pfluger 57af99785b Make instructions for hiring a consultant more pronounced (#28841) 2025-05-06 00:32:14 -05:00
github-actions[bot]andjahzielv 37f6fffb62 Update Fleet-maintained apps (#28826)
Automated ingestion of latest Fleet-maintained app data.

Co-authored-by: jahzielv <19838370+jahzielv@users.noreply.github.com>
2025-05-05 17:04:34 -05:00
Robert Fairburn f8a638fe9f Remove old elastic agent (#28806) 2025-05-05 16:41:10 -05:00
Robert Fairburn 33f1029780 Fix dogfood settings (#28829) 2025-05-05 16:34:39 -05:00
Tim Lee 14967172a7 Downgrade sotware paths error (#28736) 2025-05-05 14:47:59 -06:00
Noah Talerman 97f84e6a1a Update CODEOWNERS (#28809)
@noahtalerman => @rachaelshaw

Rachael is back!
2025-05-05 13:06:55 -05:00
Noah Talerman 898648ee82 Update story template (#28793)
- Add Engineer to contact
2025-05-05 13:53:54 -04:00
RachelElysia cd7da066ac Fleet UI: More pixel grace for zoomed out screensize (#28778) 2025-05-05 13:42:26 -04:00
Allen Houchins abe4bce12a Update santa-test-devices.yml (#28804)
- Added another test device for `santa`
2025-05-05 11:27:27 -05:00
Allen Houchins de38811103 Update password.xml (#28802)
- Updated Windows password configuration profile to resolve an error
2025-05-05 11:16:12 -05:00
Martin Angers 672ea70876 IdP vars: add integration test, address last PR comments (#28794) 2025-05-05 11:46:10 -04:00