Commit Graph

67 Commits (3edd1bf52c09989c2c2cfce8632c2c00aa244794)

Author SHA1 Message Date
Jared Scheib 959b387f61 Introduce ability to edit a dashboard cell
* Correct documentation for dashboards

* Exclude .git and use 'make run-dev' in 'make continuous'

* Fix dashboard deletion bug where id serialization was wrong

* Commence creation of overlay technology, add autoRefresh props to DashboardPage

* Enhance overlay magnitude of overlay technology

* Add confirm buttons to overlay technology

* Refactor ResizeContainer to accommodate arbitrary containers

* Refactor ResizeContainer to require explicit ResizeTop and ResizeBottom for clarity

* Add markup and styles for OverlayControls

* CellEditorOverlay needs a larger minimum bottom height to accommodate more things

* Revert Visualization to not use ResizeTop or flex-box

* Remove TODO and move to issue

* Refactor CellEditorOverlay to allow selection of graph type

* Style Overlay controls, move confirm buttons to own stylesheet

* Fix toggle buttons in overlay so active is actually active

* Block user-select on a few UI items

* Update cell query shape to support Visualization and LayoutRenderer

* Code cleanup

* Repair fixture schema; update props for affected components

* Wired up selectedGraphType and activeQueryID in CellEditorOverlay

* Wire up chooseMeasurements in QueryBuilder

Pass queryActions into QueryBuilder so that DataExplorer can provide
actionCreators and CellEditorOverlay can provide functions that
modify its component state

* semicolon cleanup

* Bind all queryModifier actions to component state with a stateReducer

* Overlay Technologies™ can add and delete a query from a cell

* Semicolon cleanup

* Add conversion of InfluxQL to QueryConfig for dashboards

* Update go deps to add influxdb at af72d9b0e4ebe95be30e89b160f43eabaf0529ed

* Updated docs for dashboard query config

* Update CHANGELOG to mention InfluxQL to QueryConfig

* Make reducer’s name more specific for clarity

* Remove 'table' as graphType

* Make graph renaming prettier

* Remove duplicate DashboardQuery in swagger.json

* Fix swagger to include name and links for Cell

* Refactor CellEditorOverlay to enable graph type selection

* Add link.self to all Dashboard cells; add bolt migrations

* Make dash graph names only hover on contents

* Consolidate timeRange format patterns, clean up

* Add cell endpoints to dashboards

* Include Line + Stat in Visualization Type list

* Add cell link to dashboards

* Enable step plot and stacked graph in Visualization

* Overlay Technologies are summonable and dismissable

* OverlayTechnologies saves changes to a cell

* Convert NameableGraph to createClass for state

This was converted from a pure function to encapsulate the state of the
buttons. An attempt was made previously to store this state in Redux,
but it proved too convoluted with the current state of the reducers for
cells and dashboards. Another effort must take place to separate a cell
reducer to manage the state of an individual cell in Redux in order for
this state to be sanely kept in Redux as well.

For the time being, this state is being kept in the component for the
sake of expeditiousness, since this is needed for Dashboards to be
released. A refactor of this will occur later.

* Cells should contain a links key in server response

* Clean up console logs

* Use live data instead of a cellQuery fixture

* Update docs for dashboard creation

* DB and RP are already present in the Command field

* Fix LayoutRenderer’s understanding of query schema

* Return a new object, rather that mutate in place

* Visualization doesn’t use activeQueryID

* Selected is an object, not a string

* QueryBuilder refactored to use query index instead of query id

* CellEditorOverlay refactored to use query index instead of query id

* ConfirmButtons doesn’t need to act on an item

* Rename functions to follow convention

* Queries are no longer guaranteed to have ids

* Omit WHERE and GROUP BY clauses when saving query

* Select new query on add in OverlayTechnologies

* Add click outside to dash graph menu, style menu also

* Change context menu from ... to a caret

More consistent with the rest of the UI, better affordance

* Hide graph context menu in presentation mode

Don’t want people editing a dashboard from presentation mode

* Move graph refreshing spinner so it does not overlap with context menu

* Wire up Cell Menu to Overlay Technologies

* Correct empty dashboard type

* Refactor dashboard spec fixtures

* Test syncDashboardCell reducer

* Remove Delete button from graph dropdown menu (for now)

* Update changelog
2017-03-23 17:12:33 -07:00
Chris Goller 8dc012aeac Update to fix go linter issues 2017-03-06 10:11:52 -06:00
Chris Goller bbd899cecb Merge branch 'master' into feature/#54-tr-enterprise-client
Conflicts:
	bolt/internal/internal.pb.go
2017-02-24 13:02:32 -06:00
Chris Goller c784a6260e Add tests for bolt user store 2017-02-21 22:15:22 -06:00
Chris Goller 0c5e5b3c5b Fix bolt sources go vet 2017-02-21 22:15:07 -06:00
Chris Goller 451c5d0e31 Update user bolt bucket to be different b/c schema change 2017-02-21 18:48:25 -06:00
Chris Goller 7653dfdfec Add get of all users for a data source 2017-02-17 15:13:51 -06:00
Chris Goller 9b24351732 Refactor users and add client usersstore 2017-02-17 13:37:00 -06:00
Jade McGough 8cc684588e add metaURL to source 2017-02-09 23:14:04 -06:00
Chris Goller 7deaf845a7 Merge pull request #852 from influxdata/feature/kapacitor-detail-field
Update kapacitor alert rule to have detail field
2017-02-08 20:50:48 -06:00
Chris Goller 98198dbf5b Update kapacitor alert rule to have detail field 2017-02-07 17:09:14 -06:00
Chris Goller 1522dc6e4e Remove explorations from backend server 2017-02-01 15:09:02 -06:00
Jade McGough fdb6de3503 fix bugs 2017-01-27 04:51:31 -08:00
Jade McGough 607aa033f4 augment boltdb to store dashboard query objects 2017-01-27 04:29:38 -08:00
Jade McGough e74b92a466 fix dashboard unmarshalling 2017-01-27 01:23:19 -08:00
Chris Goller 439a4d32e8 Add insecureSkipVerify option to source to accept all influxdb certs
The insecureSkipVerify defaults to false, but when true, instructs
the server to accept any certificate coming from the InfluxDB server.
2017-01-04 19:35:07 -06:00
Jade McGough ffe9943212 clean up pointer usage 2016-12-15 13:37:11 -08:00
Jade McGough 00f66e7593 fix bugs 2016-12-15 11:27:06 -08:00
Jade McGough 4a92be218b dashboard, not dashboards 2016-12-15 00:50:38 -08:00
Jade McGough 0fd1cc7861 be sure to create dashboardsbucket in bolt 2016-12-15 00:49:43 -08:00
Jade McGough 8bc8ba151e formatting 2016-12-14 12:12:20 -08:00
Jade McGough 43464f6008 add update func to dashboards 2016-12-14 00:12:36 -08:00
Jade McGough 8f939f8fbf omg it compiled 2016-12-13 23:56:26 -08:00
Jade McGough cd627b47ff wow did it actually just compile? 2016-12-13 23:22:54 -08:00
Jade McGough ccf93b4781 fix errors 2016-12-13 22:57:52 -08:00
Jade McGough aeefafdc29 fix issues in dashboards internal 2016-12-13 16:19:42 -08:00
Jade McGough 4cd1037ce0 update internal.pb.go 2016-12-13 03:07:24 -08:00
Jade McGough 07fa7a6df1 add and get methods for dashboard 2016-12-13 02:44:19 -08:00
Jade McGough 42af276f7a add marshal/unmarshal for dashboards 2016-12-13 02:25:26 -08:00
Jade McGough 70e64b6baf WIP 2016-12-08 19:28:40 -08:00
Jade McGough 168d1a9679 add type to cell interface 2016-12-06 02:48:12 -08:00
Jade McGough b72e73b7ee add type to marshal/unmarshal 2016-12-05 21:46:30 -08:00
Jade McGough f3650d6ce4 add type to Cell 2016-12-05 21:27:47 -08:00
Chris Goller 66ac6af136 Update layout ylabel and yrange to be properties of the query. 2016-11-30 14:13:15 -08:00
Chris Goller 28bccfdcb2 Add ylabels and yranges to layouts 2016-11-30 14:04:32 -08:00
Tim Raymond cee5c85116 Fix template layout ordering
This divides templates into two classes: autoflow and static. This is
controlled by a boolean "autoflow" property on templates. Any autoflow
templates that will be rendered for a host, have their cells arranged in
a left-to-right, top-to-bottom fashion.

Static templates, are assumed to have precise positioning information
for their graphs. The only adjustment made to them will be a translation
of their Y coords so they do not overlap other layouts.

The autoflow templates, after processing, become a static layout as
defined above and are positioned accordingly.
2016-11-29 17:41:19 -05:00
Will Piers 411e2f68dc Dont render routes if user is not authenticated 2016-11-21 14:20:33 -07:00
Will Piers d3da8998e8 Add users endpoints/storage plus me endpoint 2016-11-21 14:19:57 -07:00
Chris Goller 88d60c9807 Fix tab spacing in protobuf and swagger 2016-11-18 16:07:53 -06:00
Chris Goller 923a9d3c31 Update sources endpoint to take optional telegraf database name. 2016-11-18 16:07:53 -06:00
Chris Goller 40190028e3 Fix problems found by https://github.com/dominikh/go-staticcheck 2016-11-14 11:04:32 -06:00
Chris Goller 2c0a5c0b25 Merge pull request #403 from influxdata/bugfix/tr-singular-default-source
Make API guarantee one default source at all times
2016-11-08 11:57:13 -06:00
Tim Raymond 9c7c116650 Make argument order of setRandomDefault consistent
Most of the other private CRUD methods have a consistent argument order
of a context, a source, then a transaction. setRandomDefault had two of
these args transposed, so this swaps them to be consistent with the rest
of the methods.
2016-11-08 12:29:29 -05:00
Tim Raymond 5e39e4602a Make context.Context the first argument
This is the convention.
2016-11-08 12:14:06 -05:00
Tim Raymond ff5f57cecc Prevent deadlocks with source default enforcement
Previously, the logic to enforce on default source relied on the
public-facing CRUD methods already provided by SourcesStore. This was
prone to deadlocks due to the possibility of acquiring a transaction
within a transaction.  This extracts the logic that was performed within
the transactions of each CRUD action and makes the private methods that
receive a *bolt.Tx.  This allows the convenience methods that enforce
default source to use this private API and provide the transaction from
its caller. This ensures that there is only ever one transaction
acquired by each expored
CRUD method.
2016-11-08 12:09:35 -05:00
Chris Goller 78e9573c28 Add wheres to layouts 2016-11-07 20:35:46 -06:00
Tim Raymond 3191ef31d2 Enforce default constraints on first/last source
Whenver sources are present, there should be exactly one default source.
Prior to this commit, it was possible to add the first source as a
non-default source and circumvent this invariant. This unfortunately
requires a bit of special-casing logic in s.Add and requires a query to
fetch the number of sources currently persisted.

Tests have been added to cover this as well as deleting the final
source, to ensure that there aren't any odd indexing panics that might
result from trying to find another candidate default source when
deleting.
2016-11-07 18:13:23 -05:00
Tim Raymond 44dd7665ea Extract Default source enforcement logic
Enforcing the constraint that there be exactly one default source
whenever there are sources present isn't really a concern of the
traditional CRUD methods that are provided by SourcesStore. This makes
this separation a little more explicit and provides a place to glue some
documentation onto what would otherwise be a confusing bit of business
logic in the write path of SourcesStore.
2016-11-07 18:13:23 -05:00
Tim Raymond 0108323f04 Auto-set default source on Add and Delete
Previously, when adding a new default source, it was possible to create
more than one default source, since the previous default would not be unset.

Implementing this revealed another issue where deleting the default
source would leave no default set. If the default source is deleted now,
another source is chosen to be the new default.
2016-11-07 18:13:23 -05:00
Tim Raymond bccc4976b6 Enforce single default source on update
This ensures that there will only be on default source upon setting a
new default by unsetting the default flag on all other sources. This
only happens when the source to be updated has Default set to true to
avoid a performance hit when updating other attributes.
2016-11-07 18:13:23 -05:00