Commit graph

693 commits

Author SHA1 Message Date
Luke Heath
7bfd47276a
Pin action versions used in script diff workflow (#32416)
Resolves security scanner alert.
2025-08-28 14:38:45 -05:00
Victor Lyuboslavsky
1d9131a602
Improve integration workflow robustness with health checks and detailed enrollment logging. (#32348)
Fixes #32347

# Checklist for submitter

## Testing

- [x] QA'd all new/changed functionality manually


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

- New Features
- Added health checks and elapsed-time logging during server startup and
host enrollment in the integration workflow.
- Bug Fixes
- Reduced flakiness by adding bounded login retries and server readiness
verification before proceeding.
- Tests
- Periodic diagnostics for host enrollment status to aid visibility
during runs.
- Chores
- Increased server startup timeout from 10 to 15 minutes in the
integration workflow.
  - Minor workflow formatting cleanups for consistency.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-08-27 14:52:48 -05:00
Tim Lee
1cf71a251d
Fix FMA update PR name filter (#32338) 2025-08-27 13:45:04 -05:00
Tim Lee
8920c76cc7
Enable assignees for automated FMA PR creation (#32327) 2025-08-26 15:33:24 -05:00
Juan Fernandez
583c95c7b9
Added missing permissions required for code-sign-windows (#32281)
For #32007.

Added missing attestation permission requirements.
2025-08-25 17:08:36 -04:00
Carlo
8bc8d01f0a
Merge Android datastore into main Fleet datastore (#32233)
Resolves #31218
2025-08-25 11:41:28 -04:00
Lucas Manuel Rodriguez
6474fb39d1
Remove pull_request from check-vulnerabilities-in-released-docker-images.yml (#32234)
It triggered on a UI change, which doesn't make sense.

https://github.com/fleetdm/fleet/actions/runs/17164572704/job/48701807667?pr=32232

This should run in a schedule and manually only, not on pull requests.
2025-08-22 17:11:11 -03:00
Ian Littman
015a84046a
Split paths list in script diff GHA workflow to make the filter actually work (#32188) 2025-08-21 17:23:37 -06:00
Ian Littman
6c5d8bc2e9
Fix path filter for script diff action (#32186) 2025-08-21 17:04:37 -06:00
Tim Lee
f331effbc7
Use PAT to trigger FMA PRs (#32146) 2025-08-21 15:47:07 -06:00
Dhruv Trivedi
f03d5770ee
feat: add CI workflow to automatically check and report script changes in maintained apps (#32006) 2025-08-20 13:09:24 -06:00
Jorge Falcon
fc94901cac
Dogfood & Dogfood Free - Terraform deprecation fixes (#32101)
Added support to allow terraform plan (dry-run) without apply for
dogfood deployment action

Updated infrastructure/dogfood/terraform/aws-tf-module/docker/main.tf
- Allow hashicorp/aws `>= 5.68.0` instead of `~> 5.0`

Updated infrastructure/dogfood/terraform/aws-tf-module/main.tf
- Updated occurences of `data.aws_region.current.id` ->
`data.aws_region.current.region`
- Updated occurences of `data.aws_region.current.name` ->
`data.aws_region.current.region`
- Allow hashicorp/aws `>= 5.68.0` instead of `~> 5.0`
- `tf-mod-root-v1.15.2` -> `tf-mod-root-v1.17.0`
- `tf-mod-addon-migrations-v2.0.1` -> `tf-mod-addon-migrations-v2.1.0`
- `tf-mod-addon-osquery-carve-v1.1.0` ->
`tf-mod-addon-osquery-carve-v1.1.1`
- `tf-mod-addon-logging-alb-v1.3.0` -> `tf-mod-addon-logging-alb-v1.4.0`
- `tf-mod-addon-ses-v1.3.0` -> `tf-mod-addon-ses-v1.4.0`
- `tf-mod-addon-external-vuln-scans-v2.2.1` ->
`tf-mod-addon-external-vuln-scans-v2.3.0`

Updated infrastructure/dogfood/terraform/aws-tf-module/free.tf
- Updated occurences of `data.aws_region.current.id` ->
`data.aws_region.current.region`
- Updated occurences of `data.aws_region.current.name` ->
`data.aws_region.current.region`
- `tf-mod-byo-vpc-v1.13.0` -> `tf-mod-byo-vpc-v1.18.3`
- `tf-mod-addon-ses-v1.3.0` -> `tf-mod-addon-ses-v1.4.0`
- `tf-mod-addon-migrations-v2.0.1` -> `tf-mod-addon-migrations-v2.1.0`

Updated infrastructure/dogfood/terraform/aws-tf-module/free-ecs-hosts.tf
- Updated occurences of `data.aws_region.current.name` ->
`data.aws_region.current.region`
2025-08-19 22:48:19 -04:00
Juan Fernandez
19a5298f5b
Added missing permissions (#32021)
For #32007. Added missing permissions for attestation.
2025-08-19 14:04:17 -04:00
Victor Lyuboslavsky
4e50de7193
For Go tests, always upload a success/fail status indicator so that aggregate-result works correctly. (#32065)
Fixes #31994
2025-08-18 17:23:45 -05:00
Juan Fernandez
656869acf2
SLSA attestation updates (#31833)
For #26382

- Attested the signed Windows Orbit binary instead of the unsigned one.
- For both Fleet desktop and Osquery for macOS and Windows artifacts,
attested the binaries inside archives.
2025-08-14 14:52:16 -04:00
Lucas Manuel Rodriguez
1382365f8c
Release osqueryd 5.19.0 (#31912) 2025-08-14 14:47:22 -03:00
Eric
53bb51e49f
Update vulnerability dashboard to deploy from a parentless commit (#31887)
Changes:
- Updated the `deploy-vulnerability-dashboard` workflow to deploy the
app from a parentless commit.
2025-08-14 09:58:25 -05:00
Eric
d1e1b7d7d9
Website: Update deploy workflow to remove website/assets folder from website's build slug. (#31769)
Related to: #31753

Changes:
- Updated the "Deploy Fleet website" workflow to remove the
`website/assets` folder from the website's build slug when the website
deploys.
2025-08-13 17:00:14 -05:00
Lucas Manuel Rodriguez
d849e01add
Update Go to 1.24.6 (#31784)
Ran
```
make update-go version=1.24.6
```
And then updated the `sha256`s manually in the Dockerfiles.

Fixes https://nvd.nist.gov/vuln/detail/CVE-2025-47907
```
Cancelling a query (e.g. by cancelling the context passed to one of the query methods) during a call
to the Scan method of the returned Rows can result in unexpected results if other queries are being
made in parallel. This can result in a race condition that may overwrite the expected results with those
of another query, causing the call to Scan to return either unexpected results from the other
query or an error.
```
2025-08-12 08:10:05 -03:00
Lucas Manuel Rodriguez
4265bed7f1
Make sure VEX report is up-to-date with a CI check (#31759) 2025-08-11 14:55:31 -05:00
Eric
418cd8b416
Update "Deploy to Heroku" step of Deploy Fleet website workflow. (#31798)
Changes:
- Updated the "deploy to Heroku" step of the "Deploy Fleet Website"
workflow.
2025-08-11 14:37:08 -05:00
Eric
856a97a0b1
Fix YAML syntax error in Deploy Fleet website workflow. (#31794)
(Sorry for the follow-up PR)

Changes:
- Fixed a YAML syntax error in the "Deploy Fleet website" workflow.
2025-08-11 14:03:43 -05:00
Eric
b295d3a183
Update website to deploy from a parentless commit. (#31790)
Related to: [#31753](https://github.com/fleetdm/fleet/issues/31753)

Changes:
- Updated the "Deploy Fleet website" workflow to push to the Heroku git
repo from a parentless commit that does not contain the full git
history.
2025-08-11 13:25:54 -05:00
Konstantin Sykulev
54823b0b9d
pinning dependencies for FMA workflow yml (#31743)
Resolving 
https://github.com/fleetdm/fleet/security/code-scanning/1422
https://github.com/fleetdm/fleet/security/code-scanning/1421
https://github.com/fleetdm/fleet/security/code-scanning/1420
https://github.com/fleetdm/fleet/security/code-scanning/1419

- [x] QA'd all new/changed functionality manually
2025-08-08 12:11:55 -05:00
Eric
d53448618c
Disable storybook steps in website-related GH workflows (#31723)
Related to: https://github.com/fleetdm/fleet/issues/31720

Changes:
- Commented out the step that builds Storybook in the "Test Fleet
website" and "Deploy Fleet website" workflows. There is an error caused
by an incompatible version of a Storybook dependency that is preventing
these workflows from running.
2025-08-08 10:57:46 -05:00
Victor Lyuboslavsky
58eef867e0
Update MySQL versions we test with to 8.4.6 and 9.4.0 (#31694)
Fixes #31693

Manually forced a run for MySQL 8.4.6 to validate.

# Checklist for submitter

- Changes not needed since this is not a product change.

## Testing

- [x] Added/updated automated tests
2025-08-08 07:19:06 +02:00
Konstantin Sykulev
b1a392d672
FMA test automation (#31210)
For #29183

# Checklist for submitter

- [x] Added/updated automated tests
- [x] Manual QA for all new/changed functionality


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

* **New Features**
* Introduced automated validation workflows for maintained applications
on both macOS and Windows, ensuring apps can be installed, verified, and
uninstalled as expected.
* Added new command-line tool to validate maintained apps, providing
detailed reporting on validation results.
* Enhanced detection and handling of pre-installed applications during
validation.
* Improved post-installation steps for macOS, including quarantine
removal and system refresh.

* **Chores**
* Added new continuous integration workflows to automate application
validation on pull requests for relevant files.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-07-31 15:23:36 -05:00
Jordan Montgomery
3b4f38d45c
Add Github Action to create issues when there are new MS MDM Protocol Changes to Review (#31424)
The impetus for this was #31232 . Some MDM migrations and enrollments
broke because MDM Enrollment Protocol changes snuck in that we didn't
see

Now within 24h of Microsoft publishing changes to the MDM or MDE2
protocols we will get a github issue to review them

See #31423 for an example

# Checklist for submitter

## Testing


- [x] QA'd all new/changed functionality manually
2025-07-30 16:18:37 -04:00
Ian Littman
96479c5731
Bump container for fleetctl preview GH Action (#31389)
22.04 has been removed as of today so we're currently skipping fleetctl
preview testing.
2025-07-29 13:25:41 -05:00
Jorge Falcon
3a112afdb6
Loadtesting - Enable Cloudfront (#31073)
# Added
- Added kms.tf to support encrypting keys, specifically cloudfront keys.
- Added template/cloudfront.tf.disabled for use in enabling cloudfront.-
Modified ecs-iam.tf to support log-alb.tf, cloudfront.tf policies that
are injected into `local.extra_execution_iam_policies` and `local.iam`.
- Added log-alb.tf to enable logging alb, required by cloudfront.tf.

# Changed
- Modified ecs.tf to support adding of additional secrets from
`local.secrets`.
- Modified firehose.tf to support provider required updates for
deprecated resource configurations.
- Modified init.tf to support `> v5.0` of `hashicorp/aws` provider.
- Modified locals.tf to add `extra_execution_iam_policies`, `iam`,
`software_installers_kms_policy`, `extra_secrets`, secrets, and
`cloudfront_key_basename`, to support cloudfront.
- Modified readme.md with instructions on how to enable cloudfront.tf
- Modified redis.tf to support provider required updates for deprecated
resource configurations
- Modified s3.tf to support kms keys and add kms iam.
- Modified terraform version in .github/workflows/tfvalidate.yml - 1.9.0
-> 1.10.4
2025-07-21 16:41:06 -04:00
Jahziel Villasana-Espinoza
5159b82281
add a JSON schema for homebrew FMA inputs (#30881)
# 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-07-16 19:41:39 -04:00
Luke Heath
e52a8a2ecf
Apply starter library during for fleetctl preview server (#30519) 2025-07-16 08:12:32 -06:00
Luke Heath
5276a08665
Only run docker publish when PR is not a fork (#30808)
Co-authored-by: Ian Littman <iansltx@gmail.com>
2025-07-14 17:03:37 -06:00
Jorge Falcon
bc9c2b48ad
Adding support to dogfood for FLEET_MICROSOFT_COMPLIANCE_PARTNER_PROXY_API_KEY (#30709)
- Adding `FLEET_MICROSOFT_COMPLIANCE_PARTNER_PROXY_API_KEY` to dogfood
- Adding creation of secret and secret version for
`FLEET_MICROSOFT_COMPLIANCE_PARTNER_PROXY_API_KEY` value
2025-07-10 00:59:06 -04:00
Tim Lee
1980ec9cc0
Use GH API token in ingest FMA action (#30586) 2025-07-09 15:48:52 -06:00
Victor Lyuboslavsky
82eddfea1e
Added Slack failure notification to the new Collect engineering metrics job. (#30566)
Fixes #29140

I intended to add a Slack notification but forgot in the previous PR.

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

* **Chores**
* Added automated Slack notifications for failed scheduled workflow
runs.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-07-07 14:10:29 -05:00
Victor Lyuboslavsky
0d095b3778
Add workflows to collect engineering metrics. (#30540)
Fixes #29140 

This is an engineering initiated story that does not impact product.
This code has been running and manually tested in my own repo:
https://github.com/getvictor/eng-metrics

See
[README.md](https://github.com/fleetdm/fleet/blob/victor/29140-eng-metrics/.github/actions/eng-metrics/README.md)
in this branch for details.

The metrics can be viewed on
https://fleeteng.grafana.net/d/b97a629f-3626-4a28-9781-0fa3c8427897/engineering-metrics
(credentials in 1Password)


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

* **New Features**
* Introduced an engineering metrics collection tool that gathers GitHub
metrics (e.g., Time to First Review, Time to Merge) and uploads them to
BigQuery.
* Added support for user group management and product group mapping via
markdown parsing.
* Enabled print-only mode for testing metrics output without uploading
to BigQuery.
* Added automatic handling of bot filtering, weekend-aware time
calculations, and differential syncing of user groups.
* Implemented robust GitHub username validation and retry logic for API
rate limits.

* **Documentation**
* Added comprehensive usage and configuration documentation for the
engineering metrics tool.

* **Chores**
* Added configuration, environment example, and workflow files for
automated metrics collection and testing.
* Specified Node.js version and set up project dependencies and scripts.

* **Tests**
* Added extensive unit and end-to-end test suites to ensure reliability
of metrics collection, configuration, and integrations.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-07-03 16:59:25 -05:00
Robert Fairburn
dce722cc07
Initial action to synchronize signing secrets to confidential repo (#30561)
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

* **Chores**
* Added a new workflow to simulate syncing selected secrets to another
repository in dry-run mode. No actual changes will occur during
execution.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-07-03 16:45:39 -05:00
Martin Angers
639cbb510b
Prevent starting browser in fleetctl preview (#30424) 2025-06-30 10:41:42 -04:00
Ian Littman
dfaad610d9
Remove unneeded exposed ports on osquery-in-a-box minio to avoid host-port conflicts (#30416)
Also ensures we run integration tests when docker-compose files used by
`fleetctl preview` are changed, so we don't merge any more test failures
due to those.
2025-06-29 12:40:17 -05:00
Lucas Manuel Rodriguez
b81c6b7940
Release osqueryd 5.18.1 (#30348) 2025-06-26 18:35:50 -03:00
Lucas Manuel Rodriguez
3630c777d6
Pin version of cloudflared to 2025.5.0 (#30179)
CI is failing with:
```
Selecting previously unselected package cloudflared.
(Reading database ... 219352 files and directories currently installed.)
Preparing to unpack cloudflared-linux-amd64.deb ...
Unpacking cloudflared (2025.6.1) ...
Setting up cloudflared (2025.6.1) ...
Processing triggers for man-db (2.12.0-4build2) ...
error parsing tunnel ID: fleet-test-81a7ab03-3e62-43a2-bdc0-8470dbdca600 is neither the ID nor the name of any of your tunnels
Awaiting tunnel ready...
failed to create tunnel: Unknown output format 'default'
Awaiting tunnel ready...
Awaiting tunnel ready...
[...]
```
E.g.:
https://github.com/fleetdm/fleet/actions/runs/15746535584/job/44417207764?pr=30140

It's hard to troubleshoot what's going on with the latest version
without good credentials, so we will pin the version for now as a
workaround.
2025-06-20 13:20:19 -03:00
Ian Littman
79d5e605ed
Fail CI if Markdown files have "here" or "click here" as link anchors (#30027)
Also includes fixes for outstanding failing links. See earlier builds
for proof that this is catching problems.

For #30019.
2025-06-19 10:12:31 -05:00
Benjamin Edwards
e3711d0b11
added env vars for webhook osquery results logging destination (#29809)
Update dogfood deployment to utilize webhooks for the osquery results
logging destination configuration

@BCTBB already added a tines.io webhook URL to the repo secrets
`DOGFOOD_WEBHOOK_URL` where the value was provided by @harrisonravazzolo

Co-authored-by: Harrison Ravazzolo <38767391+harrisonravazzolo@users.noreply.github.com>
2025-06-16 10:22:31 -05:00
Luke Heath
5dc0171124
Move GitHub token to correct step (#30022) (#30023) 2025-06-14 14:36:03 -05:00
Luke Heath
442b66b87f
Update goreleaser env vars (#30021) 2025-06-14 13:31:30 -05:00
Lucas Manuel Rodriguez
ad0038f319
Update dependency-review-action (#29910)
Action is currently broken on all PRs.
2025-06-11 11:15:48 -03:00
Jahziel Villasana-Espinoza
9d2b07f76f
add a test that checks collation on new migrations (#29309)
> closes #26403

# 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] If database migrations are included, checked table schema to
confirm autoupdate
- For database migrations:
- [x] Ensured the correct collation is explicitly set for character
columns (`COLLATE utf8mb4_unicode_ci`).
- [x] Added/updated automated tests
- [x] Manual QA for all new/changed functionality
2025-05-29 17:00:30 -04:00
Lucas Manuel Rodriguez
a674a01144
Use build date for version for local TUF orbits (#29442)
Two new improvements for local TUF after feedback from @iansltx and QA
folks:

1. The static `42` was confusing when making or sharing several builds
of locally built fleetd. Locally TUF-built version of orbit will now be:
`YY.MM.XXXXX`, e.g. `25.5.56178` (patch version is a 16-bit number made
from day, hour and minute).
2. Also prompting user to delete `test_tuf` which is usually a source of
confusion/errors.
2025-05-28 17:13:58 -03:00
Lucas Manuel Rodriguez
681b5d4353
Update changelog for fleetd 1.42.0 release (#29186)
Co-authored-by: Luke Heath <luke@fleetdm.com>
Co-authored-by: Scott Gress <scott@fleetdm.com>
2025-05-19 08:22:30 -03:00