Commit graph

15093 commits

Author SHA1 Message Date
Jahziel Villasana-Espinoza
cf3a3cfbd2
fix: use a new strategy for finding the app name in case the title is wrong (#25297)
> For #24873

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

---------

Co-authored-by: Ian Littman <iansltx@gmail.com>
2025-01-10 16:42:06 -05:00
Noah Talerman
15198bbeda
Lock and wipe guide: add iOS/iPadOS best practice (#25311)
Addresses this issue: #23495
2025-01-10 16:31:36 -05:00
Ian Littman
9c2d68c41f
Document existing orbit auto-uninstall behavior (runs if post-install is supplied and fails, not if install fails) (#25300)
Haven't done full research yet on why this is, but my guess is that if
an install fails we don't know at what stage it failed, so running an
uninstall script would potentially just break things further. Putting
the trigger on post-install means that it's opt-in (we don't populate
post-install scripts by default) and we're uninstalling from a
relatively known state (the installer didn't error).

I'll get an issue filed tomorrow to make sure that this remains the
desired behavior, or if not then when we change this (e.g. when
implementing patching flows), but might as well fix docs in the interim
to be clear about what we're doing.

Co-authored-by: Drew Baker <89049099+Drew-P-drawers@users.noreply.github.com>
2025-01-10 15:21:05 -06:00
Jahziel Villasana-Espinoza
2fea291152
fix: remove duplicate bullet in doc (#25328)
> No issue, just something I noticed while reading docs

# 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] Manual QA for all new/changed functionality
2025-01-10 16:19:44 -05:00
Luke Heath
f7ec76f1c8
Revert "Bump github.com/open-policy-agent/opa from 0.44.0 to 0.68.0" (#25348)
Reverts fleetdm/fleet#22253
2025-01-10 15:12:06 -06:00
dependabot[bot]
607347a48b
Bump github.com/open-policy-agent/opa from 0.44.0 to 0.68.0 (#22253) 2025-01-10 14:32:58 -06:00
dependabot[bot]
de530407f2
Bump golang.org/x/net from 0.25.0 to 0.33.0 in /tools/terraform (#25342) 2025-01-10 13:32:34 -06:00
jacobshandling
98b839c616
Replace email logo with one that looks good in both light and dark mode (#25192)
## For #24618

**Change email:**
<img width="1012" alt="Screenshot 2025-01-06 at 3 50 27 PM"
src="https://github.com/user-attachments/assets/1a6ec908-0720-4794-a628-46137d1070b8"
/>

**Invite user:**
<img width="1012" alt="Screenshot 2025-01-06 at 4 15 05 PM"
src="https://github.com/user-attachments/assets/b8edf904-f704-45c4-97bf-2d1e6e7daf0b"
/>

**Enable MFA:**
<img width="1012" alt="Screenshot 2025-01-06 at 4 21 46 PM"
src="https://github.com/user-attachments/assets/a7507fa4-637c-4934-8c60-ec0e8c4fa60d"
/>

**Reset password:**
<img width="1012" alt="Screenshot 2025-01-06 at 4 25 54 PM"
src="https://github.com/user-attachments/assets/74bf4ca1-1960-4923-b8a3-b42ea7ff78ba"
/>


**Setup smtp:**
<img width="1012" alt="Screenshot 2025-01-06 at 4 28 29 PM"
src="https://github.com/user-attachments/assets/53993a5c-697c-4dc5-8005-ad286bf7a55e"
/>



- [x] Changes file added for user-visible changes in `changes/`
- [x] Manual QA for all new/changed functionality

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2025-01-10 10:42:44 -08:00
Dante Catalfamo
b4a2115b2c
Display correct key path to user for agent options (#25199)
#24038
2025-01-10 13:13:28 -05:00
Dante Catalfamo
8c338a1d77
Try splitting up integration tests (#25312)
Follow up to #25271 and #21774

Integration test failures will happen much faster of they occur, but now
the bottleneck is the `fleetctl` test suite.

It's trivial to continue splitting tests up now. We should look into
creating an action that checks that mock generation is up-to-date, run
it before all the tests, and then remove the mock generation step from
each test step. That would save about a minute and a half of runtime
from each test and help offset the cost of splitting the tests up.

![ci runtime
breakdown](https://github.com/user-attachments/assets/057b8ee1-782c-4e1f-9486-42c7d1169c81)
![ci runtime
max](https://github.com/user-attachments/assets/3a26995f-d9cb-490b-84d9-1a7fbb3cd6b3)

![image](https://github.com/user-attachments/assets/b4c888c8-867f-4bdd-9b69-0dc20d0d202a)
2025-01-10 12:52:13 -05:00
Rachael Shaw
d27d6796f7
Small formatting fix in API for contributors (#25336)
Fixed some curly brackets that should have been square brackets
2025-01-10 11:51:35 -06:00
Lucas Manuel Rodriguez
7e419f97cb
Fix missing docs and yaml (#25333) 2025-01-10 11:42:55 -06:00
Scott Gress
147c5542e8
fix path to artifacts json (#25331) 2025-01-10 11:40:46 -06:00
Lucas Manuel Rodriguez
009f54bdda
Changes to migrate to new TUF repository (#23588)
# Changes

- orbit >= 1.38.0, when configured to connect to
https://tuf.fleetctl.com (existing fleetd deployments) will now connect
to https://updates.fleetdm.com and start using the metadata in path
`/opt/orbit/updates-metadata.json`.
- orbit >= 1.38.0, when configured to connect to some custom TUF (not
Fleet's TUFs) will copy `/opt/orbit/tuf-metadata.json` to
`/opt/orbit/updates-metadata.json` (if it doesn't exist) and start using
the latter.
- fleetctl `4.63.0` will now generate artifacts using
https://updates.fleetdm.com by default (or a custom TUF if
`--update-url` is set) and generate two (same file) metadata files
`/opt/orbit/updates-metadata.json` and the legacy one to support
downgrades `/opt/orbit/tuf-metadata.json`.
- fleetctl `4.62.0` when configured to use custom TUF (not Fleet's TUF)
will generate just the legacy metadata file
`/opt/orbit/tuf-metadata.json`.

## User stories

See "User stories" in
https://github.com/fleetdm/confidential/issues/8488.

- [x] Update `update.defaultRootMetadata` and `update.DefaultURL` when
the new repository is ready.
- [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] Added/updated tests
- [X] Manual QA for all new/changed functionality
- For Orbit and Fleet Desktop changes:
- [X] Orbit runs on macOS, Linux and Windows. Check if the orbit
feature/bugfix should only apply to one platform (`runtime.GOOS`).
- [X] Manual QA must be performed in the three main OSs, macOS, Windows
and Linux.
- [X] Auto-update manual QA, from released version of component to new
version (see [tools/tuf/test](../tools/tuf/test/README.md)).
2025-01-10 14:27:30 -03:00
RachelElysia
5873cb9ef7
Fleet UI: Software headers more responsive (#25212) 2025-01-10 10:37:55 -05:00
Allen Houchins
464d99dd19
Fixed broken link (#25323) 2025-01-10 09:56:34 -05:00
Tim Lee
940f190c38
Docs: disk encryption (#25314) 2025-01-09 18:12:54 -06:00
Noah Talerman
95862328d4
Release article: Fleet 4.62.0 (#25255)
Co-authored-by: Luke Heath <luke@fleetdm.com>
Co-authored-by: Drew Baker <89049099+Drew-P-drawers@users.noreply.github.com>
2025-01-09 18:10:53 -06:00
Rachael Shaw
378b404421
Documentation changes for v4.62.0 (#25315)
Co-authored-by: Marko Lisica <83164494+marko-lisica@users.noreply.github.com>
Co-authored-by: Konstantin Sykulev <konst@sykulev.com>
Co-authored-by: George Karr <georgekarrv@users.noreply.github.com>
Co-authored-by: Victor Lyuboslavsky <victor.lyuboslavsky@gmail.com>
Co-authored-by: Ian Littman <iansltx@gmail.com>
Co-authored-by: Noah Talerman <47070608+noahtalerman@users.noreply.github.com>
Co-authored-by: Lucas Manuel Rodriguez <lucas@fleetdm.com>
Co-authored-by: Eric <eashaw@sailsjs.com>
2025-01-09 18:04:34 -06:00
Eric
aab320333a
Website: Update flags in regex used to find Vue templates in markdown content. (#25316)
Changes:
- Updated the flags on the regex used to detect Vue templates in
MArkdown content. The regex was incorrectly matching double curly
bracket-wrapped variables in markdown code blocks when it should not.
2025-01-09 17:13:42 -06:00
Allen Houchins
64cd45753a
Add 1Password update profile to "💻 Workstations" team (#25291)
fleetdm/confidential#9041

Promoting change from "💻🐣 Workstations (canary)" to "💻 Workstations"
2025-01-09 17:02:44 -06:00
Rachael Shaw
4f68dca1a3
Docs: Update get host example response (#25313)
Couple changes in advance of API design for #23235 (since certificates
will be available for macOS/iOS/iPadOS):
+ Update "Get host" example response to be a macOS host
+ Update "Get host by device token" example response to be a macOS host
& move weightier items to the bottom for readability
2025-01-09 16:46:24 -06:00
Mike McNeil
d6bcf6cb21
Update roadmap-preview-january-2025.md (#25284)
fyi @Drew-P-drawers @noahtalerman @onasismunro
2025-01-09 17:35:08 -05:00
Eric
4980052f0b
Website: Update policy details page, add controls to policies in standard query library. (#25309)
Related to: #23285


Changes:
- Updated the policy details page to have a controls section that
displays the `configuration_profile` and `script` values of policies
- Added configuration profiles and scripts from
https://github.com/ddribeiro/fleet-remediation-controls to macOS
policies in the standard query library.
2025-01-09 16:28:22 -06:00
Rachael Shaw
d1a564e387
Docs: Update get host example (#25310)
+ Update "Get host" example response to be a macOS host (in advance of
API design for #23235, since certificates will be available for
macOS/iOS/iPadOS)
+ Update formatting of "Get host by identifier" to move weightier items
to the bottom
2025-01-09 15:52:34 -06:00
Robert Parsimei Koikai
52fbb233ea
Feature/clarify package generation process (#24324) 2025-01-09 15:26:13 -06:00
Sam Pfluger
b45b6fa202
Add conversion rate re-computation to workiversary process (#25308) 2025-01-09 15:16:33 -06:00
Sam Pfluger
5839079252
Make Noah DRI of product design (#25304)
- Make Noah DRI of product-design page
- Remove duplicative ` // GitHub issue templates` call-out  


FYI: @lukeheath and @noahtalerman, a lot of the time you two have better
context on the changes than I do and I want to remove myself as any kind
of perceived blocker.
2025-01-09 14:37:13 -06:00
RachelElysia
f15e45ea26
Fleet UI: Align update text baseline with neighboring text (#25298) 2025-01-09 15:01:09 -05:00
Jahziel Villasana-Espinoza
863a37a3e5
fix: update install script for FMAs to improve re-install process (#25238)
> For #24148

# 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] If database migrations are included, checked table schema to
confirm autoupdate
- For database migrations:
- [x] Checked schema for all modified table for columns that will
auto-update timestamps during migration.
- [x] Confirmed that updating the timestamps is acceptable, and will not
cause unwanted side effects.
- [x] Ensured the correct collation is explicitly set for character
columns (`COLLATE utf8mb4_unicode_ci`).
- [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-01-09 14:22:21 -05:00
Noah Talerman
9cb59c2abd
Reference docs: "Agent configuration" page cleanup (#25290)
This PR brings the "Agent configuration" format/organization closer to
the format we use for all other reference docs (YAML files, REST API,
and Fleet server configuration)

Changes:
- Update page headers so that the right-side navigation includes all the
top-level keys. Similar to the YAML files docs.
- Brings examples to the top of each section after a short description
(if necessary)
- Cut content
- Update "Learn more" links to more recent guides
2025-01-09 13:10:56 -06:00
Victor Lyuboslavsky
dfa9a90775
Updating deprecated actions/download-artifact (#25296) 2025-01-09 12:58:59 -06:00
Victor Lyuboslavsky
68b7cf9141
Added signed URLs (#25197)
For #24869 

This subtask contains code to sign the CloudFront software installer and
bootstrap package URL using AWS SDK URL signer.
It works with the current bootstrap package delivery. For software
installers, fleetd will need to be modified to take advantage of this
URL in a future subtask (which will also include updated API contributor
docs).

My article on signed URLs, for context:
https://victoronsoftware.com/posts/cloudfront-signed-urls/

# Checklist for submitter

- [x] Added/updated automated tests
- [x] Manual QA for all new/changed functionality
2025-01-09 12:56:54 -06:00
jacobshandling
689e78a598
UI - use new db user settings to persist user's host table column preferences (#25185)
## For #25032

<img width="1792" alt="Screenshot 2025-01-07 at 6 50 39 PM"
src="https://github.com/user-attachments/assets/17a63b3d-a983-433a-a3c4-6c66dbb08fce"
/>

- Add new `include_ui_settings` query param to `GET` `/me` calls
- Use new `settings` in response to set settings into UI context
- On hosts page, use that context, if present, to set which columns are
hidden. Fallback to a default set of hidden columns.
- When updating visible columns, persist preference via `PATCH` to
`/users/:id` with a new `settings` payload

- [x] Changes file added for user-visible changes in `changes/`
- [x] Manual QA for all new/changed functionality

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2025-01-09 10:53:43 -08:00
Katheryn Satterlee
11f8e074e9
Restore stewardship commitment in FAQ (#25285)
The entry outlining Fleet's commitment to open source stewardship was
accidentally removed from the FAQ. Restoring it to its rightful place.

# Checklist for submitter

Docs only change.
2025-01-09 12:43:55 -06:00
RachelElysia
12ca927d43
Fleet UI: Fix overflow of software title in 2 more modals (#25294) 2025-01-09 13:42:58 -05:00
Dante Catalfamo
e6fb647d95
Run CI tests in parallel (#25271)
#21774

Improves run time by about 30%.

Things have been arranged in such a way that splitting modules out
further will be trivial in the future, such as breaking the different
integration test suited into their own units.


![image](https://github.com/user-attachments/assets/ead46e4c-6f14-406d-a29b-b25abc79c384)


![image](https://github.com/user-attachments/assets/3f7fd7f3-d7a8-4ff8-a184-646a72f1d015)
2025-01-09 13:38:24 -05:00
Sam Pfluger
33c3ca6de8
Remove auto issue from rituals (#25292) 2025-01-09 12:17:23 -06:00
dependabot[bot]
02008992a9
Bump github.com/go-git/go-git/v5 from 5.11.0 to 5.13.0 (#25280) 2025-01-09 12:09:49 -06:00
jacobshandling
d1335986dd
UI – Include team-level queries in Select query modal, only call for queries when needed (#25286)
## For #25114

- When host is on a team, include both the team's and global queries in
list presented to the user
- Optimize by only calling queries API when needed

<img width="1464" alt="Screenshot 2025-01-08 at 6 47 06 PM"
src="https://github.com/user-attachments/assets/9ed6fb1b-7cc3-4e34-a38d-4c7baecedf4c"
/>

- [x] Changes file added for user-visible changes in `changes/`
- [x] Manual QA for all new/changed functionality

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2025-01-09 10:08:46 -08:00
Victor Lyuboslavsky
b1891b8838
Update deprecated actions/upload-artifact to v4.5.0 (#25295) 2025-01-09 12:08:02 -06:00
jacobshandling
55b500a3f3
API, datastore, migration for new "user settings", with `"hidden_hosts_table_columns" setting (#25184)
## For #25033 

- For database migrations:
- [x] Checked schema for all modified table for columns that will
auto-update timestamps during migration.
- [x] Confirmed that updating the timestamps is acceptable, and will not
cause unwanted side effects.
- [x] Added/updated automated tests
- [ ] 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

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2025-01-09 10:04:47 -08:00
Eric
7ceb5bcac4
Website: add contributor information to policy details page. (#25275)
Closes: #24454


Changes:
- Updated the policy details page to include the policy's contributor
2025-01-09 10:25:46 -06:00
Scott Gress
9ad246876c
Add YARA queries to osquery-perf (#25272)
# Overview

This PR adds support for remote YARA queries to osquery-perf, so that
remote YARA queries can be load-tested.

# Details

The existing `runLiveQuery()` is updated to branch off into different
query running functions based on the content of the query. If the query
contains `from yara` and `sigurl`, then the new `runLiveYaraQuery()`
function is run which makes a request to the Fleet "get yara rules" API
before returning an appropriate response. Otherwise, the new
`RunLiveMockQuery()` function is run which includes the previous logic
for sending a mock response.

# Testing

I don't see any automated testing for osquery-perf, but I manually
tested in the following way:

1. Started osquery-perf with `go run agent.go`
2. Ran a live query on the new host using
```
SELECT * FROM yara where sigurl="https://localhost:8080/api/osquery/yara/rule1.yar"
```
and verified that the result was as-expected:
<img width="1642" alt="image"
src="https://github.com/user-attachments/assets/a2c9cacf-e28d-409c-8e83-1c82809b89c0"
/>
I also used a log in Fleet to verify that the "get yara rules" API was
really being called.

3. Ran another live query on the host using:
```
SELECT * FROM system_info"
```
and verified that the result was as expected:
<img width="1665" alt="image"
src="https://github.com/user-attachments/assets/a8d35389-f193-4902-badf-200d760fdf46"
/>

I also tested that sending a `sigurl` with the wrong host returns a
`live yara query failed because sigurl host did not match server
address` error

# Checklist for submitter

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

- [X] Added support on fleet's osquery simulator `cmd/osquery-perf` for
new osquery data ingestion features.
2025-01-09 10:00:22 -06:00
Janis Watts
ed56986918
Update release-qa.md (#25273)
On issue template, split tests into product groups, update dead link
2025-01-08 20:00:58 -06:00
Eric
60c4227b53
Website: add note about other agents to /better page (#25281)
Closes: #24641

Changes:
- Added a note about cybersecurity tools that might be installed on
users devices to the /better page
2025-01-08 18:17:34 -06:00
Mike Thomas
20694617cf
Remove security marketing fluff from (#25279)
I updated the orchestration page with @allenhouchins to remove marketing
fluff for security users.

Closes https://github.com/fleetdm/fleet/issues/24640
2025-01-09 08:55:47 +09:00
Sarah Gillespie
69459efd1d
Remove arrow icon from MDM solution table (#25211) 2025-01-08 17:41:26 -06:00
Eric
649f7b3052
Website: Move yaml depenency (#25277)
Changes:
- Moved `yaml` from devDepenencies to dependencies in the website's
package.json
2025-01-08 17:35:41 -06:00
Victor Lyuboslavsky
992144bd59
Downgraded expected/common "BootstrapPackage not found" server error to a debug message. (#25266)
For #25265
Downgraded expected/common "BootstrapPackage not found" server error to
a debug message. Occurs when UI/API checks if bootstrap package exists.

# Checklist for submitter
- [x] Changes file added for user-visible changes in `changes/`,
`orbit/changes/` or `ee/fleetd-chrome/changes`.
- [x] Manual QA for all new/changed functionality
2025-01-08 17:14:10 -06:00