Commit graph

705 commits

Author SHA1 Message Date
Scott Gress
1c3487ad86
Create RandoKiller™ to help diagnose and fix flaky tests (#24696)
This PR adds a new workflow called "Stress Test Go Test" (aka the
RandoKiller) that allows running one or more tests repeatedly up to a
set number of times, or until a test fails. This is useful for:

* Trying to diagnose and debug a flaky test
* Verifying that a proposed fix for a flaky test actually works.

To use:

1. Create a branch whose name ends with "-randokiller"
2. Modify the .github/workflows/config/randokiller.json file to your
specifications (choosing the packages and tests to run, the mysql
matrix, and the number of runs to do)
3. Push up the branch

Since the stress test is intended to run a branch that you'll never
merge, you should feel free to add whatever logs to your tests or code
that will help diagnose failures.

I used this to diagnose and fix
https://github.com/fleetdm/fleet/pull/24697!
2024-12-12 12:02:21 -06:00
Robert Fairburn
e361073fca
Update terraform version used in tfvalidate (#24699) 2024-12-12 11:25:26 -06:00
Scott Gress
149e5b129f
23285 add attestation (#24604) 2024-12-10 16:02:08 -06:00
Scott Gress
4a623812e8
Add notification for dogfood GitOps failures (#24402)
for #19106 

This PR adds a Slack notification when the GitOps run fails in the
dogfood-gitops workflow. Whenever the actual GitOps action fails, it
should notify #help-dogfooding with a link to the failed action. Note
that this will alert on both merges to main and scheduled runs, which I
think we want. Also note that this is [currently failing on
main](https://github.com/fleetdm/fleet/actions/runs/12154006118) so this
alert will start going off daily until the issue is fixed 😶

### > Note: this will need a new Slack incoming webhook for sending
messages to #help-dogfooding, and a new
`SLACK_G_HELP_DOGFOODING_WEBHOOK_URL` repo secret with the webhook URL.

I tested this on a personal private repo just to make sure I got all the
syntax right:

<img width="422" alt="image"
src="https://github.com/user-attachments/assets/74d188eb-5c03-471b-a5db-9f578a56e2ab">
2024-12-10 13:39:32 -06:00
Victor Lyuboslavsky
f2fc2bc0ea
Add retry to fleetd base pkg build. (#24489) 2024-12-09 13:24:38 -06:00
Tim Lee
7547dcb74e
bugfix: orbit linux zenity progress windows (#24280) 2024-12-05 08:02:03 -07:00
Scott Gress
04010ba5f3
Use goreleaser v2 in CI (#23748) 2024-12-03 16:15:31 -06:00
Lucas Manuel Rodriguez
8dbfbad167
Add github action to automate timestamp update (#24074)
#23042
2024-11-27 16:13:54 -03:00
Lucas Manuel Rodriguez
7d04119245
Release fleetd 1.36.0 (#24136) 2024-11-25 16:34:09 -03:00
Marko Lisica
04d1ded81a
Remove step to apply env variables to profiles (fleetctl gitops is doing this) (#24078)
I beleive we don't need this step anymore, since `fleetctl gitops` will
replace it with real value and send to the server. This should be done
in #17309.
2024-11-22 19:30:40 +01:00
Lucas Manuel Rodriguez
a8ba004c61
Add expiration checks for targets and snapshot roles (#24081)
[#8489](https://github.com/fleetdm/confidential/issues/8489)

We had the timestamp check.
Robert added the root check recently.
Am now duplicating the check for `snapshot` and `targets` metadata
files.

PS: Please review with whitespace changes disabled.
2024-11-22 14:46:03 -03:00
Victor Lyuboslavsky
e4df954b0f
Update nanomdm dependency with latest bug fixes and improvements. (#23906)
#23905 

- Update with upstream nanomdm changes up to
825f2979a2
- Removed PostgeSQL folder from our nanomdm
- Added nanomdm MySQL test job to our CI

# 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] Added/updated tests
- [x] Manual QA for all new/changed functionality
2024-11-20 11:47:11 -06:00
Lucas Manuel Rodriguez
c93a28b00f
Fix build-fleetd_tables.yml workflow (#23875)
This fixes the workflow, successful run:
https://github.com/fleetdm/fleet/actions/runs/11864218412
2024-11-15 19:41:19 -03:00
Lucas Manuel Rodriguez
c993e5a485
Add workflow to build fleetd_tables (#23873)
Workflow to build `fleetd_tables` in Github.
2024-11-15 19:05:07 -03:00
Robert Fairburn
e20820dfe5
Deploy to free.fleetdm.com before dogfood (#23762) 2024-11-13 11:17:23 -06:00
StepSecurity Bot
552e76b68e
[StepSecurity] ci: Harden GitHub Actions (#23765) 2024-11-13 10:43:13 -06:00
Lucas Manuel Rodriguez
299a7999b2
Fix trivy fleetctl workflow (#23643)
Exactly same fix as #23634.

PS: Thanks @sgress454!
2024-11-12 14:58:41 -03:00
Scott Gress
1551157c23
Fix rate limiting issue in Trivy workflow scan (#23634) 2024-11-07 15:06:17 -06:00
Robert Fairburn
e525eed606
Include root.json in check-tuf-timestamps.yml (#23608) 2024-11-07 11:32:01 -06:00
Lucas Manuel Rodriguez
c09360aabb
Add workflow to ease QA of ADE workflows (#23470)
From discussions with @jahzielv.

QAing ADE flows:

1. New version of fleetd is pushed to `edge`
2. QA folks can trigger this new workflow and download the generated
`fleetd-base.pkg` and `fleetd-base-manifest.plist`.
3. Host the downloaded files (in `foobar/`) in their ngroks URLs (using
e.g. `go tools ./tools/file-server 8085 foobar/`)
4. Use Fleet's `FLEET_DEV_DOWNLOAD_FLEETDM_URL` to point the Fleet
server to their ngrok URL.
2024-11-05 05:28:50 -03:00
Lucas Manuel Rodriguez
3cdafcee5f
Release fleetd 1.35.0 (#23467) 2024-11-04 11:39:46 -03:00
RachelElysia
951542dacf
Fleet UI: Automatically create a PR if Osquery version is not up to date in UI (#23290) 2024-10-30 16:35:44 -04:00
Victor Lyuboslavsky
d0ed03f3c8
Update Go CI tests: MySQL 8.4.2 -> 8.4.3 (#23255)
Make sure Fleet works with the latest MySQL 8.4
2024-10-25 15:58:10 -05:00
Victor Lyuboslavsky
40f7cdf547
Added Render deploy workflow for fleet-gitops CI. (#23190)
#21715 

# Checklist for submitter
- [x] Manual QA for all new/changed functionality
2024-10-25 15:55:42 -05:00
Ian Littman
921d8c8afd
Check for TUF expirations 2x daily, and warn 4 days in advance rather than 2 (#23039) 2024-10-23 10:06:03 -05:00
Lucas Manuel Rodriguez
103727b5f4
Use ubuntu 22.04 for trivy ci scheduled check (#23088)
Fixing these failures:
https://github.com/fleetdm/fleet/actions/runs/11454239765/job/31881900492

Following this advice
https://github.com/orgs/community/discussions/139074#discussioncomment-10935090.
It seems it works.
2024-10-22 15:41:32 -05:00
Lucas Manuel Rodriguez
2c891447d4
Release osqueryd 5.14.1 (#23045) 2024-10-22 12:27:00 -05:00
Victor Lyuboslavsky
f85b6f776f
Updating golangci-lint to 1.61.0 (#22973) 2024-10-18 12:38:26 -05:00
Eric
3dda9d0252
Delete deploy-bulk-operations-dashboard workflow (#22940)
Closes: https://github.com/fleetdm/confidential/issues/8351


Changes:
- Deleted the "Deploy app to bulk operations dashboard pipeline on
Heroku" workflow. This dashboard is now hosted in Render, and deploys
are triggered manually via the Render dashboard.
2024-10-18 12:02:21 -05:00
Eric
cb67c32afc
Change Ubuntu version in Heroku deploy workflows (#22939)
Closes: #22931

Changes:
- Updated the deploy workflows for the Fleet website and the
vulnerability dashboard to run on Ubuntu 22.04 to prevent issues we've
been seeing with the Heroku deploy action and the latest version of
Ubuntu.
2024-10-15 16:20:12 -05:00
Luke Heath
b394f4f65b
Update docker publish branch rules (#22806) 2024-10-10 11:20:06 -05:00
Tim Lee
1ecdad24ad
Remove panic recovery in CI tests (#22644) 2024-10-09 18:29:14 -06:00
Lucas Manuel Rodriguez
008938b405
Reduce test-packaging.yml runs on main (#22670)
Last change for #22206.

No need to run this workflow on **every** push to `main`. Let's match
the PR paths.
2024-10-04 16:58:38 -03:00
Lucas Manuel Rodriguez
2cb17b34d3
Disable test packaging of MSI on macOS Github runners (#22562)
#22206

This was discussed in the backend weekly.

Currently the test-packaging.yml is extremely unreliable (it has more
failures than successes), because of issues with Docker and colima on
Github macOS runners (we tried docker then colima but both have issues,
timeouts, etc.).

This only removes testing of MSI package generation from macOS. IMO this
is low risk as almost all Fleet devs generate MSI packages from their
macOS workstations.
2024-10-04 16:33:42 -03:00
Lucas Manuel Rodriguez
d8b67807ba
Release fleetd 1.34.0 (#22602) 2024-10-02 19:21:06 -03:00
Lucas Manuel Rodriguez
f8fff1685d
Fix lint-js (#22557)
I missed this change in https://github.com/fleetdm/fleet/pull/22504
2024-10-01 18:25:17 -03:00
Lucas Manuel Rodriguez
a9a9e92f3f
Use node version defined in package.json (#22504)
We did the same thing for Go. (This allows us to not require admin
permissions to update the used Node version in CI.)
2024-10-01 17:38:22 -03:00
Ian Littman
59160c2f30
Exclude migration tests from migration timestamp/ordering check (#22496)
This fix applies to cases (e.g.
00ec402f18) where order of files being
added is e.g.:

1. Migration A
2. Migration B
3. Test for migration A

This also reorders workflow steps so the ones that don't require setting
up Go + compiling happen first, so if we have a migration issue it gets
reported sooner.

# Checklist for submitter

- [x] Manual QA for all new/changed functionality
2024-09-30 09:53:19 -05:00
Lucas Manuel Rodriguez
e861ae7319
Release fleetd 1.33.0 (#22283) 2024-09-23 06:59:04 -03:00
Lucas Manuel Rodriguez
c49bed104d
Add CI check to detect issues with pushed fleetdm/fleetctl docker image (#22020)
Adds detection of issues like #21992.
2024-09-16 13:05:28 -03:00
Ian Littman
ab996dc57d
Note that minimum MySQL version is 8.0.36 everywhere (not just 8.0) because that's what we test with (#22072)
Also mention that we test with 8.4.2 in a few more places.

Note that while I'm editing release articles, this isn't retconning
minimum requirements; we mention in 4.55.0 release notes further down
that we expect 8.0.36.
2024-09-13 10:59:38 -05:00
Roberto Dip
078c0ac3b7
document and use MDM SSO settings via gitops (#21869)
for #21313
2024-09-09 17:03:20 -03:00
Roberto Dip
70923b8352
add wait until mysql is ready (#21883) 2024-09-06 18:17:22 -03:00
Lucas Manuel Rodriguez
6a5c515dc4
Attempt to use go.mod version instead of hidden Github var (#21768)
Done as part of oncall improvements.

`vars.GO_VERSION` can only be changed by admins and it's not public
(Fleet devs don't know the current value of the variable), this approach
uses the version specified in our `go.mod` file.
2024-09-03 20:49:50 -03:00
Victor Lyuboslavsky
1b06b050d7
Fix issues with coverage uploads (#21736)
#21707
2024-09-03 09:07:16 -05:00
Lucas Manuel Rodriguez
ea7d08fc88
Release fleetd 1.32.0 (#21658)
Co-authored-by: Sharon Katz <121527325+sharon-fdm@users.noreply.github.com>
2024-08-29 18:51:10 -03:00
Lucas Manuel Rodriguez
8d4b7ad526
Remove unused workflow and dockerfile (#21551)
- `.github/workflows/push-osquery-perf-to-ecr.yml` has 0 workflow runs
(added but never used)
- `Dockerfile.osquery-perf` is only used by
`.github/workflows/push-osquery-perf-to-ecr.yml`.
2024-08-26 13:28:25 -03:00
Victor Lyuboslavsky
fdfc12982b
Improvements to go tests in CI (#21545)
#21546 
Some improvements to overall go test CI run time.
2024-08-26 08:55:53 -05:00
Eric
debb2d1790
Add app to manage scripts and profiles. (#21450)
Related to: #20296 

Changes:
- Added `ee/bulk-operations-dashboard`, a Sails.js app that lets users
manage configuration profiles and scripts across multiple teams on a
Fleet instance.
- Added a Github workflow to deploy the app to Heroku
- Added a Github workflow to test changes to the bulk operations
dashboard.
2024-08-22 14:59:15 -06:00
Lucas Manuel Rodriguez
ede0897acd
Pin trivy action (#21425)
Fixing code scanning warnings
https://github.com/fleetdm/fleet/security/code-scanning for the recently
added workflow.
2024-08-20 15:27:41 -03:00
Lucas Manuel Rodriguez
18f010f228
Update fleetdm/fleetctl, fleetdm/wix and fleetdm/bomutils docker images (#21063)
#20571

## Summary of changes

We have a few moving parts in fleetctl land (`fleetdm/wix` is used to
build `msi`s and `fleetdm/bomutils` is used to build `pkg`s, and
`fleetdm/fleetctl` can be used to build packages using docker, no need
for fleetctl executable):
```mermaid
graph LR

fleetctl_exec[fleetctl<br>executable];
wix_image[fleetdm/wix<br>docker image];
bomutils_image[fleetdm/bomutils<br>docker image];
fleetctl_image[fleetdm/fleetctl<br>docker image];

fleetctl_exec -- uses --> wix_image;

fleetctl_image -- COPY dependencies<br>FROM --> wix_image;

fleetctl_exec -- uses --> bomutils_image;

fleetctl_image -- COPY dependencies<br>FROM --> bomutils_image;
```
So, we'll need to update the three images: `fleetdm/bomutils`,
`fleetdm/wix` & `fleetdm/fleetctl`.

- `tools/bomutils-docker/Dockerfile`, `tools/wix-docker/Dockerfile` and
`tools/fleetctl-docker/Dockerfile`: Updating the base image to fix the
CRITICAL vulnerabilities.
- Modified existing+unused
`.github/workflows/build-and-check-fleetctl-docker-and-deps.yml` to run
every day to check for CRITICAL vulnerabilities in `fleetdm/wix`,
`fleetdm/bomutils` and `fleetdm/fleetctl`.
- `.github/workflows/goreleaser-fleetctl-docker-deps.yaml`:
`fleetdm/bomutils` and `fleetdm/wix` were pushed manually a few years
ago (most likely by Zach), so I've added a new action to release them
when we have changes to release (like now). It will basically release
`fleetctl/bomutils` and `fleetdm/wix` when pushing a tag of the form
`fleetctl-docker-deps-*` (we'll need to protect such tag prefix).
- Changes in `.github/workflows/test-native-tooling-packaging.yml` to
build `fleetdm/bomutils` and `fleetdm/wix` for `fleetdm/fleetctl` to use
them instead of the ones in docker hub.

--

Build before upgrading `debian:stable-slim`:

https://github.com/fleetdm/fleet/actions/runs/10255391418/job/28372231837
![Screenshot 2024-08-05 at 5 24
25 PM](https://github.com/user-attachments/assets/8a7d3576-3eb6-474f-989a-079873fca4fa)

Build after upgrading `debian:stable-slim`:
https://github.com/fleetdm/fleet/actions/runs/10255550034

- [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
2024-08-20 14:07:59 -03:00
Roberto Dip
f4820e2af9
Release fleetd 1.31.0 (#21391)
- **Release fleetd 1.30.0**
- **fix issue with disk encryption banner (#21385)**
- **Release fleetd 1.31.0**
2024-08-19 16:53:14 -03:00
Roberto Dip
936cc4a6d7
notify #help-engineering when a dogfood deploy is in progress (#21347)
This ensures `#help-engineering` is notified when a dogfood deploy is in
progress. It helps set people's expectations about what's going on while
the server is temporarily down.
2024-08-19 15:33:00 -03:00
Lucas Manuel Rodriguez
cdfa31ada5
Release osqueryd 5.13.1 (#21329) 2024-08-19 13:52:30 -03:00
Victor Lyuboslavsky
4eb72535dc
Support for MySQL 8.4.2 (#21364)
#21270

The main change for MySQL 8.4.2 is that foreign key constraints are
stricter:
https://dev.mysql.com/doc/refman/8.4/en/server-system-variables.html#sysvar_restrict_fk_on_non_standard_key

Also, most replica-related commands have been renamed.

# 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] Added/updated tests
- [x] If database migrations are included, checked table schema to
confirm autoupdate
- [x] Manual QA for all new/changed functionality
2024-08-16 16:32:38 +02:00
Dante Catalfamo
9a5e5372eb
SSVPP Backend and CLI (#21132)
#19882 and #20532
2024-08-14 10:25:32 -04:00
Luke Heath
34901a9dc7
Update goreleaser runner (#21226) 2024-08-09 10:50:43 -07:00
Roberto Dip
4853ecbf4e
Release fleetd 1.30.0 (#21071) 2024-08-06 07:32:24 -03:00
Lucas Manuel Rodriguez
ab7df5155d
Use docker compose on CI instead of docker-compose (#21017)
After this is merged I'll cherry pick to `minor-fleet-4.55.0`.
2024-08-02 18:12:36 -03:00
Lucas Manuel Rodriguez
2f479b3ba9
Release osqueryd 5.13.0 (#20949) 2024-08-02 14:57:50 -03:00
Dante Catalfamo
0a15647e10
Host software deleted at remigration (#20996)
# Recreate out of order migration, replace `docker-compose` with `docker compose` in db test runner
2024-08-02 10:47:40 -04:00
Lucas Manuel Rodriguez
6d87091a89
Release fleetd 1.29.0 (#20700) 2024-07-26 15:04:03 -03:00
Dante Catalfamo
5e1a3d03ae
MySQL 8.0 Migration (#20225)
#17249
2024-07-22 16:27:36 -04:00
Victor Lyuboslavsky
8c1c016b54
Don't stop unit tests if Go integration tests fail (#20628) 2024-07-20 19:22:07 +02:00
Lucas Manuel Rodriguez
84a81bafde
Release fleetd 1.28.0 (#20581)
Co-authored-by: Luke Heath <luke@fleetdm.com>
2024-07-19 12:47:00 -03:00
Dante Catalfamo
ecf2346ace
Add support for Linux ARM64 (#19931)
#1845

Co-authored-by: Lucas Manuel Rodriguez <lucas@fleetdm.com>
Co-authored-by: Roberto Dip <rroperzh@gmail.com>
2024-07-17 16:07:59 -04:00
Luke Heath
d20ccd65d7
Run workflow on push to branches beginning the minor- (#20549) 2024-07-17 12:31:12 -07:00
Noah Talerman
02f4bfb794
Dogfood: best practice teams (#20359) 2024-07-15 16:22:15 -07:00
Lucas Manuel Rodriguez
2875a9dbb8
Fixes to fleetctl debug connection and TLS certs documentation (#20166)
#6085

- [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] Added/updated tests
- [x] Manual QA for all new/changed functionality
2024-07-09 14:04:23 -03:00
Victor Lyuboslavsky
4a09cd1ce8
Validate base-fleetd daily (#20196)
#19126
Validate base-fleetd daily

Workflow run: https://github.com/fleetdm/fleet/actions/runs/9781375393
2024-07-09 09:54:01 -05:00
Roberto Dip
01030cbde6
test approach for running integration suite in parallel (#20085)
for #18297

# 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
2024-07-01 11:37:12 -03:00
Victor Lyuboslavsky
6015717838
Releasing new fleetd-base flow (#20093)
#19182
Releasing new fleetd-base flow
- The flow has been QA'd
- The flow puts the generated files into new directories (`stable` and
`archive`), so risk is low
2024-06-28 12:57:14 -05:00
Dante Catalfamo
188b52c979
Generate a summary on any go-test failure, add context after panic (#20066)
Stops developers from having to manually grep through the logs to find
the failing test
2024-06-27 15:39:23 -04:00
Lucas Manuel Rodriguez
3c02ac1278
Add github action to check the auto-generated documentation is up-to-date (#20025)
Oncall project to keep auto-generated documentation up-to-date.
- Auto-generated documentation from Golang source code.
- Auto-generated table JSON schema from yaml files in `schema/tables/`
(we currently remind the developer to run the sails.js commands in the
PR or ask Eric to do it).

Sample of the failure if the developer forgot to run `make generate-doc`
(similar to `make test-db-schema`):
![Screenshot 2024-06-26 at 2 41
23 PM](https://github.com/fleetdm/fleet/assets/2073526/9bbfee24-f5cc-4ce5-bc90-5eb94231c24c)
2024-06-27 06:35:09 -03:00
Lucas Manuel Rodriguez
3a64c83145
Release fleetd 1.27.0 (#19933)
- **Release fleetd 1.27.0**

---------

Co-authored-by: George Karr <georgekarrv@users.noreply.github.com>
2024-06-21 16:00:13 -03:00
Lucas Manuel Rodriguez
addb665c8b
Dogfood iPhones team GitOps (#19897)
Changes to dogfood GitOps for #18866.
2024-06-20 17:13:24 -03:00
Luke Heath
0002b178ff
Schedule nightly gitops run in dogfood (#19816) 2024-06-17 14:12:17 -07:00
Victor Lyuboslavsky
d3b9bade74
Keep all fleetd-base and fleetd-chrome artifacts. (#19749)
#19182 and #19111

- Upload and keep all fleetd-base and fleetd-chrome artifacts
- Code sign fleetd-base.msi
- Verify checksums and try installing fleetd-base packages

These changes will apply the fleet-base workflow to
download-testing.fleetdm.com, and another PR will change to the
production endpoint (download.fleetdm.com) after QA.

## fleetd-base
Successful fleetd-base workflow run:
https://github.com/fleetdm/fleet/actions/runs/9522282299

New meta files will be in the `stable` directory:
- https://download-testing.fleetdm.com/stable/meta.json
- https://download-testing.fleetdm.com/stable/tuf-meta.json

The files in the root directory will no longer be updated for backward
compatibility.

## fleetd-chrome
Successful fleetd-chrome beta run:
https://github.com/fleetdm/fleet/actions/runs/9552391075/job/26328861033
2024-06-17 15:49:06 -05:00
Robert Fairburn
dcd551f671
initial osquery docker sidecar and osquery local builds (#19641) 2024-06-12 13:25:07 -05:00
Lucas Manuel Rodriguez
606635b131
Release fleetd 1.26.0 (#19673)
- **Release fleetd 1.26.0**

---------

Co-authored-by: Sharon Katz <121527325+sharon-fdm@users.noreply.github.com>
2024-06-11 19:51:57 -03:00
Roberto Dip
a24e665c13
Lock goreleaser version in CI to ~> 1 (#19529)
A few days ago, a new major version of goreleaser was published, which
is currently breaking our workflows:

```
⨯ command failed                                   error=unknown flag: --rm-dist
```

This locks the version to a max satisfying semver under 1 until we have
time to update to the new major.
2024-06-05 13:35:28 -03:00
Victor Lyuboslavsky
f761827850
Move CalculateAggregatedPerfStatsPercentiles reads to the replica (#19206)
Move CalculateAggregatedPerfStatsPercentiles reads to the replica
#18838

I manually tested the aggregated query stats change by using a read
replica.
https://github.com/fleetdm/fleet/blob/main/tools/mysql-replica-testing/README.md
- But set `master_delay=0` due to issue
https://github.com/fleetdm/fleet/issues/19272
- Run a saved query as a live query, and see that its stats in
`aggregated_stats` table are updated.


# Checklist for submitter
- [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] Added/updated tests
- [x] Manual QA for all new/changed functionality
2024-05-31 07:08:31 -05:00
JD
94be5c0a9c
Adds VM team to gitops (#19316)
Adds Virtual machines team to gitops. fleetdm/confidential#6762

---------

Co-authored-by: Noah Talerman <47070608+noahtalerman@users.noreply.github.com>
2024-05-29 11:19:24 -07:00
Lucas Manuel Rodriguez
a10befe657
Release fleetd 1.25.0 (#19203) 2024-05-22 14:38:24 -03:00
Victor Lyuboslavsky
d1b1c181f1
Refactoring fleetd-chrome workflows to use R2 upload action (#19157)
Refactoring fleetd-chrome workflows to use the reusable R2 upload
action.
2024-05-21 09:23:03 -05:00
Victor Lyuboslavsky
550f08d62d
Generate plist for fleetd-base pkg. (#19112)
#19111 
Generate plist for fleetd-base pkg.

Currently configured for TESTING. Uploaded file:
https://download-testing.fleetdm.com/fleetd-base-manifest.plist
2024-05-17 13:48:53 -05:00
Victor Lyuboslavsky
4d671e63d4
fleetd-chrome v1.3.1 release (#19087)
#18811

* Fixed bug where fleetd-chrome sent multiple read requests to Fleet
server at the same time.

* Improved console log output messages when Fleet server is down.
2024-05-16 16:39:36 -05:00
Lucas Manuel Rodriguez
fd323a3909
Catch FAIL and panic: runtime error in CI (#19009)
This is just a CI change to catch these other type of errors and display
them on the Slack message:

Instead of showing just `unknown, please check build URL`:
![Screenshot 2024-05-15 at 8 34
19 AM](https://github.com/fleetdm/fleet/assets/2073526/bd66def6-50de-4ee5-8ccd-17a7cf0741ae)
2024-05-15 10:01:26 -03:00
Lucas Manuel Rodriguez
b9d38c4b66
Bump osqueryd version to 5.12.2 (#18893) 2024-05-09 19:00:27 -03:00
Victor Lyuboslavsky
ed792e078f
Updated release-fleetd-base workflow to use production values. (#18887)
#16347 
Updated release-fleetd-base workflow to use production values.
2024-05-09 14:56:04 -05:00
Victor Lyuboslavsky
c2df15dfd1
In GitOps workflow, do dry run on pull request. (#18854) 2024-05-08 14:58:56 -05:00
Dante Catalfamo
2c6e7c71a8
Zsh script support (#18411)
#17321
2024-04-30 14:38:56 -04:00
Tim Lee
0a27843b83
bump golangci-lint to 1.55.2 (#18604) 2024-04-30 08:59:14 -06:00
Victor Lyuboslavsky
bf0f6ec55a
Added release-fleetd-base workflow. (#18194)
#16347

New GitHub workflow.
- Uses `tools/tuf/status/tuf-status.go` to check the latest
osquery/orbit/fleet-desktop versions
- Uploads https://download-testing.fleetdm.com/meta.json to keep track
of versions
- macOS: https://download-testing.fleetdm.com/fleetd-base.pkg
- Windows: https://download-testing.fleetdm.com/fleetd-base.msi

This version creates and uploads macOS and fleetd base packages to
https://download-testing.fleetdm.com

QA instructions updated in the issue. After QA, we will update the
workflow to upload to https://download.fleetdm.com
2024-04-29 11:51:40 -05:00
Victor Lyuboslavsky
9ff682e0ff
Windows orbit.exe and fleet-desktop.exe are now signed. (#18201)
#17187 

Windows orbit.exe and fleet-desktop.exe are now signed.

Signed fleet-desktop.exe artifact at:
https://github.com/fleetdm/fleet/actions/runs/8834788809
Signed orbit.exe artifact at:
https://github.com/fleetdm/fleet/actions/runs/8834817940

For signing fleetctl.exe, opened a new issue:
https://github.com/fleetdm/fleet/issues/18540
2024-04-26 12:46:23 -05:00
Roberto Dip
7edd756237
increase timeout for the installation of Colima (#18533)
saw many jobs timeout and fail. Optionally, should we use `macos-12`
that comes with Colima pre-installed? can make that change as well, just
lmk
2024-04-25 13:10:14 -03:00
Roberto Dip
e4ebe31971
use Colima for CI runners (#18495)
The `macos-latest` runner is using `macos-14` + ARM now, which was
causing the Docker install to fail.

I switched to `macos-13` since seems to be a cheap x86_64 alternative
and figured what was the problem with Colima so we don't have to deal
with Docker anymore.
2024-04-24 08:38:07 -03:00
Roberto Dip
d677546e04
sign fleetctl for macOS during releases (#16670)
possible approach to solve #16664

---------

Co-authored-by: Luke Heath <luke@fleetdm.com>
2024-04-19 14:36:30 -03:00
Lucas Manuel Rodriguez
83342c4042
Add reviewers to automated PRs (#18390)
I was thinking on adding `team-reviewers: go`, but there's the following
note on the github's action repository, so let's start simple:
![Screenshot 2024-04-18 at 9 30
51 AM](https://github.com/fleetdm/fleet/assets/2073526/9477038a-320d-4aa0-860b-d18faf962f03)
2024-04-18 10:51:07 -03:00
Lucas Manuel Rodriguez
78fc11dd4e
Release fleetd 1.24.0 (#18378)
- **Release fleetd 1.24.0**
2024-04-17 18:37:53 -03:00
Victor Lyuboslavsky
ba6315f27a
Setting DOGFOOD_WORKSTATIONS_CANARY_CALENDAR_WEBHOOK_URL (#18298)
To fix failing gitops flow.

Related to https://github.com/fleetdm/confidential/issues/6015

Needs DOGFOOD_WORKSTATIONS_CANARY_CALENDAR_WEBHOOK_URL GitHub secret if
not set already.
2024-04-16 10:19:58 -05:00
Rachael Shaw
160448f7d3
Add spaces after emojis in team names (#18249)
Kind of a silly PR 😅 
The team names used to have spaces after the emojis and I thought it
looked a little more polished 💅
2024-04-15 17:52:15 -05:00
Joanne Stableford
419634d368
Configure google calendar integration in dogfood with API key (#18220)
Related: https://github.com/fleetdm/confidential/issues/6015

---------

Co-authored-by: Noah Talerman <47070608+noahtalerman@users.noreply.github.com>
2024-04-12 16:54:41 -04:00
Lucas Manuel Rodriguez
01f9963856
Add summary to test-go.yml Slack message when it fails (#18188)
This is to clearly see what is failing. (Looking through the thousands
of log lines via the URL is tedious.)

![Screenshot 2024-04-10 at 1 25
31 PM](https://github.com/fleetdm/fleet/assets/2073526/b64edc4b-6c88-4385-80e2-7babb1d4f3e5)
2024-04-10 18:04:26 -03:00
Lucas Manuel Rodriguez
1b35ffd0ef
Release fleetd 1.23.0 (#18133) 2024-04-09 15:15:06 -03:00
Brock Walters
8d0d309a1f
Update macos-install-wine.sh with codesign warning (#17982)
The Wine developer does have an Apple Develeoper certificate but the
"Wine Stable" app bundle is not code-signed or notarized post-install &
disables Gatekeeper for the install. This adds a warning to the script
user about the app not being signed. post-install

---------

Co-authored-by: Victor Lyuboslavsky <victor.lyuboslavsky@gmail.com>
2024-04-05 16:14:57 -04:00
Lucas Manuel Rodriguez
3d260fa9ab
Bump osqueryd version to 5.12.1 (#18028)
Bumping version of osqueryd for releasing 5.12.1 to the `edge` channel.
2024-04-03 10:57:28 -03:00
Roberto Dip
8dac783c50 increase TUF expiration warning by one day
hopefully this will get obsolete before we have time to use it, but just
in case this increments the warning time to give us more leeway.
2024-04-02 11:21:17 -03:00
Martin Angers
8253e77264
Enable release device: copy global settings to new teams created via puppet (#17842) 2024-03-26 08:15:57 -04:00
StepSecurity Bot
80335d88d1
[StepSecurity] Apply security best practices (#17811) 2024-03-22 16:19:11 -05:00
Luke Heath
6ebc308eb4
[StepSecurity] ci: Harden GitHub Actions (#17780) 2024-03-22 15:32:23 -05:00
Luke Heath
38ea8db7cd
Set GitHub workflow DRIs (#17777) 2024-03-21 16:04:53 -05:00
StepSecurity Bot
8ae24ac4a9
[StepSecurity] ci: Harden GitHub Actions (#17767)
## Summary

This pull request is created by
[StepSecurity](https://app.stepsecurity.io/securerepo) at the request of
@lukeheath. Please merge the Pull Request to incorporate the requested
changes. Please tag @lukeheath on your message if you have any questions
related to the PR.
## Security Fixes

### Least Privileged GitHub Actions Token Permissions

The GITHUB_TOKEN is an automatically generated secret to make
authenticated calls to the GitHub API. GitHub recommends setting minimum
token permissions for the GITHUB_TOKEN.

- [GitHub Security
Guide](https://docs.github.com/en/actions/security-guides/automatic-token-authentication#using-the-github_token-in-a-workflow)
- [The Open Source Security Foundation (OpenSSF) Security
Guide](https://github.com/ossf/scorecard/blob/main/docs/checks.md#token-permissions)
### Pinned Dependencies

GitHub Action tags and Docker tags are mutable. This poses a security
risk. GitHub's Security Hardening guide recommends pinning actions to
full length commit.

- [GitHub Security
Guide](https://docs.github.com/en/actions/security-guides/security-hardening-for-github-actions#using-third-party-actions)
- [The Open Source Security Foundation (OpenSSF) Security
Guide](https://github.com/ossf/scorecard/blob/main/docs/checks.md#pinned-dependencies)


## Feedback
For bug reports, feature requests, and general feedback; please email
support@stepsecurity.io. To create such PRs, please visit
https://app.stepsecurity.io/securerepo.


Signed-off-by: StepSecurity Bot <bot@stepsecurity.io>

Signed-off-by: StepSecurity Bot <bot@stepsecurity.io>
2024-03-21 15:56:42 -05:00
Eric
36dafbd969
Update vulnerability dashboard deploy action & update github maintainers in custom.js (#17602)
Changes:
- Updated the deploy-vulnerability-dashboard workflow to use the correct
variables for the Heroku steps.
- Added GitHub maintainers to `website/config/custom.js` for the GitHub
workflows related to the vulnerability dashboard.
2024-03-21 11:58:45 -05:00
Victor Lyuboslavsky
9ae36d9a1d
Emojis back on Dogfood team names. Need to rename in UI before merging. (#17605)
Emojis are back on Dogfood team names. Need to rename the teams in UI
before merging. Otherwise, GitOps will simply create new teams.

Co-authored-by: Noah Talerman <47070608+noahtalerman@users.noreply.github.com>
2024-03-19 16:18:10 -05:00
Eric
b1945b2128
Add fleet-vulnerability-dashboard repo to ee/ folder (#17428)
Closes: https://github.com/fleetdm/confidential/issues/4057

Changes:
- Added the contents of the fleet-vulnerability-dashboard repo to
ee/vulnerability-dashboard
- Added a github workflow to deploy the vulnerability dashboard on
Heroku
- Added a github workflow to test changes to the vulnerability-dashboard
- Updated the website's custom configuration to enable
auto-approvals/review requests to files in the
ee/vulnerability-dashboard folder
2024-03-13 13:06:11 -05:00
Gabriel Hernandez
55c7f1e886
require a specific node and yarn version (#17205)
Adds a minimum supported node and yarn version to the project. 

Currently if you are on an unsupported version of node or yarn, there is
no messaging telling you that is the issue. The build just fails, and
you are left to figure out it's because of your node version. With this
change, it will be much clearer why any of the node required commands
(e.g. make deps, make generate-dev, make lint-js, make test-js) are not
working, and it will tell you exactly which minimum version of node or
yarn you need.

**After the console error is clear about using an unsupported node
version**


![image](https://github.com/fleetdm/fleet/assets/1153709/4f14bbf0-520e-45bc-911f-071554a996c4)


- [x] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
- [x] Manual QA for all new/changed functionality
2024-03-13 12:45:28 +00:00
Zach Wasserman
549c66cb32
Generate osqueryd targets for 5.12.0 (#17403) 2024-03-06 10:46:27 -08:00
Luke Heath
4015a897da
Update trivy scan options (#17357) 2024-03-04 16:36:17 -06:00
Luke Heath
960a7a350a
Remove tfsec workflow (#17354) 2024-03-04 16:13:41 -06:00
Luke Heath
0fc941fc2d
Update Trivy vulnerability scan workflow (#17353) 2024-03-04 15:29:32 -06:00
Victor Lyuboslavsky
7a20da1f2f
Moving mdm_profiles to it-and-security/lib/mdm_profiles (#17268)
Moving mdm_profiles to it-and-security/lib/mdm_profiles so that they are
together with other gitops config files.

---------

Co-authored-by: Noah Talerman <noahtal@umich.edu>
2024-03-01 15:18:54 -06:00
Roberto Dip
456bc3c9a9
puppet module: prevent running match call if a preassignment failed (#17175)
for #16954

# 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] Added/updated tests
- [x] Manual QA for all new/changed functionality
2024-02-28 19:15:41 -03:00
Victor Lyuboslavsky
f36b7d4d6d
Use gitops with dogfood. (#17098)
#17043

Set up dogfood to use gitops. I copied the current dogfood
configs/policies/queries into the gitops flow.

Successful workflow run:
https://github.com/fleetdm/fleet/actions/runs/8023101797/job/21918883543?pr=17098

---------

Co-authored-by: Noah Talerman <noahtal@umich.edu>
2024-02-28 10:50:10 -06:00
Lucas Manuel Rodriguez
762cd076d7
Start release of fleetd v1.22.0 (#17139)
#17053 & #17054
2024-02-26 09:36:53 -03:00
Luke Heath
fb44217467
Update codeql workflow (#17067) 2024-02-22 12:27:52 -06:00
Lucas Manuel Rodriguez
4d1467c9b3
Upload only orbit executable to ease future automation and reduce size of artifacts (#17024)
Reasons:
- Smaller artifacts on
https://github.com/fleetdm/fleet/actions/workflows/goreleaser-orbit.yaml
(used when releasing fleetd).
- Less error prone (human performing the release has to be careful to
not pick the macOS amd64 or arm64 version of orbit, and pick the
universal one)
- Moves a small step forward to #16131
2024-02-21 20:12:18 -03:00
Lucas Manuel Rodriguez
763c137b67
[On-call improve docs] Versions of currently released fleetd components on Fleet's TUF (#16698)
Should tackle #14026.

This will run a daily Github action and create a PR if there's a new
update in our TUF on `edge` or `stable`.

E.g. somebody releases 1.22.0 fleetd to `stable` on our TUF and the next
day this automation runs and will create a PR that updates the versions
in `orbit/TUF.md` (or they can run the workflow manually).

Am happy to amend the shape of `orbit/TUF.md` (or we can iterate later).
2024-02-15 15:30:29 -03:00
Roberto Dip
efe68e2c66
fix puppet tests and add CI workers (#16529)
for #16059
2024-02-05 09:50:18 -03:00
Lucas Manuel Rodriguez
4492ae3b24
Start fleetd 1.21.0 release (#16464)
#16422
2024-01-30 18:27:35 -03:00
Victor Lyuboslavsky
ed7ab1e428
Fixed macOS MSI package -- using local wine and wix (#16307)
New flow for `fleetctl --package --type=msi` on macOS using arm64
processor (M1, M2, etc.)
- wine must be installed locally. See
./orbit/tools/build/install-wine-macos.sh and
https://wiki.winehq.org/MacOS for reference.
- --local-wix-dir can be used to point to a local Wix3 installation
(using this switch requires a current Fleet EE subscription)
#15463 

PR for docs: https://github.com/fleetdm/fleet/pull/16459

# 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

---------

Co-authored-by: Noah Talerman <47070608+noahtalerman@users.noreply.github.com>
2024-01-30 11:08:21 -06:00
Lucas Manuel Rodriguez
1afb015f6c
Test DB migrations with Percona XtraDB MySQL server 5.7.25 (#16320)
#15881

This PR adds a script to test DB migrations with Percona XtraDB 5.7.25.

PS: To run this test before we merge this PR to `main` you will need to
change step 2 (`Make sure to be on latest main`), instead of `main` use
this branch `15881-test-migrations-with-percona`.
2024-01-29 14:21:37 -03:00
Victor Lyuboslavsky
30f3d585f4
Updated fleetd-chrome to use non-beta location. (#16295) 2024-01-24 11:10:24 -06:00
Victor Lyuboslavsky
3669089a11
Re-enabling tests in fleetd release flow. (#16229)
#16165 

Fixed test by adding missing dependencies. Added back test to
fleetd-chrome release workflows.
2024-01-22 09:54:16 -06:00
Zach Wasserman
25d36c2c55
Remove test step in fleetd-chrome release (#16143) 2024-01-16 12:11:12 -08:00
Zach Wasserman
14dd650920
Fix fleetd-chrome release workflows (#16142)
Use `npm test` instead of `npm run test`.
2024-01-16 12:04:26 -08: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
Eric
43f21baa86
Website: Update script to create GH issues for rituals in YAML files. (#15752)
Closes: #14246

Changes: 
- Added a new key to the rituals YAML configuration: `autoIssue.repo`.
This value should be a string that is the name of the GH repo that
issues for the ritual should be created in.
- Updated ritual validation in `build-static-content`.
- Added support for the "monthly" ritual frequency for rituals with an
`autoIssue` value.
- Updated the `create-issues-for-todays-rituals` script to create GitHub
issues for rituals.

---------

Co-authored-by: Mike McNeil <mikermcneil@users.noreply.github.com>
Co-authored-by: Sam Pfluger <108141731+Sampfluger88@users.noreply.github.com>
2024-01-15 12:53:53 -06:00
Roberto Dip
95b1c0df62
add automation to check timestamp.json and send slack notification (#16012)
proposal/idea to check once a day if `timestamps.json` is expired and
send a slack notification if it expires on the same day or it already
expired.
2024-01-10 17:06:52 -03:00
Lucas Manuel Rodriguez
6001d02e3b
Update fleetd CHANGELOG for the 1.20.0 release (#16000) 2024-01-10 13:55:19 -03:00
Lucas Manuel Rodriguez
4627a92447
Move external dependency osquery-in-a-box to monorepo (#15871)
#15563 

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

Tested by running the following:

If the changes haven't been merged to `main`:
```sh
fleetctl preview --preview-config 15563-move-external-dep-osquery-in-a-box-to-monorepo
fleetctl preview stop
fleetctl preview reset
```
If the changes were already merged to `main`:
```sh
fleetctl preview 
fleetctl preview stop
fleetctl preview reset
```
2024-01-10 11:45:52 -03:00
Roberto Dip
edaa7acac3
lock in macOS version for Fleet Desktop workers (#16009)
Implementing a safety measure to prevent issues like #15910 in
production.

Setting the macOS version explicitly avoids unexpected changes in the
builder runtime, ensuring the Fleet Desktop executable remains
compatible.

As of this commit, 'macos-latest' refers to 'macos-12'. We're aligning
the worker to this version, although building on macOS 13.x (presently
in GitHub workers' beta) should also be viable.
2024-01-10 11:33:48 -03:00
Victor Lyuboslavsky
14d5c9094b
fleetd-chrome unit tests (#15918) 2024-01-04 21:41:24 -06:00
Zach Wasserman
3244610ed2
Build osquery targets for 5.11.0 (#15892) 2024-01-03 15:03:59 -08:00
Lucas Manuel Rodriguez
1bdd6a98a6
Bump Fleet Desktop version to 1.19.0 (#15819) 2023-12-22 15:16:02 -03:00
Robert Fairburn
255bcd8002
GeoLite2 addon for Dogfood and Cloud (#15643) 2023-12-14 13:22:11 -06:00
Joanne Stableford
654783b715
Update min macOS for fleetctl-workstations to 14.2 (#15622) 2023-12-13 13:08:31 -05:00
Roberto Dip
6353849004
update Go to 1.21.5 (#15592)
for https://github.com/fleetdm/fleet/issues/15584

# 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
2023-12-13 13:57:12 -03:00
Joanne Stableford
fb25b5c564
Update min macOS for workstation canary group to 14.2 (#15588) 2023-12-13 11:28:39 -05:00
Martin Angers
fb01e30f27
Require a custom Clone for cacheable items, add tooling and CI check to help catch issues (#15458) 2023-12-06 14:34:22 -05:00
Tim Lee
e7132454ee
CI fix - Use bash in Start tunnel step (#14872) 2023-11-21 16:15:17 -07:00
Tim Lee
0557f10ac5
14729 smtp settings validation for TLS (#15029) 2023-11-21 11:48:21 -07:00
Eric
ed7c51c9c9
Add --coverpkg flag to go test in the Makefile (#15153)
Related to: #10209

Changes:
 - Updated the go test in the Makefile to have the `--codepkg` flag.
- Added a newline to the `test-go` GH workflow to trigger a run for this
PR


> Note: I'm creating this as a draft PR to see the results of the "Test
Go" workflow
2023-11-20 17:01:19 -06:00
Joanne Stableford
c7af163577
Update fleetctl-workstations to min macOS 14.1.1 (#15209) 2023-11-20 12:50:52 -05:00
Joanne Stableford
f02fa91576
Update fleetctl-workstations-canary to macOS 14.1.1 (#15208) 2023-11-20 12:48:02 -05:00
Joanne Stableford
7945c17a39
Update name for workflow (#15203)
Update name to "Apply latest configuration profiles and macOS updates"
Because it used to say update MDM (workflow is for more than MDM), and
keeps it in line with workstation group.
2023-11-20 12:37:42 -05:00
Lucas Manuel Rodriguez
809cc5e2d3
Bump Fleet Desktop version to v1.18.3 (#15123) 2023-11-14 07:07:55 -03:00
Zach Wasserman
4dff885b16
Generate targets for osquery 5.10.2 (#14828) 2023-11-07 14:32:41 -03:00
Lucas Manuel Rodriguez
a8bf79193f
Update Fleet Desktop to 1.18.2 (#14976) 2023-11-07 14:32:20 -03:00
Luke Heath
91db043094
Use go variable to set version in workflows (#14890) 2023-11-03 09:42:27 -05:00
Sharon Katz
ab7717009e
Add Kolide osquery tables 2023-11-01 20:11:35 -06:00
Robert Fairburn
7b31344988
Dogfood github actions and monitoring module fixes (#14875)
These items fix the github action for use with the updates to the
monitoring module.

Additionally there were some changes needed to the monitoring module to
make it behave inside the GH action.

Once this is approved/merged, the new tag for them monitoring module
will be created as `tf-mod-addon-monitoring-v1.1.1`
2023-11-01 16:34:13 -05:00
Martin Angers
0d3ba2534b
Fix checking for hosts FK when no migrations files were modified (#14866) 2023-11-01 14:41:43 -04:00
Tim Lee
203fdb51ba
Prevent hosts foreign key migrations (#14290) 2023-11-01 09:04:46 -06:00
Zach Wasserman
dbd84cc366
Generate targets for osquery 5.10.1 (#14413) 2023-10-31 10:20:20 -07:00
Eric
2216132267
Update the deploy-fleet-website workflow (#14756)
Clsoes: https://github.com/fleetdm/fleet/issues/14162

Changes:
- Added two steps to the `deploy-fleet-website` workflow to prevent
errors when pushing to the Heroku git repo:
1. The first step runs a command to install the `heroku-repo` plugin in
the Heroku CLI.
2. The second step runs a command to reset the Heroku git repo for the
Fleet website. (This has no impact on the live Heroku app)
2023-10-26 17:24:56 -05:00
dependabot[bot]
4aa1301550
Bump ossf/scorecard-action from 2.1.2 to 2.3.1 (#14723) 2023-10-24 14:25:02 -05:00
Luke Heath
23d8087401
Publish on push to prepare and patch branches (#14648) 2023-10-23 11:41:41 -05:00
Roberto Dip
ad9e30f120
Update Go to v1.21.3 (#14634)
for #14633
2023-10-19 10:01:05 -03:00
dependabot[bot]
12c46af3b2
Bump fleetdm/fleet-mdm-gitops from 1.0.7 to 1.1.0 (#14453) 2023-10-11 13:52:31 -05:00
Roberto Dip
641856c1dc
trigger orbit build on version bump (#14315)
The
[goreleaser-orbit.yaml](https://github.com/fleetdm/fleet/actions/workflows/goreleaser-orbit.yaml)
workflow tends to timeout up to 9-10 times before successfully building
a macOS binary.

We have been using this workflow as a back-up, but it requires doing the
version bump and manually triggering the workflow, which can be error
prone.

This change follows the `workflows/generate-desktop-targets.yml` to
trigger the workflow when the workflow file itself is modified.
2023-10-05 09:52:10 -03:00
Roberto Dip
5a9c0af652
Bump Fleet Desktop version to 1.17.0 (#14179) 2023-09-29 10:02:08 -03:00
Roberto Dip
3bf6f18c16
bump Orbit version to 1.17.0 (#14183) 2023-09-29 10:01:46 -03:00
Luke Heath
d809858f4e
Revert docker publish filtering on pull requests (#14125) 2023-09-26 12:02:50 -05:00
Luke Heath
1e1e28791f
Document milestone release ritual (#13932) 2023-09-25 14:35:36 -05:00
Lucas Manuel Rodriguez
fe7d9f9f8b
Allow manual run of docker publish CI action (#14051)
I need this change to load test #13926.

Due to recent changes we are not triggering a build on every
branch/commit pushed.
For load testing we need a way to trigger a build manually.
2023-09-21 15:14:43 -03:00
Luke Heath
72b3a6b7bb
Remove merge gatekeeper workflow (#13989) 2023-09-18 16:10:09 -05:00
Luke Heath
043976d250
Use GITHUB_TOKEN in merge gatekeeper (#13980) 2023-09-18 13:10:58 -05:00
Luke Heath
9debc2fd2c
Do not skip push commits on docker publish workflow (#13960)
Co-authored-by: Roberto Dip <me@roperzh.com>
2023-09-15 14:32:13 -05:00
Luke Heath
7815a7f695
Gatekeeper should ignore handbook and website PRs (#13948) 2023-09-15 09:57:28 -05:00
Luke Heath
798457d9aa
Do not run docker publish workflow on fork PRs (#13918) 2023-09-13 16:34:39 -05:00
Roberto Dip
ea6b59f179
upgrade Go version to 1.21.1 (#13877)
For #13715, this:

- Upgrades the Go version to `1.21.1`, infrastructure changes are
addressed separately at https://github.com/fleetdm/fleet/pull/13878
- Upgrades the linter version, as the current version doesn't work well
after the Go upgrade
- Fixes new linting errors (we now get errors for memory aliasing in
loops! 🎉 )

After this is merged people will need to:

1. Update their Go version. I use `gvm` and I did it like:

```
$ gvm install go1.21.1
$ gvm use go1.21.1 --default
```

2. Update the local version of `golangci-lint`:

```
$ go install github.com/golangci/golangci-lint/cmd/golangci-lint@v1.54.2
```

3. (optional) depending on your setup, you might need to re-install some
packages, for example:

```
# goimports to automatically import libraries
$  go install golang.org/x/tools/cmd/goimports@latest

# gopls for the language server
$ go install golang.org/x/tools/gopls@latest

# etc...
```
2023-09-13 15:59:35 -03:00
Lucas Manuel Rodriguez
811e38c0f2
Add build info to orbit macos build action (#13796) 2023-09-07 13:23:38 -03:00
George Karr
899cb38f22
Allow build orbit to run manually (#13795) 2023-09-07 11:32:05 -03:00
Luke Heath
6130a7bbd7
Bump Fleet Desktop version to 1.16.0 (#13753) 2023-09-06 12:46:47 -05:00
Lucas Manuel Rodriguez
9a3b4cd365
Attempt to stabilize the broken integration.yml workflow (#13653)
#13547

This is an attempt to stabilize this workflow that has been broken for
4-6 months.

# Issue and proposed solution

Github runner VMs re-use UUIDs, which is not supported by Orbit (this
causes a host to be enrolled as two hosts in Fleet), thus, until that is
fixed in https://github.com/fleetdm/fleet/issues/8021 I propose we
stabilize this workflow by testing all `stable` channels only (which is
better than having the build broken all the time IMO).

Once https://github.com/fleetdm/fleet/issues/8021 is fixed we can re-add
the edge channels.
2023-09-01 12:25:17 -03:00
Roberto Dip
5ad734d617
upgrade go to v1.19.12 (#13617) 2023-08-31 13:49:24 -05:00
Luke Heath
204f082fe5
Pin all workflow actions versions by commit (#13462) 2023-08-31 12:09:21 -05:00
Luke Heath
0541618aeb
Add merge gatekeeper action (#13546) 2023-08-31 11:11:46 -05:00
Lucas Manuel Rodriguez
4654450bc8
Fix expected number of hosts for the Test fleetctl preview workflow (#13605)
Similar to the other we fixed recently the same way:
https://github.com/fleetdm/fleet/pull/13329
2023-08-30 17:45:41 -03:00
Lucas Manuel Rodriguez
f701dc55ed
CI: Add shell cmd for windows runner and add some debug logs to help troubleshoot (#13592)
After @rfairburn made the DNS change the clouldflared tunnel started
working again (after months of being broken).

#13547

Run: https://github.com/fleetdm/fleet/actions/runs/6025182774

This PR adds some fixes to the two workflows that make use of
cloudflared.
There are still some issues to fix but these are some changes needed to
continue/help troubleshooting.
2023-08-30 15:49:47 -03:00
KanchiMoe
dece8e179c
Upversion markdown-link-check Github action (#12026) 2023-08-22 13:57:45 -07:00
Lucas Manuel Rodriguez
cafbe161a1
Bump fleet desktop version to 1.15.0 to generate artifacts and release (#13393) 2023-08-18 15:23:38 -05:00
Zach Wasserman
4ecc7db6d6
Complete removal of Cypress (#13389)
Remove the last of the dependencies and configuration around Cypress
since we no longer use it for testing.
2023-08-18 11:06:12 -06:00
Lucas Manuel Rodriguez
f9d6cf986b
Fix expected number of hosts in fleetctl-preview-latest workflow (#13329)
#13182

[This PR](https://github.com/fleetdm/osquery-in-a-box/pull/18) in the
osquery-in-a-box repository recently added a new host to the simulated
host list which broke the CI job in the fleetdm/fleet repository.

PR run with this branch:
https://github.com/fleetdm/fleet/actions/runs/5866786432

PS: One of the reasons we had this osquery-in-a-box repository outside
the monorepo was to not break customers using `fleetctl preview`. But
now that we have Fleet Sandbox and we don't encourage users to use
`fleetctl preview`:
1. Does it  make sense to have the separate repository?
2. Does it make sense to continue supporting this workflow in CI?
2023-08-15 14:16:07 -03:00
Luke Heath
3dfe4c74bb
Update action version (#13136) 2023-08-03 14:27:32 -07:00
Joanne Stableford
79b8dd8e8f
Update fleetctl-workstations to min macOS 13.5 (#13109) 2023-08-02 18:38:11 -04:00
Joanne Stableford
ea934424ae
Update fleetctl-workstations-canary min OS to macOS 13.5 (#13108) 2023-08-02 18:22:46 -04:00
Roberto Dip
d9de78e9fc
upgrade Go version to 1.19.11 (#12902) 2023-07-26 11:09:22 -07:00
Eric
63eca92536
Change Node version used in Github workflows, add build-storybook step to website test (#12748)
Context: The "Deploy Fleet website" workflow is currently failing
because the `build-storybook` step requires Node v16.
<img width="1013" alt="image"
src="https://github.com/fleetdm/fleet/assets/7445991/7681e11e-a94f-4a0b-8cd8-baa1ef5a37d8">

Changes:
- Changed the `deploy-fleet-website` and `test-website` workflows to use
Node 16.
- Updated the version of `actions/setup-node` to v3 to use node 16.
- added the `--legacy-peer-deps` flag to the `npm install` in the
build-storybook step
- Added a step to build the storybook to the `test-website` workflow.
- Updated the `test-website` workflow to run when the workflow file is
changed.
2023-07-13 13:11:20 -05:00