Commit Graph

23 Commits

Author SHA1 Message Date
Eric
ce56f1f6bc
Website: Upgrade website dependencies (#15477)
Closes: https://github.com/fleetdm/confidential/issues/4115

Changes:
- Updated three packages used by the Fleet website:
   - sails-hook-organics: ^2.2.0 » ^2.2.2
   - sails-hook-sockets: ^2.0.1 » ^3.0.0
   - @sailshq/socket.io-redis: ^5.2.0 » ^6.1.2
2023-12-06 17:28:06 -06:00
Mike McNeil
d1a22899f9
Website: Bump framework version (#12909)
Co-authored-by: Eric <eashaw@sailsjs.com>
2023-07-21 16:38:26 -05:00
Eric
a55a9789e6
Website: upgrade jsonwebtoken dependency (#9440)
Changes:
- `jsonwebtoken v8.5.2` » `v9.0.0`
2023-01-19 18:28:52 -06:00
Eric
47d43d5307
Website: fix failing GitHub workflows (#9285)
Changes:
- Updated the `build-static-content` script to use a GitHub API token
for requests if one is provided e.g., `sails run build-static-content
--githubAccessToken="foo"`
- Updated the `build-for-prod` npm script to run the
`build-static-content` script with a variable named `BUILD_SCRIPT_ARGS`.
- Updated the "Deploy Fleet website" and "Test Fleet website" workflows
to run the `build-for-prod` script with a GitHub API token
. .

Co-authored-by: Mike McNeil <mikermcneil@users.noreply.github.com>
2023-01-11 13:31:20 -06:00
Eric
896918bc79
Website: Fleet Premium subscription renewals (#9200)
https://github.com/fleetdm/fleet/issues/9172

Changes:
- Added
`website/api/controllers/webhooks/recieve-stripe-subscription-events.js`
a webhook for receiving Stripe events.
- If the stripe event received is from a user's subscription
automatically renewing, A new license key is generated, the subscription
record is updated, and a renewal confirmation email is sent.
- If the stripe event received is from a user's subscription's upcoming
renewal, a renewal notification email is sent.
- If any other event type is received from Stripe, the webhook returns a
200 response.
- Added new email templates:
   - `email-subscription-renewal-confirmation`
   - `email-upcoming-subscription-renewal`
- Updated `website/api/controllers/admin/view-email-template-preview.js`
to have fake data for the added email templates.
- Updated `website/api/controllers/customers/view-dashboard.js` to set
two boolean variables: `subscriptionExpiresSoon` and
`subscriptionHasBeenRecentlyRenewed`
- Updated the customer dashboard to display notifications on the top of
the page if a user's subscription will renew in the next 30 days, or if
the user's subscription has been renewed in the past 30 days.
- `website/views/layouts/layout-email.ejs` - Updated the font, padding,
and text color to match wireframes.
2023-01-06 18:36:29 -06:00
Eric
c2cba7af7c
upgrade @sailshq/connect-redis to 6.1.3 (#7842) 2022-09-19 18:00:05 -05:00
Eric
23ec518eb4
Website: Upgrade sails-hook-orm dependency (#7160)
* upgrade sails-hook-orm dependency

* Update package.json
2022-08-10 19:52:52 -05:00
Eric
667c566b28
Website: Remove machinepack-github dependency (#7101)
* Remove machinepack-github dependency, update recieve-from-github

* remove unused variable, update headers in delete request
2022-08-08 16:58:48 -05:00
Eric
e378c090c5
Website: sails-postgresql@^2.0.0 » sails-postgresql@^5.0.0 (#6780) 2022-07-21 17:52:45 -05:00
Eric
f3212f4537
Website: update marked dependency (#6189) 2022-06-13 13:41:18 +09:00
Eric
297cfe7263
Website: Fix table rendering in content generated from Markdown (#5002)
* marked 0.3.5 -> 0.4.0

* upgrade to marked v0.5.0

Co-authored-by: Mike McNeil <mikermcneil@users.noreply.github.com>
2022-04-07 16:20:23 -05:00
Eric
6570ae8177
marked 0.3.5 -> 0.4.0 (#4958) 2022-04-05 18:10:02 -05:00
Mike Thomas
102f4d0846
Updated handbook index (#3689)
* Updated handbook index

Added:
"Posting on social media as Fleet"
"Press releases"

Moved from Growth into Community:
"Promoting blog posts on social media"

* Update README.md

Added "Contributing to the handbook"

* Update README.md

* rename customer experience, add redirect to new customer page, upgrade Sails to fix routes bug, resolve routes TODO

* Update README.md

* update broken links

Co-authored-by: Mike McNeil <mikermcneil@users.noreply.github.com>
Co-authored-by: eashaw <caglc@live.com>
2022-01-17 13:13:11 -06:00
eashaw
e335e835c9
Add customer portal and license dispenser to fleetdm.com (#3546)
* Add images for customer portal, dashboard, and email templates

* updated email layout and reset password template, new email template

* update ajax-button component to have an optional spinner

* updated cloud-error & stripe-card-element component styles

* updates to user model, add quote and subscription

* Login, signup, forgot password, update profile

* link to customer portal from pricing

* new-license page, bootstrap updates

* create quote action, dashboard page, update routes

* Add new page styles to importer, update component styles

* updates to js-timestamp

* update modal styles and layout

* using @submitted on ajax form, controller updates

* Update create-quote.js

* updates to quote model, action updates, truncate license key on dashboard

* update email layout, subscribe action, user model

* Update importer.less

* style updates, order confirmation

* use correct font

* style updates

* create license key

* new-license page changes

* signup page changes

* add billing format to js-timestamp component, dashboard updates, change password

* swap get started link for customers

* order -> subscription

* Update login.ejs

* Lint fixes, page updates, mobile styles

* remove edit-profile route, update layout, bootstrap, forms

* change customer-layout name to match other layout names, update copyright year in layouts

* changes requested from code review and #3570

* submit button width, contact font-size

* Update dashboard.less

* Update bootstrap-overrides.less

* slack logo update, login text
2022-01-04 20:02:42 -06:00
Mike McNeil
8097251565
Put live documentation on fleetdm.com (#1380)
* minor clarifications

* further expand comments and stubs

* absorb custom titles embedded in metadata, plus further comment expansion and a followup fix for something i left hanging in f8cbc14829d91e7577c63307fd9c4346dbc229bb

* Skip non-markdown files and use real path maths

* Prep for running in parallel (Remove `continue` so this isn't dependent on the `for` loop)

* determine + track unique HTML output paths

* Compile markdown + spit out real HTML  (without involving any but the crunchy nougaty dependency from the very center of everything)

* add md metadata parsing

* add timestamp

* Update build-static-content.js

* attach misc metadata as "other"

* how doc images might should work (this also aligns with how the select few images in the sailsjs.com docs work)

* add file extension to generated HTML files

* "options"=>"meta"

* Make "htmlId" useful for alphabetically sorting pages within their bottom-level section

See recent comments on https://github.com/fleetdm/fleet/issues/706 for more information.

* list out the most important, specific build-time transformations

* Omit ordering prefixes like "1-" from expected content page URLs

* add a little zone for consolidating backwards compatible permalinks

* interpret README.md files by mapping their URLs to match their containing folder

* clarify plan for images

* decrease probability of collisions

* Make capitalization smarter using known acronyms, proper nouns, and a smarter numeric word trim

* Resolve app path in case pwd is different in prod

* Delete HTML output from previous runs, if any

* condense the stuff about github emojis

* got rid of "permalink" thing, since id gets automatically attached during markdown compilation anyway

Also "permalink" isn't even a good name for what this is.  See https://github.com/fleetdm/fleet/issues/706#issuecomment-884693931

* …and that eliminates the need for the cheerio dep!

* Bring in bubbles+syntax highlighting into build script, and remove sails.helpers.compileMarkdownContent()  -- this leaves link munging as a todo though

* trivial (condense comments)

* Remove unused code from toHtml() helper

* Implemented target="_blank" and root-relative-ification

* remove todo about emojis after testing and verifying it works just fine

* trivial: add link to comment in case github emojis matter at some point

* consolidate "what ifs" in comments

* Leave this up to Sarah, for now. (Either bring it back here in the build script or do it all on the frontend)

* Enable /docs and /handbook routes, and add example of a redirect for a legacy/deprecated URL

* implement routing

* Upgrade deps

this takes advantages of the latest work from @eashaw, @rachaelshaw, and the rest of the Sails community

* tweak var names and comments

* make readme pages use their folder names to determine their default (fallback) titles

as discussed in https://github.com/fleetdm/fleet/issues/706#issuecomment-884788002

* first (good enough for now) pass at link rewriting

as discussed in https://github.com/fleetdm/fleet/issues/706#issuecomment-884742072

* Adapt docs pages to build from markdown output

* Continue work on docs pages

* Add landing page

* Remove unused code; minor changes

* Replace regex

* fixes https://github.com/fleetdm/fleet/pull/1380#issuecomment-891429581

* Don't rely on "path" being a global var

* Syle fleetdm doc pages

* Continue work on docs pages

* Fix linting error

* Disable lesshint style warnings

* parasails-has-no-page-script attribute

Added a parasails-has-no-page-script attribute to the docs template, added a check for that attribute in parasails.js and removed the empty page script for 498

* bring in latest parasails dep

* trivial

* Update links to dedupe and not open in new tab unless actually external

* Disable handbook for now til styles are ready

* fix CTA links

* trivial

* make sitemap.xml get served in prod

* hide search boxes for now, remove hard-coded version and make releases open in new tab

* clean out unused files

Co-authored-by: gillespi314 <73313222+gillespi314@users.noreply.github.com>
Co-authored-by: eashaw <caglc@live.com>
2021-08-17 19:55:13 -05:00
Mike McNeil
00f30c1e84
Fleetbot (#1572)
* Move usage analytics action for the sake of convention

* followup to ed4a500e159ac118018f8adb7279abdd59be6c24 to fix policy mapping

* Add stub of webhook handler for GitHub bot (at this point, a mostly-verbatim copy paste of sailsbot -- will work backwards from this to what we actually need in Fleet)

* Everyone can follow the same rules.  Except bots.  And Noah.

* same as 5c97f47effaf72f15f5628c83b50f80781d46acd

* replace a separate, explicit check for "sailsbot"

* Comment out stuff Fleet is not using for the foreseeable future

* use Fleet's green label color (could switch to "+" prefix as well, just would require tweaking)
2021-08-06 02:52:02 -05:00
Mike McNeil
f5f751fdd1
Add new script for fleetdm.com schema migrations (#1317)
* Make sails run wipe-staging just be sails run wipe.

* Add instructions to README

* use latest postgresql adapter + update wipe script  (will probably change this to mysql at some point for consistency)

* Update README.md
2021-07-06 21:58:20 -05:00
Mike McNeil
ac220ba6e5
Obviate doc-templater dependency + dynamic sitemap.xml (#827)
* trivial

* Simplify build-static-content script and rip out the old markdown compilation for query library

* improve error msg

* trivial

* move helper

* bring in the skeleton

* Compile handbook as well, and bring more stuff inline

* instead of generating sitemap.xml file, could just serve it as a route

* Serve sitemap.xml on the fly

* add failsafe to prevent search engine accidents

* add remaining hand-coded pages to sitemap

* rearrange routes and get rid of commented-out ones

* Update build-static-content.js

* stub out the remaining pieces

* Add assertion (Which actually helped catch a real duplicate query: get-mac-os-disk-free-space-percentage)

* clean out inadvertently committed stuff in sailsrc

* route and serve data for correct query by slug + fix error message re duplicate query slugs + added assertion for duplicate doc page slugs

* yaml == dev dependency

* remove doc-templater dependency, as promised

* stub out handbook page

* clarify comments & remove unnecessary skipAssets

* Update build-static-content.js

* res.badConfig()

* add missing exit that I left out back in ec95df6a4b

* remove unused file

* update comments before commenting out and moving over to basic-documentation.less

* move example styling of generated HTML over to docs/handbook

* include both links

* Fix sitemap.xml URLs in local dev by fixing baseUrl config for local development (since Fleet itself is on 1337).

* followup to d55c777590

* Include query pages in sitemap.xml (+make urls generated for docs/handbook in build script slightly more real) -- but also don't serve sitemap

* sails.config.builtStaticContent.allPages » sails.config.buildStaticContent.markdownPages  (also remove unnecessary trailing slash trimming)

* trivial

* check config when serving sitemap + smarter error message for contributors

* hook up GitHub link to edit the query

* remove html ids

* Update query-detail.ejs

* somre more setup re https://github.com/fleetdm/fleet/issues/368#issuecomment-848566533
2021-05-26 03:24:38 -05:00
Mike McNeil
d50b48e7c2
Absorb yaml queries into website, + stub /queries + /documentation (#812)
* Upgrade to get rid of REPL schmutz

* rename workflow to lessen ambiguity vs. markdown compilation of docs

* ensure lockfile makes it to fleetdm.com prod

* skip force git add of package-lock to avoid confusion for now. (reverts 4e7e23990c472e84f3f24391ef360a175f725609)

* rename build script (because now it won't always be markdown source files)

* update metadata to match prev commit

* change key name in generated sailsrc for consistency

* stub query library page

* used named params so others can tell what's up with the forcing

* expand comments

* expand comments

* intermediate commit- playing with inlining the guts from doctemplater

* stub basic docpage shell and a little page to preview that on

* Compile YAML and set up query library page

* clean sailsrc

* optimize build by running everything in parallel

* Add note about the fact that we don't even need to clone anything since we've consolidated it all into one repo now.  facepalm

* un-parallelize one bit that fails in CI if it's parallelized (it'll go away soon anyway)
2021-05-20 03:22:42 -05:00
Mike McNeil
9d420068ef
Update capabilities chart + copy edits + fix lint (was broken for local dev only - re md compilation) (#768)
* fix linter so it doesn't freak out when developing w/ compiled markdown content locally

* copy edits + add back call to action at bottom of homepage so there's somewhere to go
2021-05-14 03:25:40 -05:00
Mike McNeil
56e143a14f
Compile markdown docs (#714)
* Brought in the mostly-unchanged stuff from Sails website- changed just enough to get it working

* inline beforeConvert and afterConvert, for readability

because it's better when you tell a story with the parts of the story in order

* trivial (change arg name for clarity)

* trivial (apply more up-to-date err callback convention)

* modernize some of the bits relying on reassigning arguments

* convert the rest of the way to async/await

* trivial

* just aesthetics

* remove reliance on app-level config

* mostly i'm doing this to remember how it works

* normalize better so this can be more flexible

* this makes it work (albeit needs a bit more fluffing)

* strip out more sails-specific stuff

* clean up menu files between runs, scrape off a bit more technical debt

* scrape out some more dead code

* use devDependencies for markdown compilation stuff since it won't be compiling at runtime

* stub script for compiling markdown content

* Fill in implementation of script, rename helper.

* add note about the non-markdown file problem

* tweak output paths for clarity

* Improve generated menu content and set up groundwork for being able to easily access it via config

* Use .sailsrc to hold onto menu content, so it's injected into config for easier access (rather than reading JSON files whenever needed)

* more explicit tmp filename, in case we forget how this works later

* fix typo in build script (missing .js extension)

* Stub query detail page and a dev route for developing it

http://localhost:2024/sandbox/example-query

* fix helper friendlyName

* Run compilation in series to avoid race condition in doc-templater when cloning from the same repo.  Add todos about sitemap and further menu data cleanup.

* make sandbox actually useful

* Help prevent accidental checking in of compiled HTML files.

* rename script and generated folder in partials/

* fix/expand script metadata
2021-05-09 23:48:59 -05:00
Zach Wasserman
2e2805d9fe
Fix JS test warnings and errors on Node 15 (#572)
- unhandledPromiseRejection errors caused test failures on Node 15.
  Instead verbose log these for later followup.
- Fix uses of Nock in tests
- Fix some warnings in tests
- Upgrade some test dependencies
2021-04-01 11:45:21 -07:00
Mike McNeil
27eae209fd
Move fleetdm.com into main Fleet repo (#83)
* rename dir

* no need to install website or docs from npm

At some point, would also be nice to be able to exclude assets/ as well, and to only install a pre-built version of Fleet's frontend code

* Bring in fleetdm.com website

From https://github.com/fleetdm/fleetdm.com as of https://github.com/fleetdm/fleetdm.com/releases/tag/v0.0.21

* add procfile for heroku

Using https://github.com/timanovsky/subdir-heroku-buildpack

* avoid getting anybody's hopes up

* Create deploy-fleet-website.yml (#82)

* Create deploy-fleet-website.yml

* Update deploy-fleet-website.yml

* Update deploy-fleet-website.yml

* Update deploy-fleet-website.yml

* update pjs with SPDX-like license expressions.  also fix repo URL

and remove package lock

* Update deploy-fleet-website.yml

* Update deploy-fleet-website.yml

* remove dummy uri

* Dissect deploy script

* Update deploy-fleet-website.yml

* workaround for eslintrc nesting issue

* lint fixes

* forgot the .js

* add per-commit git config

* Update deploy-fleet-website.yml

* might as well remove that

* cleanup

* connect w/ heroku app and have it actually push

* fix bug I introduced in 578a1a01ffb8404aae869e05005e30a6ba2b2a95

* Update deploy-fleet-website.yml

* Update deploy-fleet-website.yml

* Update deploy-fleet-website.yml

* Update deploy-fleet-website.yml

* the beauty, the glory, of javascript

* GH actions don't like "\n"

* Update deploy-fleet-website.yml

* restore \n chars from 0d45e568f693efba7d7072085bc98d72a482d9ae

hoping I was wrong in 0d45e568f693efba7d7072085bc98d72a482d9ae but see also https://github.community/t/what-is-the-correct-character-escaping-for-workflow-command-values-e-g-echo-xxxx/118465/5

* Update deploy-fleet-website.yml

* Update deploy-fleet-website.yml

* Update deploy-fleet-website.yml

* Update deploy-fleet-website.yml

* Update deploy-fleet-website.yml

* Update deploy-fleet-website.yml

* Update deploy-fleet-website.yml

* Update deploy-fleet-website.yml

* Update deploy-fleet-website.yml

* Update deploy-fleet-website.yml

* Update deploy-fleet-website.yml

* Update deploy-fleet-website.yml

* rename script to prevent duplicate building

* Configure the real website

* clean up

* a test of the deploy workflow

* add handbook to npmignore

* I guess you could call this fixing a typo

* point workflow at master branch

* now clearly bogus: this completely unused version string
2020-12-02 14:48:03 -06:00