Commit Graph
1299 Commits
Author SHA1 Message Date
Zach Wasserman f62dc055ee Improve fleetctl preview startup experience (#60)
- Rearrange messaging to appear during waiting time.
- Reduce wait time by limiting backoff timer
2020-11-20 15:37:14 -08:00
noahtalerman 23ce98ec51 Add Nunito Sans font and update global styles. (#59)
This is the first PR as a part of the Fleet UI Refresh #38.

Changes include:

- Add Nunito Sans font files and modify global styles to reflect the font change.
- Modify global font variables to reflect new sizing and weight naming conventions.
-- New sizing and naming conventions:
--- SIZE: xx-small: 12px, x-small: 14px, small: 16px, medium: 20px, large: 24px, x-large: 28px
--- WEIGHT: regular: 400, bold: 700
- Remove the old Oxygen font files.

Changes to other style sheets reflect the changes to the new font sizing and weight naming conventions for global variables. The changes don't necessarily use the correct size (as illustrated by mockups). Those "up to spec" sizing changes are to come.
2020-11-19 16:51:22 -08:00
noahtalerman d3d4f81530 Add instructions for running osquery agents to development docs. (#58)
Used same verbiage from osquery-in-a-box README (https://github.com/fleetdm/osquery-in-a-box#run-osquery).
2020-11-19 16:36:27 -08:00
Zach Wasserman 45dbcebeb4 Upgrade NPM package to 3.4.0 (#54) 2020-11-19 15:58:54 -08:00
Mike McNeil df3b7f2852 Has anyone stress tested Fleet? (#49)
Update FAQ with answer to this question.
2020-11-19 15:53:12 -08:00
Zach Wasserman cf73b13890 Update changelog for 3.4.0 release (#53) 2020-11-18 13:49:31 -08:00
Zach Wasserman d89523c830 Add fleetctl installer for NPM (#52)
This PR adds all the necessary configuration to install fleetctl via NPM.

Binaries are downloaded from the GitHub release page.
2020-11-18 13:20:08 -08:00
Zach Wasserman ff26a614ef MVP of fleetctl preview command (#51)
This adds a `fleetctl preview` command to fleetctl that will download
and start https://github.com/fleetdm/osquery-in-a-box. This is
potentially the easiest way for a user to try out Fleet.
2020-11-18 13:16:18 -08:00
Zach Wasserman eea6aa5c64 Fix unexpected print of migration status warning (#50)
Replace the now-deleted migration
server/datastore/mysql/migrations/data/20181119180000_DeleteSoftDeletedEntities.go
with a new migration containing the same timestamp. This allows Fleet to
see the appropriate migration state for users upgrading from previous
versions without actually modifying the DB.

Fixes #48
2020-11-18 11:44:06 -08:00
Zach Wasserman e7912c2d31 Minor code/comment cleanups (#47)
- Fixes an initialization error panic to a fatal log
2020-11-18 11:10:55 -08:00
Zach Wasserman 0bb9d69ece Add debug endpoints and associated fleetctl commands (#45)
Adds endpoints and fleetctl commands to retrieve various debug profiles
from the Fleet server.

The best summary is from the help text:

```
fleetctl debug
NAME:
   fleetctl debug - Tools for debugging Fleet

USAGE:
   fleetctl debug command [command options] [arguments...]

COMMANDS:
   profile    Record a CPU profile from the Fleet server.
   cmdline    Get the command line used to invoke the Fleet server.
   heap       Report the allocated memory in the Fleet server.
   goroutine  Get stack traces of all goroutines (threads) in the Fleet server.
   trace      Record an execution trace on the Fleet server.
   archive    Create an archive with the entire suite of debug profiles.

OPTIONS:
   --config value   Path to the Fleet config file (default: "/Users/zwass/.fleet/config") [$CONFIG]
   --context value  Name of Fleet config context to use (default: "default") [$CONTEXT]
   --help, -h       show help
```
2020-11-17 17:12:37 -08:00
Zach Wasserman ab94d94da0 Fix fleetctl Windows issues (#40)
- Properly set the path for the config file on Windows.
- Check for appropriate settings for TLS config.

Fixes #39
2020-11-17 16:02:14 -08:00
noahtalerman ecf6fd1c91 Add instructions to connect to Mailhog server in development docs. (#46)
Added walkthrough for users attempting to connect to MailHog server.

Connecting to the simulated mail server allows contributors to interact with features in Fleet UI that require email configuration.
2020-11-17 15:20:46 -08:00
noahtalerman 74700fc2fb Linked development-infra docs from building-the-code docs. (#41)
Added link to development-infrastructure docs at the end of building-the-code docs to walk contributors to the next step of serving Fleet locally.

Added --auth_jwt_key="insecure" flag to fleet serve command in development-infrastructure docs.
2020-11-16 11:50:58 -08:00
billcobbler 618ba56484 Add host additional info filters (#28)
This change adds the ability to filter additional host info via the list hosts endpoint; a continuation from [here](https://github.com/kolide/fleet/pull/2330), but now filtering is accomplished via SQL. 

Additional object without filter:
```
curl 'https://localhost:8080/api/v1/kolide/hosts'
...
"additional": {
        "macs": [
          {
            "mac": "00:00:00:00:00:00"
          },
          {
            "mac": "02:42:c0:a8:10:05"
          }
        ],
        "time": [
          {
            "day": "13",
            "hour": "3",
            "year": "2020",
            "month": "10",
            "minutes": "43",
            "seconds": "11",
            "weekday": "Tuesday",
            "datetime": "2020-10-13T03:43:11Z",
            "iso_8601": "2020-10-13T03:43:11Z",
            "timezone": "GMT",
            "timestamp": "Tue Oct 13 03:43:11 2020 UTC",
            "unix_time": "1602560591",
            "local_time": "1602560591",
            "local_timezone": "UTC"
          }
},
...
```

Additional object with filter:
```
curl 'https://localhost:8080/api/v1/kolide/hosts?additional_info_filters=macs,notreal'
...
"additional": {
        "macs": [
          {
            "mac": "00:00:00:00:00:00"
          },
          {
            "mac": "02:42:c0:a8:10:05"
          }
        ],
        "notreal": null
},
...
```
2020-11-13 16:33:25 -08:00
Zach Wasserman 8f435a95ba Allow @ character in usernames (#37)
PR #9 unintentionally exposed the validation that prevented the @
character in usernames. We have decided there is no reason to block this
character.

Fixes #36
2020-11-13 15:52:20 -08:00
Zach Wasserman 6cbd10965c Add dev infrastructure and docs for Prometheus monitoring (#33)
- Set up a simple example of Prometheus monitoring in the development
  docker-compose.yml.
- Add documentation for configuring Prometheus.
2020-11-12 19:06:56 -08:00
Zach Wasserman 138329c371 Fix markdown documentation links (#35)
- Update/remove broken links
- Add appropriate ignore rules for example URLs and osquery site
2020-11-12 19:06:06 -08:00
Zach Wasserman ebd355c52c Add markdown link check to CI (#34) 2020-11-12 18:20:30 -08:00
Zach Wasserman 89c775dd95 Include fleetctl binary archives in release (#31)
This adds tooling to include fleetctl binaries (in separate .tar.gz
archives for each platform) in the release.
2020-11-12 18:03:01 -08:00
noahtalerman 6536ba6ab7 Removed $ character from all shell commands in docs. (#32)
$ character is now removed from all shell commands in markdown documentation.

When docs are eventually compiling to we can add $ automatically to code blocks.
2020-11-12 13:50:08 -08:00
noahtalerman 227f854d8f Beginning of REST API documentation. Added info for /hosts endpoint. (#29)
The beginning of REST API documentation for Fleet.
Added information and example for the /hosts endpoint.
2020-11-12 12:20:39 -08:00
noahtalerman 0085ba4246 Answer to database connection error added to infrastructure faq. (#30)
My best attempt at steps to solve the common database connection error users receive when installing or updating Fleet.

Inserted 'Why am I receiving a database connection error when attempting to "prepare" the database?'.

Also simplified the answer to "Is Fleet available as a SaaS product?".
2020-11-12 10:09:02 -08:00
Mike Arpaia af96e52a00 Update the Go import paths to new repo name (#27) 2020-11-11 09:59:12 -08:00
Zach Wasserman fb22ec5291 Add transition note to readme (#26) 2020-11-05 08:09:38 -08:00
Mike McNeil ab738f1c34 continuity (#25) 2020-11-05 08:37:29 -06:00
Mike McNeil 6d4fa6959d Create README.md (#24) 2020-11-05 08:35:50 -06:00
Zachary Wasserman ecacbbd663 Update Docker image name in Makefile (#23)
One additional spot that was missed previously.
2020-11-04 22:16:51 -08:00
Zachary Wasserman f93a952d20 Changelog for 3.3.0 release (#18) 2020-11-04 21:52:43 -08:00
Zachary Wasserman f08557d33b Update Slack channel names (#22) 2020-11-04 21:52:20 -08:00
noahtalerman ecacbf212b Changes to additional links for transition to fleetdm (#21) 2020-11-04 21:48:39 -08:00
Zachary Wasserman 394e5a2e86 Update Docker image name in Makefile (#19) 2020-11-04 21:36:25 -08:00
noahtalerman 0ff621670c Changed the Help link and other links to fleetdm/fleet documentation 2020-11-04 21:36:06 -08:00
Zachary Wasserman a1720db58e Fix regression creating packs (#17)
This is another error introduced in
https://github.com/kolide/fleet/pull/2327 we did not catch previously
due to insufficient unit test coverage. Test is now added.
2020-11-04 21:18:02 -08:00
Zachary Wasserman 1fbc4b3035 Remove erroneously added __debug_bin (#16) 2020-11-04 20:51:44 -08:00
Mike McNeil d4a39de607 Branding (shallow first pass) (#12)
This is just favicons and pngs - more to do here later.  But this does the easy ones.
2020-11-04 20:48:01 -08:00
Zachary Wasserman e452cc6a8a Add file carving support (#15)
- Add endpoints for osquery to register and continue a carve.
- Implement client functionality for retrieving carve details and contents in fleetctl.
- Add documentation on using file carving with Fleet.

Addresses kolide/fleet#1714
2020-11-04 20:45:16 -08:00
Zachary Wasserman 43eb8bcef5 Update README URLs (#14) 2020-11-04 20:36:49 -08:00
Mike McNeil 660289e89d Add GOPATH tips to contributor docs (#13) 2020-11-04 20:29:27 -08:00
noahtalerman 8e37b8938c Implement osquery options page (#11)
Created 3 new components: <OsqueryOptionsPage /> , <OsqueryOptionsForm />, and <YamlAce />

The <OsqueryOptionsPage /> component is rendered at the new route /admin/osquery. The user navigates to this route by selecting the "Osquery Options" sub-navigation in the admin dropdown menu.

On the Osquery Options page, the user is presented with a ACE editor filled with the current osquery options. The current osquery options are retrieved from the serve when the page component mounts. These current osquery options are stored in the osquery slice of state.

Clicking "UPDATE OPTIONS" will trigger a form submit and hit the v1/kolide/spec/osquery_options endpoint if the yaml is valid. If the yaml is not valid, an error message is presented to the user with details on what the error is and where it occurred. If the yaml is valid, the osquery options will be updated even if the options haven't change.
2020-11-04 18:00:51 -08:00
Mike McNeil 222cdc7115 Update LICENSE (#10)
inspired by https://gitlab.com/gitlab-org/gitlab/-/blob/22ba38a69849c4f976b653a55c88aaa4ca4abfc0/LICENSE
2020-11-04 19:57:51 -06:00
Zachary Wasserman a36bef6c16 Improve "Add New Host" dialog (#8)
- Allow download of enroll secret, server certificate, and flagfile.
- Hosts can now be added following instructions directly.
2020-11-04 17:07:58 -08:00
Zachary Wasserman 7c923d9d19 Implement fleetctl user create (#9)
- Allow user creation via `fleetctl user create`
- Cleanup and rename existing methods for clarity

Fixes https://github.com/kolide/fleet/issues/2306
2020-11-04 17:06:55 -08:00
Zachary Wasserman fca44bb032 Make enroll secret and node key validation case-sensitive (#5)
- Modify column collation to make comparisons case-sensitive.
- Add tests for case-sensitivity.

Fixes https://github.com/kolide/fleet/issues/2333
2020-11-04 12:09:00 -08:00
noahtalerman d604c6a106 Updated 500 page copy and added button to reveal error message. (#1)
Updated the 500 page component to render a "SHOW ERROR" button.

This button is only rendered if the errors slice of the state contains an error and the base property exists. Otherwise, the 500 page will not render this button because there is no error message to show the user.

Created a errors500 reducer and actions to update the state tree when a 500 error occurs. When 500 error occurs, the errors slice of state is updated with the error object. When the 500 page component unmounts the error object is removed from state.

Demo: https://www.loom.com/share/b87c4aee42274e7bb553e703d3f950c6
2020-11-04 12:07:53 -08:00
Zachary Wasserman 2e333a4e2e Fix regression in list hosts (#6)
Changes in https://github.com/kolide/fleet/pull/2327 broke the MySQL
syntax for listing hosts with online status. This was not caught due to
the lack of a unit test for the functionality. This PR adds a unit test
and fixes the regression.
2020-11-04 12:03:06 -08:00
Zachary Wasserman f06c3cff93 Add pretty-printing option for query results (#4)
Use --pretty to enable this feature.

This will likely break on non-ANSI terminals.
2020-11-04 09:56:57 -08:00
Zachary Wasserman 72b0efca62 Fix handling of --quiet flag in fleetctl query (#2)
Fixes an issue in which the status was erroneously displayed after results were printed.
2020-11-03 15:50:36 -08:00
noahtalermanandMike McNeil be28d8e3c6 Update build documentation (#3)
Co-authored-by: Mike McNeil <7157539-mikerlmcneil@users.noreply.gitlab.com>
2020-11-03 15:18:45 -08:00
Brendan Shaklovitz c6b285c56e Remove soft-deletion pattern (#2327)
* Perform migration to delete any entries with `deleted` set, and
subsequently drop columns `deleted` and `deleted_at`.
* Remove `deleted` and `deleted_at` references.

Closes #2146
2020-10-22 10:51:26 -07:00