Commit Graph

10794 Commits

Author SHA1 Message Date
Zachary Wasserman
262a48f8eb Datastores for buffering distributed query results (#346)
A new datastore interface is needed for buffering incoming distributed query results to be sent to the client. This PR attempts to define and implement that interface.

It is intended that the ReadChannel() method be used by the goroutine that will push query results down a websocket to the client. Passing the results through this channel will allow that goroutine to perform a select on both the channel and the websocket, in order to properly handle IO.
2016-10-31 15:51:19 -07:00
Zachary Wasserman
0faa3a55fb Make context imports consistent (#359) 2016-10-31 15:18:05 -07:00
Mike Arpaia
c5339ddb76 Fixing bug where non-updated query object is returned (#361) 2016-10-31 18:00:04 -04:00
Mike Arpaia
4f83220870 Add description field to Query (#358) 2016-10-31 17:05:02 -04:00
Mike Stone
cd7f925fdb Typescript (#355) 2016-10-31 17:02:06 -04:00
Zachary Wasserman
41d2d9ca57 Add queries and labels in dev mode (#349) 2016-10-31 11:11:27 -07:00
Mike Stone
64d1924af4 Save query form (#353)
* Removes SaveQuerySection

* Updates to NewQuery & SaveQueryForm

* SaveQueryFormModal

* Load the SaveQueryFormModal on "Save Query" click

* Run query button

* hide modal form after submit

* Disable run query btn without selected targets
2016-10-31 14:08:54 -04:00
Mike Arpaia
023729c1a6 Organizing linters in Makefile (#356) 2016-10-31 09:56:13 -04:00
Kyle Knight
4c6c0a2b05 Adding scss-lint and cleaning up styles (#354) 2016-10-28 16:25:57 -05:00
Kyle Knight
faf58c9019 Login/Logout Restyling & Code Cleanup (#338) 2016-10-28 10:01:08 -05:00
Mike Stone
e2a5502e21 Select targets (#340)
* Api client get targets

* Allow entities to parse full api response

* responsive nav style fixes

* Add disabled prop to button

* Add targets from API to target select input

* customize target rendering in input field

* call API on select target input change

* display # hosts selected

* Adds new icons to icon font

* Customize select targets input options

* Update directory structure

* restructure select targets input

* Adds hosts to labels

* Host modal styles

* ShadowBoxInput component

* TargetInfoModal for labels

* consistent entity response in api client stubs

* Fix bug removing multiple hosts in target select input

* change Button component to use css classes
2016-10-27 12:14:30 -04:00
Victor Vrantchan
950586c100 update datastore logger (#344)
remove dependency on logrus
adapt go-kit/log interface to gorm logger
allow debug logging flag
2016-10-25 11:30:14 -04:00
Victor Vrantchan
efffe50a55 update mysql test setup (#343)
reuse a single conneciton pool
close connection gracefully at the end of tests
setup and teardown tables in between each test
2016-10-25 11:01:14 -04:00
Mike Stone
ee3d96eb53 Update eslint (#337)
* Updates eslint packages

* Expected parentheses around arrow function argument having a body with curly braces

* Prop type `object` is forbidden

* Visible, non-interactive elements should not have mouse or keyboard event listeners

* Prop type is defined but not used

* Unexpected use of file extension "jsx"

* Expected 'this' to be used by class method

* HTML entities must be escaped

* Prevent default behavior on more options button click
2016-10-21 19:13:41 -04:00
Mike Stone
aa275751b2 Client side query validation (#335)
* validate query text

* Update structure of submitted SaveQueryForm data

* form calls correct prop function when invalid query text

* Lowercase directory names
2016-10-21 17:58:13 -04:00
Mike Stone
10c32bc47f Adds missing packages for style imports (#336) 2016-10-21 17:22:57 -04:00
Kyle Knight
b0da10cd4d Allow SCSS to import globs (#332) 2016-10-21 11:57:33 -04:00
Zachary Wasserman
d2e31146c6 Fix bugs with password resets (#330)
- Permissions error with admin forced password reset
- Redirecting on successful admin forced password reset
- URL fix for forgot password reset
- Use JWT key for password reset request
2016-10-20 15:09:51 -04:00
Mike Stone
a81f08b07b Sidepanel refactor (#329)
* Moves side panels into the side_panel directory

* Adds SecondarySidePanelContainer component

* Renames MainSidePanel to SiteNavSidePanel
2016-10-20 08:43:25 -04:00
Mike Arpaia
de0141f7df Removing extraneous # in Makefile (#331) 2016-10-19 18:14:26 -04:00
Mike Arpaia
c07702330d Cleaning JavaScript imports and if statements (#327)
* Moving entityGetter to utility folder

* Import whitespace and if statement braces

* newlines between multi-line if's
2016-10-19 16:22:18 -04:00
Mike Arpaia
bdee0516e6 Removing sqlite from the codebase (#324) 2016-10-19 10:46:33 -04:00
Mike Arpaia
98ca32b783 Complete, working inmem datastore implementation (#319) 2016-10-17 15:30:47 -04:00
Mike Stone
1acd011ca9 Show hosts page (#311)
* Adds manage hosts page and improves side bar functionality

* API client get hosts

* Adds hosts to redux state

* Adds host details component

* Manage hosts page renders host details

* ElipsisMenu component

* Add ElipsisMenu to HostDetails

* Adds HOC to detect clicks outside component

* clicks outside ElipsisMenu close the tooltip

* Adds icons to host details component
2016-10-17 14:55:03 -04:00
Zachary Wasserman
05cb15d63c Fix pointer handling in inmem nextID (#323) 2016-10-17 13:11:23 -04:00
Jason Meller
e38dd40699 Update kolidecons to the latest version (#321) 2016-10-17 12:06:32 -04:00
Zachary Wasserman
f9bb9de665 Add ordering options for List* methods (#318) 2016-10-17 10:01:14 -04:00
Mike Stone
b57514e9d2 Redirect users to correct location after login (#316) 2016-10-17 09:27:22 -04:00
Zachary Wasserman
1597ad23a4 Fix NewHost bug introduced in #312 (#317) 2016-10-16 07:56:20 -04:00
Zachary Wasserman
4100eea2a8 Add detail_update_time in createDevHosts (#315) 2016-10-14 15:32:55 -07:00
Mike Stone
beda051de2 Show invited users (#297)
* Adds loadAll action to redux entity config

* API Client get invites

* Add invites to the user management page

* Updates user block styles on user management page

* Submit modal form on enter

* Modify details form styles

* Enter submits edit user form

* Removes unused admin dashboard page

* API Client - revoke invites

* Delete invite entities in redux

* Revoke invites from admin manage users page

* Show success flash message after user invite is revoked
2016-10-14 17:08:57 -04:00
Zachary Wasserman
daeecfb244 Fix bug in inmem ID generation (#312)
Fixes #308
2016-10-14 09:15:04 -07:00
Zachary Wasserman
d9b98b22d6 Minor cleanup in service_invites_test (#313) 2016-10-14 09:01:26 -07:00
Zachary Wasserman
4b88ae6e2c Apply consistent naming conventions across server files (#310) 2016-10-14 08:59:27 -07:00
Zachary Wasserman
106eae4515 Update os_version test data to reflect real data (#314) 2016-10-13 14:56:02 -07:00
Zachary Wasserman
7f636aef4f Add pagination to List* endpoints (#309)
- Introduce kolide.ListOptions to store pagination params (in the future it can
  also store ordering/filtering params)
- Refactor service/datastore methods to take kolide.ListOptions
- Implement pagination
2016-10-13 11:21:47 -07:00
Zachary Wasserman
f9fa3e289f Return host 'status' with host endpoints (#307) 2016-10-12 14:41:35 -07:00
Mike Arpaia
01f20372f2 Populate the in-memory database with fake hosts (#304)
* Populate the in-memory database with fake hosts

Similarly to how we create two fake users, this PR adds two fake hosts to
the in-memory database that is used in dev mode.

* using more realistic physical memory values
2016-10-12 15:19:27 -04:00
Victor Vrantchan
93eaae7454 Lowercase strings which should be case insensitive, like email and username. (#302)
Fixes #299
Closes #300
2016-10-12 12:35:34 -04:00
Victor Vrantchan
f6a3fafd2c option to use real SMTP config in dev mode (#301)
* move devMode fixture creation to separate functions

* use real SMTP server if SMTP config is provided in dev mode
2016-10-12 12:35:14 -04:00
Mike Arpaia
7b5021fb14 Turning the GC off at build-time on Windows (#303)
The way that you define environment variables for a single command
is slightly different than how it's done on nix. This PR adds a simple
switch to the Makefile to use the correct approach on the appropriate
operating system.
2016-10-12 12:25:59 -04:00
Victor Vrantchan
ae1e4d9bf0 increasing the heap size improves go build speed. (#298)
set GOGC=off to reduce the time it takes to `go build` when starting with no compiled dependencies.
2016-10-12 08:36:31 -04:00
Victor Vrantchan
337822fde3 remove unused cors headers (#296)
no need for CORS middleware since we're using the same origin for the frontend.
2016-10-11 17:10:20 -04:00
Mike Stone
86d2319170 Bug - authenticate on refresh (#295)
* Saves user in state on login success

* stop storing user token in state
2016-10-11 14:50:18 -04:00
Zachary Wasserman
5d0cac882a Move API responses under top-level keys (#292) 2016-10-11 09:22:11 -07:00
Mike Stone
58c3733524 Add hosts (#294)
* New hosts route

* Adds source code pro font

* New Host Page

* make Icons clickable

* Adds clipboard icon

* highlight icon & show helper text when text copied

* Method 2 text

* Fixes Firefox bug

* Fix spelling error
2016-10-11 12:10:41 -04:00
Mike Stone
2c17e641cb Invite new users (#290)
* API client - invite users

* configure invites as a redux entity

* Invite user form submits invite from user management page
2016-10-11 11:34:52 -04:00
Mike Stone
23ffa5be62 Query side panel (#269)
* QuerySidePanel component

* Adds all osquery table names to ace editor mode

* kolide theme for strings

* Detect OS from browser

* Show utility and specs availability as 'All Platforms'

* Show column description as alt text
2016-10-11 11:32:39 -04:00
Zachary Wasserman
24bb68b910 Rename GetAll* methods to List* (#291) 2016-10-07 10:26:48 -07:00
Mike Stone
db57aaa1fc Filter unchanged attributes when updating user (#293)
* Only send changed user attributes to the server

* Improve flash message styles

* Do not allow admins to demote or disable their own account

* Disable admin actions against self
2016-10-07 13:07:02 -04:00