Commit graph

27 commits

Author SHA1 Message Date
Ian Littman
2250d30a11
Bump dependencies to fix dep vulns in fleetd-chrome (#38465)
Lock file wasn't up to date. Ran `npm audit fix` and that dropped
packages that had already been removed from package.json (and updated
deps).
2026-01-21 16:10:57 -06:00
Benjamin Edwards
fa1c14dd3d
update fleetd-chrome to set expected HTTP headers (#31768)
# 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

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

## 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))
2025-08-15 13:14:08 -05:00
Scott Gress
36b45b857f
Fix privacy_preferences table for ChromeOS (#26620)
For #25479 

# 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] Manual QA for all new/changed functionality

## Details

This PR fixes the `privacy_preferences` table results generator for the
Chrome Extension. The root cause was that we were attempting to return
boolean values directly to sqlite, which doesn't have a native boolean
type. The fix is to coerce booleans to "1" or "0" as we do for other
tables in the extension.

The _proximate_ cause of the issue was that the warnings generated at
the db level (in this case about not being able to handle the `null`
values that sqlite was coercing booleans to) are not being handled
correctly. I'll tackle this in a separate PR as it's a little more
complicated to debug and fix.

## Testing

On a Chromebook, was able to run a live `select * from
privacy_preferences` query with results:
<img width="1706" alt="image"
src="https://github.com/user-attachments/assets/7dcc4410-70fd-4381-842d-fd06d43b94ae"
/>
<img width="1708" alt="image"
src="https://github.com/user-attachments/assets/db783e7b-3351-424c-82e3-b7e80c1d999d"
/>

Added automated test that fails on main and passes on this branch.
2025-02-28 09:52:00 -06:00
Victor Lyuboslavsky
27127ff396
Improved console log output messages when Fleet server is down. (#18942)
#18940

# Checklist for submitter

<!-- 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://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- [ ] Added/updated tests
- [x] Manual QA for all new/changed functionality
2024-05-13 16:38:36 -05:00
Victor Lyuboslavsky
ab3f7ec08f
Fixed bug where fleetd-chrome sent multiple read requests to Fleet server at the same time. (#18777)
#18775 
Fixed bug where fleetd-chrome sent multiple read requests to Fleet
server at the same time.

# Checklist for submitter

<!-- 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://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- [x] Manual QA for all new/changed functionality
2024-05-10 15:52:04 -05:00
Jacob Shandling
d98d5e9ee4
fleetd-chrome: Remove spot conversions to string; all results are now converted in o… (#18223)
Follow-up cleanup for #18210

Merging during freeze with approval from @sharon-fdm and @lukeheath as this code only affects `fleetd-chrome`, which is released on its own schedule.

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2024-04-23 10:23:41 -07:00
Victor Lyuboslavsky
0aca98fdba
Reinitialize DB and recover after a rare RuntimeError coming from sqlite web assembly code. (#18339)
Reinitialize DB and recover after a rare RuntimeError coming from sqlite
web assembly code.
#18337 

# 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://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- [ ] Added/updated tests
- [x] Manual QA for all new/changed functionality
2024-04-19 06:56:56 -05:00
Jacob Shandling
02563ffef9
Convert all values to string where possible, even if not derived from a table (#18210)
## Addresses #17946
results from querying chrome extension on macOS Chrome browser:
![Screenshot 2024-04-10 at 4 39
13 PM](https://github.com/fleetdm/fleet/assets/61553566/d67901f3-6e20-4190-8dbb-26e93361555b)

- [x] Changes file added for user-visible changes in `changes/`
- [x] Updated tests
- [x] Manual QA for all new/changed functionality
- [ ] TODO - Manual QA on actual Chromebook

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2024-04-10 18:38:41 -07:00
Sharon Katz
dd58fc4638
14105-apply-error-handling (#15309)
Co-authored-by: RachelElysia <71795832+RachelElysia@users.noreply.github.com>
2024-02-23 10:13:02 -05:00
Victor Lyuboslavsky
c9e8d89e52
In fleetd-chrome, fixed RuntimeError seen by some hosts. (#16839)
https://github.com/fleetdm/fleet/issues/16394
As suggested:
https://github.com/rhashimoto/wa-sqlite/issues/156#issuecomment-1942477704

# 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/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- [x] Manual QA for all new/changed functionality
2024-02-21 13:10:20 -06:00
Victor Lyuboslavsky
f49f37e755
Updating wa-sqlite to latest version. (#16484)
This is a speculative fix for #16394 RuntimeError, which was coming from
wa-sqlite web assembly code.

# 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/` or
`orbit/changes/`.
- [x] Manual QA for all new/changed functionality
2024-02-01 15:21:46 -06:00
Victor Lyuboslavsky
c8ac7777e3
Fixed unreleased fleetd-chrome bug with sticky errors showing up after querying privacy_preferences table. (#16333)
Fixed unreleased fleetd-chrome bug with sticky errors showing up after
querying privacy_preferences table.
#16292
# 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/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- [x] Added/updated tests
- [x] Manual QA for all new/changed functionality
2024-01-25 12:32:10 -06:00
RachelElysia
11b5488b50
ChromeOS tables: Surface ChromeOS errors in Fleet UI for privacy_preferences columns (#16196) 2024-01-22 09:43:48 -05:00
Zach Wasserman
8bea7137af
fleetd-chrome release workflows (#16020)
Add GitHub Actions for releasing fleetd-chrome beta and production. See
the included README updates for details.

This was tested with an `on: pull-request` trigger for the beta workflow
which is now removed for merging into the repo.
2024-01-16 11:56:43 -08:00
Victor Lyuboslavsky
14d5c9094b
fleetd-chrome unit tests (#15918) 2024-01-04 21:41:24 -06:00
Victor Lyuboslavsky
7d87c6a36c
Fixing issues with chromeOS extension. (#15750)
#14981 
- Adding better error messages to fleetd-chrome.
- Fixing `length` error message.

# Checklist for submitter

- [x] Manual QA for all new/changed functionality
2024-01-03 17:12:48 -06:00
Victor Lyuboslavsky
518dc54029
Removing errors due to chrome.enterprise access in dev mode. (#15460)
This fixes fleetd-chrome extension -- it now works when loaded in
development mode in Chrome.

The problem was that fleetd-chrome extension is setting status=1 when
query has warnings. Fleet server drops any detail query results with
status=1. So, the fleetd-chrome host was never getting fully initialized
on the server.

- [X] Manual QA for all new/changed functionality
2023-12-06 10:36:46 -06:00
RachelElysia
9c5d7faa58
ChromeOS tables: Errors surfaced in Fleet UI (#12376) 2023-09-19 10:06:29 -04:00
Jacob Shandling
1e99abed19
Return all ChromeOS results as strings; Refactor system_state table to use callback-based API calls (#12669) 2023-08-25 09:20:17 -07:00
RachelElysia
9d105a4d12
ChromeOS Tables: Integration test for 3 tables (#12844) 2023-08-02 11:31:22 -04:00
Sharon Katz
519982990c
Add disk_info table to chromeos (#12344) 2023-06-26 15:40:37 -04:00
RachelElysia
044935b02f
ChromeOS support: ChromeOS tables (add chromeos to existing table: screenlock, new table: system_state) (#12358) 2023-06-26 11:18:12 -07:00
Jacob Shandling
2855bc8f7f
ChromeOS privacy_preferences table (#12441)
## Addresses #11037 

### Implement the `privacy_preferences` table for the Fleetd Chrome
extension. Columns correspond to the available properties of
[`chrome.privacy`](https://developer.chrome.com/docs/extensions/reference/privacy/).

Chrome on mac:
<img width="816" alt="Screenshot 2023-06-23 at 11 55 21 AM"
src="https://github.com/fleetdm/fleet/assets/61553566/a4700749-6325-442e-acf2-c14b1c9adf8f">

Chromebook with enterprise access (actual use case):
![Image from
iOS](https://github.com/fleetdm/fleet/assets/61553566/93f2243d-357a-4d85-bd20-0aebd178388c)

* Chromebook w/o enterprise access: as you can see, sometimes certain
APIs are not available - this error occurs because the expected API
object that would have a `get` method is actually `undefined` TODO – How
to handle this case given that we want to let errors bubble up to the
level at which Fleet can catch them? Maybe it would be nice to catch
such errors and send them up to the Fleet layer, and still allow the
loop to continue to populate the columns whose APIs _are_ available.
_Decision: catch API errors here to preserve functionality of the
remaining columns_

![IMG_9407](https://github.com/fleetdm/fleet/assets/61553566/7fb26eb4-44e8-43f8-90c0-8b3d718c5ace)

- [x] Changes file
- [x] Manual QA

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2023-06-23 14:52:16 -07:00
Juan Fernandez
43ab81ee11
Feature 11829: Tailor host table response to ChromeOS (#12002)
Updated ingestion logic and fixed ChromeOS virtual tables to accommodate the requested UI changes.
2023-05-30 22:13:42 -04:00
Mo Zhu
e1a0021e7a
remove address column from network_interfaces chromeos table (#11787)
Co-authored-by: Zach Wasserman <zach@fleetdm.com>
2023-05-26 16:47:19 -05:00
Juan Fernandez
de7377e54f
ChromeOS support for Fleet dashboard (#11953)
- Added built-in label for ChromeOS
- Ingest os_version info from ChromeOS hosts.
2023-05-26 14:32:01 -04:00
Zach Wasserman
42b3e5602e
Fleetd for Chrome (#10281)
# 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/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- [x] Added/updated tests
- [x] Manual QA for all new/changed functionality
2023-03-16 09:01:10 -03:00