Commit graph

615 commits

Author SHA1 Message Date
Eric
43cbf8d7ff
Website: fix event times on GitOps workshops page (#39067)
Changes:
- Updated the view action for the /gitops-workshop page to use UTC
timestamps when building the event details for that page.
2026-01-30 10:15:06 -06:00
Sam Pfluger
54ba38716c
Change linkedinUrl requirement to optional (#39033)
@eashaw trying to fire this when I don't have a LinkedIn. Any
objections?

---------

Co-authored-by: Eric <eashaw@sailsjs.com>
2026-01-29 18:01:24 -06:00
Eric
cc865b2bcd
Website: update sitemap and new pages (#39009)
Changes:
- Added new(/missing) pages to the website's sitemap
- Added the signup modal to comparison pages and the GitOps workshop
page.
2026-01-29 10:29:55 -06:00
Eric
5160095f78
Website: Add Fleet GitOps page (#38974)
Changes:
- Added a Fleet GitOps page (/fleet-gitops)
- Added a link to the new page in the "Solutions" dropdown to the
website's header navigation

---------

Co-authored-by: Mike Thomas <78363703+mike-j-thomas@users.noreply.github.com>
2026-01-29 10:08:42 +09:00
Eric
cf2411e40a
Website: update article category name (#38900)
Changes:
- updated the name of the catch all article category on the website
(blogs » blog)
2026-01-28 10:01:57 -06:00
Jahziel Villasana-Espinoza
670f7dbdb5
fail gracefully when profile is invalid (#38899)
<!-- Add the related story/sub-task/bug number, like Resolves #123, or
remove if NA -->
**Related issue:** Resolves #35211 

# Checklist for submitter

- [x] QA'd all new/changed functionality manually
2026-01-28 10:57:27 -05:00
Eric
e65035a5d9
Website: add comparison article template and comparison article (#38893)
Closes: https://github.com/fleetdm/confidential/issues/13291

Changes:
- Updated the `build-static-content` script to add support for a new
article category: `compare`
- Added a new template page for comparison articles
- Added a Fleet vs. Jamf comparison article

---------

Co-authored-by: Mike Thomas <78363703+mike-j-thomas@users.noreply.github.com>
2026-01-28 22:04:09 +09:00
Eric
cf8b461e5d
Website: add GitOps workshop landing page. (#38812)
Changes:
- Added a landing page that has links to upcoming citops workshops, and
a link to a form where users can request a GitOps workshop.
- Updated the contact page to display a GitOps workshop request form for
users who are linked to it from the GitOps workshop landing page.
- Added `deliver-gitops-workshop-request`, an action that sends details
of GitOps workshop request submissions to Salesforce.
- Added a new helper that creates campaign member objects in Salesforce.
- Added two new config variables used to get event details from the
Eventbrite API.
2026-01-27 22:18:46 +09:00
Eric
8f1f42a5c9
Website: Update GitHub webhook reviews (#38780)
Closes: https://github.com/fleetdm/fleet/issues/38750

Changes:
- Updated the website's GitHub webhook to not attempt to approve pull
requests opened by fleet-release
2026-01-26 12:16:48 -06:00
Eric
4cae77302a
Website: update article category page (#38707)
Related to: https://github.com/fleetdm/confidential/issues/13527

Changes:
- Changed the name of the /articles page to "Blogs"
- Updated the blogs category to exclude guides
- Added a link to /guides to the sidebar on article category pages
2026-01-23 16:48:43 -06:00
Eric
c4f8ded657
Website: Update values to match CRM picklist values (#38734)
Changes:
- Updated the accepted `intentSingal` values in the receive-from-clay
webhook and the createHistoricalEvent helper to match the picklist
values in Salesforce
- updated a "most recent/source channel details" value set in the
updateOrCreateContactAndAccount helper to match the picklist value in
Salesforce.
2026-01-23 15:35:33 -06:00
Eric
40107d247c
Website: Update deliver-contact-form-message (#38721)
Changes:
- Updated the `deliver-contact-form-message` action to run CRM helpers
and send the contact form email message in the background.
2026-01-23 15:31:30 -06:00
Eric
16e8d48396
Website: update deliver-contact-form-message (#38640)
Changes:
- Updated the deliver-contact-form-message action to attempt to
create/update CRM records before it sends a contact form email.
2026-01-22 11:48:48 -06:00
Eric
65f313d153
Website: update clay webhook inputs and historical event helper (#38601)
Closes: https://github.com/fleetdm/fleet/issues/38500

Changes:
- Added support for a `relatedCampaign` input to the receive-from-clay
webhook.
- Updated the `create-historical-event` helper to set `relatedCampaign`
on new historical event records (if provided)
2026-01-21 16:11:57 -06:00
Sam Pfluger
b32681937c
Consolidate event types in Salesforce integration (#38466) 2026-01-17 21:44:11 -06:00
Eric
8ca9abc5a0
Website: add attribution cookie and update CRM helper (#38324)
https://github.com/fleetdm/confidential/issues/13605

Changes:
- Updated the website's custom hook to set a `marketingAttribution`
cookie.
- Updated places where we use the update-or-create-contact-and-account
helper to pass in a requesting user's marketingAttribution cookie.
- Updated the update-or-create-contact-and-account helper to process
values from the marketingAttribution cookie.
2026-01-14 18:14:55 -06:00
Eric
19efc42871
Website: Update logged warnings in get-vpp-app-metadata (#38313)
Changes:
- Updated the get-vpp-app-metadata action to not log warnings if a Fleet
server sends a request with an invalid vpp token
2026-01-14 09:55:11 -06:00
Eric
390c149445
Website: prefix header in proxied apple request (#38312)
Changes:
- Updated the get-vpp-app-metadata action to prefix the provided vpp
token before it sends it to an Apple API
2026-01-14 09:34:48 -06:00
Eric
7f23411c94
Website: Update VPP proxy endpoints (#38203) 2026-01-13 18:06:10 -06:00
Eric
5219adb7b3
Website: update contact form for applications (#38125)
Changes:
- Updated the contact form to have a third form for job applications.
The form is only shown to users who visit the page with the `#apply`
hash.
- Added `deliver-application-submission` an action that sends
information from job application submissions to a zapier webhook.
- Updated the link to the contact form on the open positions template
page to link to /contact#apply
2026-01-12 11:01:02 -06:00
Mike McNeil
28aa259857
Automation: Add comment explaining provenance and retirement of GITHU… (#38142)
…B_BOTS_AND_MAINTAINERS list
fyi @Sampfluger88
2026-01-10 11:13:51 -06:00
Mike McNeil
0b0a81c2e6
Differentiate job applicants etc from demo requests (#38132)
Co-authored-by: Eric <eashaw@sailsjs.com>
2026-01-09 16:14:34 -06:00
Eric
b3bd4686a3
Website: Add VPP metadata proxy (#37997)
For https://github.com/fleetdm/fleet/issues/37261

Changes:
- Added a new database model: `FleetInstanceUsingVpp`
- Added `/api/vpp/v1/register`: An API endpoint that validates provided
Fleet license keys, creates a database record for the proxy
registration, and returns a generated secret used to authenticate
requests to the other VPP proxy endpoint
- Added `/api/vpp/v1/metadata/:storeRegion`: An API endpoint that
forwards requests to the
`https://api.ent.apple.com/v1/catalog/${storeRegion}/stoken-authenticated-apps`
Apple API with a token generated using Fleet's Apple developer
credentials.

---------

Co-authored-by: Ian Littman <iansltx@gmail.com>
2026-01-08 11:29:53 -06:00
Christopher Noel
09c3c72ac7
Add 'chrstphr84' to GitHub user list (#38030) 2026-01-08 10:12:46 -05:00
Eric
5e68cf223e
Website: add missing exit to get-android-devices (#37490)
Changes:
- Added a missing `notFound` exit to the `get-android-devices` action
used by the website's Android Enterprise proxy.
2025-12-18 12:10:57 -06:00
Nico
ba72182562
Add 'nulmete' to the list of users (#37399)
<!-- Add the related story/sub-task/bug number, like Resolves #123, or
remove if NA -->
**Related issue:** Resolves #

# Checklist for submitter

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

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

- [ ] Input data is properly validated, `SELECT *` is avoided, SQL
injection is prevented (using placeholders for values in statements)
- [ ] If paths of existing endpoints are modified without backwards
compatibility, checked the frontend/CLI for any necessary changes

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

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

For unreleased bug fixes in a release candidate, one of:

- [ ] Confirmed that the fix is not expected to adversely impact load
test results
- [ ] Alerted the release DRI if additional load testing is needed

## Database migrations

- [ ] Checked schema for all modified table for columns that will
auto-update timestamps during migration.
- [ ] Confirmed that updating the timestamps is acceptable, and will not
cause unwanted side effects.
- [ ] Ensured the correct collation is explicitly set for character
columns (`COLLATE utf8mb4_unicode_ci`).

## New Fleet configuration settings

- [ ] Setting(s) is/are explicitly excluded from GitOps

If you didn't check the box above, follow this checklist for
GitOps-enabled settings:

- [ ] Verified that the setting is exported via `fleetctl
generate-gitops`
- [ ] Verified the setting is documented in a separate PR to [the GitOps
documentation](https://github.com/fleetdm/fleet/blob/main/docs/Configuration/yaml-files.md#L485)
- [ ] Verified that the setting is cleared on the server if it is not
supplied in a YAML file (or that it is documented as being optional)
- [ ] Verified that any relevant UI is disabled when GitOps mode is
enabled

## fleetd/orbit/Fleet Desktop

- [ ] 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))
- [ ] If the change applies to only one platform, confirmed that
`runtime.GOOS` is used as needed to isolate changes
- [ ] Verified that fleetd runs on macOS, Linux and Windows
- [ ] Verified auto-update works from the released version of component
to the new version (see [tools/tuf/test](../tools/tuf/test/README.md))
2025-12-17 15:33:21 -03:00
Henry Stamerjohann
be0df116ff
Add 'headmin' to GitHub user list (#37256)
<!-- Add the related story/sub-task/bug number, like Resolves #123, or
remove if NA -->
**Related issue:** Resolves #

# Checklist for submitter

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

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

- [ ] Input data is properly validated, `SELECT *` is avoided, SQL
injection is prevented (using placeholders for values in statements)
- [ ] If paths of existing endpoints are modified without backwards
compatibility, checked the frontend/CLI for any necessary changes

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

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

For unreleased bug fixes in a release candidate, one of:

- [ ] Confirmed that the fix is not expected to adversely impact load
test results
- [ ] Alerted the release DRI if additional load testing is needed

## Database migrations

- [ ] Checked schema for all modified table for columns that will
auto-update timestamps during migration.
- [ ] Confirmed that updating the timestamps is acceptable, and will not
cause unwanted side effects.
- [ ] Ensured the correct collation is explicitly set for character
columns (`COLLATE utf8mb4_unicode_ci`).

## New Fleet configuration settings

- [ ] Setting(s) is/are explicitly excluded from GitOps

If you didn't check the box above, follow this checklist for
GitOps-enabled settings:

- [ ] Verified that the setting is exported via `fleetctl
generate-gitops`
- [ ] Verified the setting is documented in a separate PR to [the GitOps
documentation](https://github.com/fleetdm/fleet/blob/main/docs/Configuration/yaml-files.md#L485)
- [ ] Verified that the setting is cleared on the server if it is not
supplied in a YAML file (or that it is documented as being optional)
- [ ] Verified that any relevant UI is disabled when GitOps mode is
enabled

## fleetd/orbit/Fleet Desktop

- [ ] 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))
- [ ] If the change applies to only one platform, confirmed that
`runtime.GOOS` is used as needed to isolate changes
- [ ] Verified that fleetd runs on macOS, Linux and Windows
- [ ] Verified auto-update works from the released version of component
to the new version (see [tools/tuf/test](../tools/tuf/test/README.md))
2025-12-15 15:43:46 +01:00
Eric
fa27fda724
Website: Add case study article template page and three articles (#37153)
Changes:
- Updated the website's build-static-content script to add support for a
new article category: `case study`.
- Added a new article template page for case study articles
- Added case study articles from Stripe, Faire, and Foursquare.

---------

Co-authored-by: Mike Thomas <78363703+mike-j-thomas@users.noreply.github.com>
2025-12-12 13:37:16 +09:00
Eric
716225d9ac
Website: Update error handling in deliver-apple-csr (#36788)
Closes: https://github.com/fleetdm/fleet/issues/36776

Changes:
- Updated the `deliver-apple-csr` endpoint to tolerate errors returned
by the Slack API and log a warning when it happens.
2025-12-05 16:05:17 -06:00
Eric
ef355d5cd4
Website: add Fleet-maintained apps for Windows to /software-catalog (#36653)
Closes: https://github.com/fleetdm/fleet/issues/35983

Changes:
- Updated the Fleet website's `builtStaticContent.appLibrary`
configuration to include Fleet-maintained apps for Windows
- Added platform filters and Windows apps to the /software-catalog page
- Updated the URLs for Fleet maintained app detail pages to include the
app's platform, and added redirects for all changed URLs.
2025-12-04 12:02:05 -06:00
Eric
438baad6cb
Website: add /fast-track page (#36601)
Closes: https://github.com/fleetdm/confidential/issues/11222

Changes:
- Added a new page for Fleet Fast-track (/fast-track)
2025-12-03 17:10:14 -06:00
Eric
56f01f0170
Website: Update create-compliance-partner-tenant (#36528)
Changes:
- Updated an error handler in the the website's
create-compliance-partner-tenant action
2025-12-01 16:10:17 -06:00
Eric
fddd4bac85
Website: Update create-compliance-partner-tenant error handling (#36366)
Closes: https://github.com/fleetdm/fleet/issues/36356

Changes:
- updated the website's `create-compliance-partner-tenant` microsoft
proxy endpoint to return a `connectionAlreadyExists` response when a
uniqueness error is returned by the database adapter.
2025-11-26 16:29:05 -06:00
Eric
f8a3f09460
Website: Move Fleet subscription terms and privacy policy to the Fleet website. (#36001)
Closes: https://github.com/fleetdm/fleet/issues/32373

Changes:
- Added Markdown versions of the Fleet's subscription terms and privacy
policy Google docs to a new folder (`legal/`) inside the
`handbook/company/` folder. (Note: These pages are not accessible from
the handbook.)
- Added pages that display the two Markdown files rendered as HTML
(`/legal/terms` and `/legal/privacy`)
2025-11-26 16:27:37 -06:00
Eric
f743f6210c
Website: Update contact creation and enrichment in deliver-talk-to-us-form-submission (#36320)
Related to: https://github.com/fleetdm/confidential/issues/13219

Changes:
- Updated the `deliver-talk-to-us-form-submission` action to only use
the email domain for contact creation and enrichment, and to include the
provided organization name in contact descriptions.
2025-11-25 17:57:10 -06:00
Eric
e5303dd339
Website: uncomment warning related to missing Cloudflare headers (#36295)
Changes:
- Uncommented a warning that is logged if certain Cloudflare headers are
missing. (Reverted the changes from
https://github.com/fleetdm/fleet/pull/35909)
2025-11-25 13:10:18 -06:00
Magnus Jensen
237105728e
Reduce API Android usage (#36209)
<!-- Add the related story/sub-task/bug number, like Resolves #123, or
remove if NA -->
**Related issue:** Resolves #36138 

# 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

- [x] Added/updated automated tests
- [x] QA'd all new/changed functionality manually

---------

Co-authored-by: Jordan Montgomery <elijah.jordan.montgomery@gmail.com>
2025-11-25 09:39:06 -03:00
Eric
f592b9d333
Website: update software catalog sorting (#36100)
Related to: #35983


Changes:
- Updated the sorting of applications on the /software-catalog page to
be case-insensitive.
2025-11-20 17:37:46 -06:00
Eric
0434fdb8a2
Website: add testimonial (#35870)
Changes:
- Added a new testimonial and added it to the /device-management and
/testimonials pages
2025-11-18 11:48:49 -06:00
Eric
7ea2183688
Website: disable warning related to missing Cloudflare headers (#35909)
Changes:
- Commented out a warning that is logged if Cloudflare headers are
missing
2025-11-18 10:36:22 -06:00
Sam Pfluger
4d0fba76ff
Redistribute QA responsibilities (#35779) 2025-11-14 14:00:55 -06:00
Jahziel Villasana-Espinoza
ff0ba413b7
Android app self service: backend support (#34711)
<!-- Add the related story/sub-task/bug number, like Resolves #123, or
remove if NA -->
**Related issue:** Resolves #34389

# Checklist for submitter

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

- [x] Input data is properly validated, `SELECT *` is avoided, SQL
injection is prevented (using placeholders for values in statements)

## Testing

- [x] Added/updated automated tests
- [x] 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

## Database migrations

- [x] Checked schema for all modified table for columns that will
auto-update timestamps during migration.
- [x] Ensured the correct collation is explicitly set for character
columns (`COLLATE utf8mb4_unicode_ci`).
2025-11-13 18:10:24 -05:00
Eric
2cedc3e22e
Website: update logged warning in deliver-contact-form-message (#35695)
Closes: https://github.com/fleetdm/confidential/issues/13046

Changes:
- Updated the logged warning in deliver-contact-form-message to include
the full error thrown by the `build()` helper.
- Added intercepts to the helpers called inside of the `build()` helper
in deliver-contact-form-message, and updated it to throw an error if the
updateOrCreateContactAndAccount helper does not return an account ID.
2025-11-13 11:29:19 -06:00
Eric
a12616a781
Website: Update Microsoft proxy redirect error handling (#35675)
Related to: https://github.com/fleetdm/confidential/issues/13036

Changes:
- updated the receive-redirect-from-microsoft Microsoft proxy endpoint
to redirect users to their Fleet instance if the
`getAccessTokenAndApiUrls` helper returns an error.
2025-11-13 10:41:47 -06:00
melpike
2915c4b28f
Added melpike to list of humans (#35665) 2025-11-12 15:09:28 -07:00
Eric
b2151decda
Website: Add API rate limit alert to Android proxy endpoints (#35637)
Closes: https://github.com/fleetdm/fleet/issues/34358

Changes:
- Updated Android enterprise proxy endpoints to log an additional
warning to alert us if we exceed the Android management API rate limit.
2025-11-12 15:37:21 -06:00
johnjeremiah
cde7eb98fe
Add JohnJeremiah to the list (#35631)
<!-- Add the related story/sub-task/bug number, like Resolves #123, or
remove if NA -->
**Related issue:** Resolves #

# Checklist for submitter

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

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

- [ ] Input data is properly validated, `SELECT *` is avoided, SQL
injection is prevented (using placeholders for values in statements)
- [ ] If paths of existing endpoints are modified without backwards
compatibility, checked the frontend/CLI for any necessary changes

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

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

For unreleased bug fixes in a release candidate, one of:

- [ ] Confirmed that the fix is not expected to adversely impact load
test results
- [ ] Alerted the release DRI if additional load testing is needed

## Database migrations

- [ ] Checked schema for all modified table for columns that will
auto-update timestamps during migration.
- [ ] Confirmed that updating the timestamps is acceptable, and will not
cause unwanted side effects.
- [ ] Ensured the correct collation is explicitly set for character
columns (`COLLATE utf8mb4_unicode_ci`).

## New Fleet configuration settings

- [ ] Setting(s) is/are explicitly excluded from GitOps

If you didn't check the box above, follow this checklist for
GitOps-enabled settings:

- [ ] Verified that the setting is exported via `fleetctl
generate-gitops`
- [ ] Verified the setting is documented in a separate PR to [the GitOps
documentation](https://github.com/fleetdm/fleet/blob/main/docs/Configuration/yaml-files.md#L485)
- [ ] Verified that the setting is cleared on the server if it is not
supplied in a YAML file (or that it is documented as being optional)
- [ ] Verified that any relevant UI is disabled when GitOps mode is
enabled

## fleetd/orbit/Fleet Desktop

- [ ] 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))
- [ ] If the change applies to only one platform, confirmed that
`runtime.GOOS` is used as needed to isolate changes
- [ ] Verified that fleetd runs on macOS, Linux and Windows
- [ ] Verified auto-update works from the released version of component
to the new version (see [tools/tuf/test](../tools/tuf/test/README.md))
2025-11-12 12:17:41 -05:00
Eric
2a6df0b659
Website: update create-or-update-one-newsletter-subscription action (#35627)
Closes: https://github.com/fleetdm/confidential/issues/13025

Changes:
- Updated the emailAddress input of the
create-or-update-one-newsletter-subscription action to use `isEmail`
validation
2025-11-12 11:07:10 -06:00
Eric
8246c0a083
Website: Update error handling in create-vanta-authorization-request (#35545)
Closes: https://github.com/fleetdm/fleet/issues/18924

Changes:
- Updated the `intercept()` in create-vanta-authorization-request to
only return an `invalidToken` exit if the user's Fleet instance returns
a `401` response.
2025-11-11 15:39:38 -06:00
Magnus Jensen
7e46d63db8
Android Proxy: Pass authClient to all calls (#35456)
This is another attempt at debugging/solving the current android proxy
bug.

This tries to not use the global google options, and instead just passes
the authClient directly to all google calls.

The other PR with wait, did initially succeed for me, but then failed
right after.
2025-11-11 09:29:18 -03:00