Commit graph

201 commits

Author SHA1 Message Date
Eric
799ecca7bb
Website: Update automatic issues created for rituals (#33234)
Closes: https://github.com/fleetdm/fleet/issues/20792

Changes:
- Added support for the quarterly frequency for issues automatically
created for rituals
- Added support for templated auto-issue issue descriptions. Rituals
with an `issueDescription` value nested in the `autoIssue` object will
now use that value as the issue description when an issue for the ritual
is created.
2025-09-19 17:05:39 -05:00
Eric
048fcd13ed
Website: Add controls library pages (#33143)
Related to: https://github.com/fleetdm/confidential/issues/10737

Changes:
- Added `docs/scripts.yml`, a YAML file that contains a list of scripts
- Added `docs/mdm-commands.yml`, a YAML file that contains Windows and
Apple MDM commands
- Added `/mdm-commands`, a page that contains a list of MDM commands for
Windows and Apple commands
- Added `/scripts`, a page that contains a list of scripts
- Updated the `<docs-nav-and-search>` component to have a link to the
controls library, and reordered the lists.
- Updated the build static content script to add the scripts and mdm
commands from scripts.yml and mdm-commands.yml to the website's
`builtStaticContent` configuration.
- Updated the layout of the os-settings page to match the latest
wireframes
2025-09-19 12:02:55 -05:00
Noah Talerman
f576bd8863
Open roles builder: Fleet is series B (#32856) 2025-09-11 11:34:54 -07:00
Eric
cba94083c3
Website: Add primaryBuyingSituation migration script. (#31494)
Related to https://github.com/fleetdm/confidential/issues/11600

Changes:
- Added a script to update user records to only use the new
`primaryBuyingSituation` values added in
https://github.com/fleetdm/fleet/pull/31301
2025-08-01 17:07:27 -05:00
Eric
e3f173cc34
Website: Batch API requests to host details endpoints in Vanta script (#31422)
Related to: https://github.com/fleetdm/fleet/issues/30993

Changes:
- Updated the `send-data-to-vanta` script to limit the number of API
requests sent to host details endpoints at once.
2025-07-30 15:01:13 -05:00
Eric
20658b5657
Website: update compliance proxy script (#31181)
Changes:
- Updated the `send-entra-heartbeat-requests` script to send the correct
headers to the `PartnerTenantHeartbeat` endpoint for compliance partner
tenants.
- Fixed a typo in the `send-entra-heartbeat-requests` script
2025-07-23 11:29:03 -05:00
Mike McNeil
79aa09f3ba
Make sure we can easily respond to every applicant (#30705) 2025-07-09 16:42:41 -05:00
Eric
961e3e339a
Website: Update supported article categories (#30304)
Changes:

- Added `articles` to the list of supported article categories in the
build-static-content script.
- Added a route for articles in the articles category.
- Updated the `view-basic-article` action to support the new `articles`
category.
2025-06-24 20:19:57 -05:00
Eric
0f5cc22d61
Website: add fleetPremiumTrialLicenseKey user migration script. (#30125)
Changes:
- Added a script that sets a `fleetPremiumTrialLicenseKey` and
`fleetPremiumTrialLicenseKeyExpiresAt` values on all User records.
- Added a new email template to inform users that they have a new Fleet
premium trial available.
- Added the announcement banner to the /login, /register, and /try-fleet
pages.
2025-06-19 16:09:26 -05:00
Eric
13eeebe548
Website: Add Microsoft compliance proxy endpoints. (#27403)
Changes:
- Created a new database model: `MicrosoftComplianceTenant`. A model
that stores information about complaince tenants
- Added `/policies/is-cloud-customer`: a policy that blocks requests to
microsoft proxy endpoints if a `MS API KEY` header is missing or does
not match a new config variable
(`sails.custom.config.cloudCustomerCompliancePartnerSharedSecret`)
- Added `microsoft-proxy/create-compliance-partner-tenant`: an action
that creates a database record for a new compliance tenant and generates
an API key that is used to authenticate future requests to microsoft
proxy endpoints for an entra tenant.
- Added `microsoft-proxy/get-compliance-partner-settings`: an action
that returns information about Fleet's complaince partner entra
application and the entra tenant's admin consent status (whether or not
a tenant's entra admin has granted permissions to Fleet's compliance
partner application)
- Added `microsoft-proxy/get-tenants-admin-consent-status`: an action
that updates the admin consent status of a compliance tenant record.
- Added `microsoft-proxy/setup-compliance-partner-tenant`: an action
that provisions a compliance tenant, creates a complaince policy for
macOS devices assigns the created policy to the built-in "All users"
user group on the tenants entra instance.
- Added `microsoft-proxy/update-one-devices-compliance-status`: an
action that receives information about a device on a compliance tenant's
Fleet instance, sends that information to their Entra instance, and
returns the messsage ID returned by the asynchronus Entra API.
- Added `microsoft-proxy/get-one-compliance-status-result`: an action
that returns the result of a compliance status update from the Entra
API.
- Added `sails.helpers.microsoft-proxy.get-access-token-and-api-urls` A
helper that gets an access token for a tenant's entra instance and the
URLs of the API endpoints the microsoft proxy actions use for a tenant.
- Added `scripts/send-entra-heartbeat-requests` A script that will run
daily to keep all microsoft compliance integrations provisioned.
-

---------

Co-authored-by: Lucas Rodriguez <lucas@fleetdm.com>
2025-06-11 13:01:36 -05:00
Mike McNeil
d02fde22cf
Add ai.improvePrompt() (#29660) 2025-05-31 00:30:42 -04:00
Luke Heath
d1f7de7240
Fix KPI script output order to match KPI sheet (#29420) 2025-05-27 10:29:36 -05:00
Mike McNeil
ee880d953b
Website: Trivial code shortening (#29231)
Just a nit

---------

Co-authored-by: Eric <eashaw@sailsjs.com>
2025-05-16 18:25:06 -05:00
Mike McNeil
94aa200424
More ai helpers (#29027)
I will upstream these ahead of next week into sails-hook-organics.
2025-05-12 17:01:43 -05:00
Eric
d4d4a662e2
Website: Add fallback icon for Fleet maintained apps. (#29021)
Closes: #28784

Changes:
- Updated the `build-static-content` script to not throw an error if an
app listed in apps.json is missing an icon, and to use a fallback icon
for apps with no icon.
2025-05-12 12:25:50 -05:00
Mike McNeil
242658183a
Introducing sails.helpers.ai.satisfy() (#28590)
Constraint satisfaction for dummies like me
2025-04-26 15:16:07 -05:00
Eric
65105edfaa
Website: update app library configuration to use new FMA format. (#27424)
Closes: #24379

Changes:
- Updated the build-static-content script to build the configuration for
/app-library/* pages from the JSON outputs in the ee/maintained-apps
folder.
2025-04-23 12:24:03 -05:00
Eric
33a7039203
Website: Update Vanta integration script to continue if the get host endpoint returns an error. (#27993)
Related to: #27943

Changes:
- Updated the `send-data-to-vanta` script to continue running for a
Vanta connection if the get host API returns an error. It will now store
a detailed error and log them all when the script is finished running.
2025-04-08 14:46:04 -05:00
Luke Heath
d1f5676f17
Adjust order in KPI script output to match spreadsheet columns (#27894)
Updating to match the current column order in the KPI sheet.
2025-04-04 13:12:36 -05:00
Luke Heath
264664d084
Remove unnecessary complexity from KPI script (#27850) 2025-04-04 12:39:32 -05:00
Eric
465dcb1aba
Website: Update get-bug-and-pr-report script. (#27664)
Closes: #27662

Changes:
- Updated the `get-bug-and-pr-report` script to not count pull requests
with no commits in the commit to merge time metric, and to log a warning
if one is found.
2025-03-28 17:00:33 -05:00
Luke Heath
b4f30a2154
Remove warn log from KPI script (#27418) 2025-03-21 16:49:45 -05:00
Eric
ac9716fdd9
Website: Update vanta integration for dogfood (#27212)
Changes:
- Updated the send-data-to-vanta script to only send information about
hosts from specific teams to vanta (For Fleet's vanta integration only)
2025-03-17 16:24:21 -05:00
Eric
b9c0f97026
WEbsite: revert changes to Fleet maintained apps configuration (#27093)
Changes:
- Reverted the changes from #27049 until the file structure of the
ee/maintained-apps folder has been settled and JSON files exist for all
apps listed in the `/ee/maintained-apps/outputs/apps.json`.
2025-03-12 18:15:41 -05:00
Eric
6e86b02bec
Website: update app library configuration (#27049)
Closes: #24379

Changes:
- Updated the `build-static-content` script to build the configuration
for /app-library pages from JSON files in the ee/maintained-apps/
folder.
2025-03-12 12:25:51 -05:00
Eric
4b2814a5c2
Website: Add line number to edit page links on policies, queries and vitals pages. (#25965)
Changes:
- Updated the `build-static-content` script to set a `lineNumberInYaml`
value on queries, policies, and vitals.
- Updated the edit page button on the policy-details, query-detail, and
vital-details pages to take users to the specified query's line number
in the YAML file.
2025-02-05 18:13:28 -06:00
Eric
232f1ac4c2
Website: Add number metrics to send-aggregated-metrics-to-datadog script (#26031)
Related to: #25869

Changes:
- Updated `send-aggregated-metrics-to-datadog` to send aggregated
metrics for number metrics reported by Fleet instances.
2025-02-05 16:33:50 -06:00
Eric
6cfecdeea3
Website: Add Powershell commands to queries.yml and standard query library. (#25972)
Changes:
- Added powershell commands to windows queries in queries.yml and
windows policies in the standard query library.
- Updated code blocks on the vital details, policy details, and query
details pages to have a tab switcher to switch to view PowerShell
commands.

---------

Co-authored-by: Mike McNeil <mikermcneil@users.noreply.github.com>
2025-02-02 21:31:00 -06:00
Eric
2d5784e49d
Website: Follow up changes from website code review. (#25844)
Changes:
- Updated the website's sitemap to include pages for app-library pages,
the correct URL for the software management page, and the meetups page.
- Updated save-questionnaire-progress to not log warnings related to
duplicate CRM records if the user submitted one of the first three steps
of the get started questionnaire.
- Cleaned up comments in build-static-content.
2025-01-28 18:47:32 -06:00
Eric
5c0894ce0a
Website: Create queries.yml, add vitals and query pages, move policies. (#25701)
Related to: https://github.com/fleetdm/confidential/issues/9096

Changes:
- Created docs/queries.yml. A YAML file that contains the queries from
the standard query library (`kind: query`) and the host vitals queries
(`kind: built-in`).
- Added the `vitals/*` page, a page that displays details about host
vital queries used to gather information about.
- Updated the /queries page to show queries from the new
`docs/queries.yml` file, and moved policies to a new page (/policies)
- Updated the view action for the query-detail page to look for/redirect
to a policy page with a matching slug before returning a 404 response if
a matching query is not found. This behavior will make it so all of the
old URLs for policy pages will redirect users to the new URL.
- Updated the website's "Docs" navigation menu to have links to the new
vitals and policies pages.
2025-01-22 21:10:17 -06:00
Eric
603e01d744
Website: add support for optional onTargetEarnings value in open positions YAML. (#25576)
Closes: https://github.com/fleetdm/confidential/issues/9378

Changes:
- Added support for `onTargetEarnings` in open-positons.yml
- Updated the build-static-content script to validate `onTargetEarnings`
values, and to replace the default compensation range on the page
template with an `onTargetEarnings` value if one is provided.
- Updated the "Creating a new position" section of the leadership
handbook to document the new key in the open positions yaml
2025-01-18 02:00:49 -06:00
Eric
4ad16cc46f
Website: Update admin query generator to work in production. (#25363)
Changes:
- Updated the `build-static-content` script to add the merged osquery
schema JSON to the website's `builtStaticContent` configuration
- Updated view-query-generator to have a badConfig exit that is used if
the website has an invalid `builtStaticContent.schemaTables`
configuration
- Updated `get-llm-generated-sql` to use the
`builtStaticContent.schemaTables` instead of attempting to use
`sails.helpers.getExtendedOsquerySchema()` (Which does not work as
intended when run in a production environment.)
2025-01-10 17:51:03 -06:00
Eric
aab320333a
Website: Update flags in regex used to find Vue templates in markdown content. (#25316)
Changes:
- Updated the flags on the regex used to detect Vue templates in
MArkdown content. The regex was incorrectly matching double curly
bracket-wrapped variables in markdown code blocks when it should not.
2025-01-09 17:13:42 -06:00
Eric
1eae4f6e1b
Website split article page routes (#25149)
Closes: #23904

Changes:
- Replaced the regex routes that handle articles and article category
pages to have a separate route for each category
- Updated the build-static-content script to transform periods in
article filenames into dashes
- Added redirects for articles that have a changed URL
2025-01-07 11:43:36 -06:00
Eric
2ca4f2f376
Website: Allow double curly brace templates in Markdown code blocks. (#25179)
Closes: https://github.com/fleetdm/fleet/issues/25176

Changes:
- Updated the to-html helper to add the `v-pre` directive to Markdown
code blocks, This directive will prevent any of the content inside of it
from being interpreted as a Vue template.
- Updated the regex in build-static-content that looks for vue templates
to not match any templates inside code blocks.
2025-01-06 14:07:31 -06:00
Eric
82ec1d8e16
Website: update article links on /testimonials page (#24850)
Closes: #24746

Changes:
- Replaced the hard-coded links to articles on the /testimonials page
with server-side rendered generated links to articles. These links are
now built using the website's markdown articles configuration.
- Added support for a new meta tag on articles:
`showOnTestimonialsPageWithEmoji` If provided and set to one of the four
supported emoji (🥀, 🔌, 🚪, or 🪟), a link to the article will be added to
the /testimonials page. Example: `<meta
name="showOnTestimonialsPageWithEmoji" value="🥀">`.
- Updated the build-static-content script to throw an error if an
article has an invalid `showOnTestimonialsPageWithEmoji` meta tag value.
- Updated recent case study articles to have a
`showOnTestimonialsPageWithEmoji` meta tag.


@Drew-P-drawers When this PR is merged, you can add links to the new
case studies articles to the /testimonials page with a
`showOnTestimonialsPageWithEmoji` meta tag. The definitions for each of
the supported emoji are in this [google
doc](https://docs.google.com/document/d/1-KWQa3uMIJzeitzDRmzT3SnUoFCfcFCb6K2lyVt-Gy0/edit?tab=t.0#heading=h.oskipmb8530l)
2024-12-17 18:08:25 -05:00
Eric
02b0a97ac8
Website: add support for new usage statistics (#24511)
Changes:
- Updated the receive-usage-analytics webhook to support a new input:
`numQueries`
- Added a new attribute to the HistoricalUsageSnapshot model
`numQueries`
- Added a commented-out section to the
send-aggregated-metrics-to-datadog script.
2024-12-13 15:00:30 -06:00
Eric
3e9f6857dd
Website: Add uninstall command to app details page. (#24404)
Closes: #24231

Changes:
- Updated build-static-content to ingest the uninstall scripts from the
`/server/mdm/maintainedapps/testdata/scripts` and condense them into a
single line command that can be pasted into a terminal.
- uncommented the uninstall section of the app-details page
2024-12-09 16:18:35 -06:00
Sam Pfluger
0a129b9e92
Add SWE position (#24564) 2024-12-09 15:05:36 -06:00
Eric
a3e0704fc0
Website: update quotes and sort order on /testimonials page and landing pages (#24441)
Changes:
- Updated the product categories used in testimonials.yml and updated
the build-static-content script to add support for the changed values
(`Endpoint operations` » `Observability` & `Vulnerability management` »
`Software management`)
- Updated the testimonial cards on landing pages to only show the
testimonials that have an explicit sort order set for them.
- Updated the order of testimonials on landing pages and the
/testimonials page.
- Updated the styles of the `<scrollable-tweets>` component.
- Updated the layout of the CTA buttons on the /device-management page
on smaller screen sizes
2024-12-06 09:03:44 +09:00
Eric
0654172fa2
Website: Add app library & app details page (#24205)
Related to: #23792

Changes:
- Added /app-library, a page that displays information about
Fleet-maintained apps
- Added the app details page (/app-library/{app identifier}), a page
that gives users detailed information about a single Fleet-maintained
app
- Updated the build-static-content script to add information about
Fleet-maintained apps to the website's configuration.
2024-11-27 13:43:23 -06:00
Eric
3bfbc5654c
Website: Update Vanta script for Fleet's integration (#23514)
Related to: https://github.com/fleetdm/fleet/issues/19312

Changes:
- Updated the send-data-to-vanta script to exclude hosts on a specific
team when it runs for Fleet's Vanta integration.

---------

Co-authored-by: Ian Littman <iansltx@gmail.com>
2024-11-05 11:02:27 -06:00
Eric
f623eed47b
Website: Update /queries page (#23472)
Changes:
- Standard query library:
- Added three policies to the Standard query library (tagged as premium)
- Changed the `kind` of the "Identify Apple development secrets (macOS)"
query to `policy` because it is an informational query (It returns rows
of results rather than 1 or 0) and removed its `resolution` value
- Updated the build-static-content script to remove platform names from
the end of query names (e.g., (macOS)). This is done to keep the URLs
for queries the same while hiding them in the UI
- Updated the layout of the queries page to match the latest wireframes
and updated the page to only show policies
 - Updated the styles and layout of the queries-details page.

---------

Co-authored-by: Rachael Shaw <r@rachael.wtf>
2024-11-04 10:58:08 -06:00
Eric
6094e31fad
Website: add support for annual auto issues, add new digital experience issue (#23218)
Changes:
- updated build-static-content to allow auto-issue rituals with a
`annually` frequency
- Updated the create-issues-for-todays-rituals script to create GH
issues for annually occurring rituals
- Added an annual ritual for checking GitHub's terms
- Added a responsibility to the Digital experience handbook page about
the ritual.

---------

Co-authored-by: Sam Pfluger <108141731+Sampfluger88@users.noreply.github.com>
2024-10-27 11:48:05 -05:00
Sam Pfluger
95221e5abd
Measure #handbook PR open time (#23124)
Co-authored-by: Eric <eashaw@sailsjs.com>
2024-10-23 13:12:21 -05:00
Eric
fb0f69c010
Website: Fix lint errors in script (#23049)
Changes:
- Fixed the lint errors in the `test-llm-generated-sql` script
2024-10-21 10:26:41 -05:00
Mike McNeil
5c3d324d3d
Update test-llm-generated-sql.js (#23038) 2024-10-19 18:55:21 -05:00
Mike McNeil
2edbcb3c14
Add caveats to AI-generated SQL (#23035) 2024-10-19 18:36:55 -05:00
Mike McNeil
49f22b2836
Ask questions in natural language (#23034) 2024-10-19 18:24:50 -05:00
Eric
93131d3e2f
Website: fix typo in send-aggregated-metrics-to-datadog script (#21915)
Changes:
- Fixed a typo in the `send-aggregated-metrics-to-datadog` script
2024-09-09 11:47:38 -05:00