Commit Graph

166 Commits (d7877164b62a694bb2fafa3b6aefa58d6686cb01)

Author SHA1 Message Date
Michael Desa e27a1371b0 feat(platform): add keyvalue log interface with boltdb implementation
test(platform): add conformance test for key value log

review(platform): add example keyvalue log usage

review: make changes suggested in pr review
2018-10-31 09:41:55 -04:00
Kelvin Wang 74ef984e53 add http for telegraf 2018-10-30 14:00:10 -04:00
Chris Goller 7756f8dc6a feat(cmd/influxd): add log levels 2018-10-30 02:27:51 -05:00
Chris Goller 818d54df35 test(bolt): add bolt database creation test 2018-10-26 17:12:39 -05:00
Chris Goller 6f10173a2d fix(bolt): create bolt/data dir if not exist 2018-10-26 17:12:39 -05:00
Jade McGough 91dbd48258
feat(http): validate dashboard cell updates (#1199)
* feat(http): validate dashboard cell updates

* run formatter
2018-10-25 16:05:12 -07:00
Jade McGough da7086c325 feat(bolt): clean up user resource mappings after deleting resources 2018-10-25 01:20:06 -07:00
Michael Desa 3d653521d2 feat(platform): add meta field to dashboards
feat(testing): test for meta field on dashboard conformance tests

feat(http): ensure that dashboard json is encoded correctly

feat(bolt): update dashboard meta appropriately

fix(testing): use equate empty in dashboard test for empty cells list

feat(inmem): add meta to dashboards for conformance tests

feat(http): add support for dashboard conformance tests

feat(platform): add find options to FindDashboards method on dashboard svc

feat(testing): use find options in dashboard conformance tests

feat(mock): add find options to dashboard service

feat(bolt): add find options to dashboard service

feat(inmem): add find options to dashboard service

feat(http): add find options to dashboard service

feat(http): update dashboard swagger specification

fix(platform): fix mistakes after rebase

review(http): use default find options for dashboards
2018-10-23 13:43:06 -04:00
Chris Goller 814317c3d8 feat(dashboard): add dashboard validation 2018-10-22 20:35:27 -05:00
kelwang 022bdc86d6
Merge pull request #1120 from influxdata/fix/onboarding_change
Fix/onboarding change
2018-10-19 10:59:07 -04:00
Kelvin Wang 285cf3831c changes based on review 2018-10-18 16:33:11 -04:00
Kelvin Wang 60fdf79726 add retention policy 2018-10-18 16:04:21 -04:00
Kelvin Wang a8ac4a931c add telegraf store service 2018-10-17 15:01:04 -04:00
Mark Rushakoff 2958318c1f chore(bolt): log path of bolt file
Now at startup, there will be a log line like:

    Opened bolt database {"log_id": "0B5Oks9W000", "path": "influxd.bolt"}

Which gives a somewhat better idea of what's going on.
2018-10-12 08:14:50 -07:00
Chris Goller b4e1cd4199 tests(http): add tests for creation without IDs 2018-10-12 10:03:06 +02:00
Chris Goller 3be56561d8
test(bolt): add tests for missing orgs and buckets (#1051) 2018-10-11 13:31:46 -05:00
Chris Goller 332caa524e fix(bolt): handle user not found error 2018-10-11 12:06:10 -05:00
Chris Goller 2bea48f15a refactor(testing): rename MustIDFromString to MustIDBase16 2018-10-11 09:54:19 -05:00
Chris Goller 586b5b67c1 fix(bolt): remove extra ID validation checks 2018-10-11 09:54:19 -05:00
Chris Goller b68a98043d refactor(id): update name to IDLength 2018-10-11 09:54:19 -05:00
Leonardo Di Donato 85d78a13da fix(bolt): user resource mapping using uint64 IDs 2018-10-11 09:54:18 -05:00
Leonardo Di Donato 5db4276a71 fix(platform/id): improvements on code using uint64 IDs
Signed-off-by: Leonardo Di Donato <leodidonato@gmail.com>
Co-Authored-By: Lorenzo Fontana <lo@linux.com>
2018-10-11 09:54:18 -05:00
Leonardo Di Donato 6ceb351759 fix(bolt): test passes with uint64 IDs 2018-10-11 09:54:18 -05:00
Leonardo Di Donato 3ebc6548e3 fix(bolt/source): insert missing organization IDs
Before was working since 0 ids (eg., organization ID of empty source
istances) were valid ones. Not anymore.
2018-10-11 09:54:18 -05:00
Leonardo Di Donato e582dcab15 fix(bolt/scraper): refactoring for uint64 IDs 2018-10-11 09:54:18 -05:00
Leonardo Di Donato 3932729a03 fix(bolt/macro): refactoring for uint64 IDs 2018-10-11 09:54:18 -05:00
Leonardo Di Donato e534efcf35 wip(bolt): initial fixes for uint64 platform.IDs
Signed-off-by: Leonardo Di Donato <leodidonato@gmail.com>
Co-Authored-by: Lorenzo Fontana <lo@linux.com>
2018-10-11 09:54:18 -05:00
Leonardo Di Donato 8d7f06cf4b feat(platform/id): using uint64 for platform.IDs
Signed-off-by: Leonardo Di Donato <leodidonato@gmail.com>
Co-Authored-by: Lorenzo Fontana <lo@linux.com>
2018-10-11 09:54:18 -05:00
Jade McGough 4a59e877c7
Merge pull request #974 from influxdata/filter-owners
Filter dashboards by owner
2018-10-08 18:57:09 -07:00
Jade McGough 2f73208681 test for finding multiple dashboards by id 2018-10-08 18:56:22 -07:00
Jade McGough d4520bf35d feat(bolt): add filter on resource type for u/r mappings 2018-10-08 18:56:02 -07:00
Jade McGough 8ebeff94ca fix(bolt): update dashboard filter to use multiple IDs 2018-10-08 18:51:16 -07:00
Chris Goller 90494a5309 chore(fmt): fix and simplify go formatting 2018-10-08 17:23:54 -05:00
Michael Desa 13e60ec292 test(bolt): ensure boltdb session service conforms to tests 2018-09-27 15:45:16 -04:00
Michael Desa 138e206c3a feat(bolt): add bolt implementation of session service 2018-09-27 15:44:47 -04:00
kelwang fdbca49c2e
Merge pull request #824 from influxdata/feat/default_ids
feat: add onboarding defaults
2018-09-27 15:26:11 -04:00
Jade McGough 232d87b9ac
feat(bolt): user-resource mapping boltdb implementation (#900)
* add bolt tests for user resource mapping

* add function boilerplate

* add more segfaults

* add create fn for bolt mapping

* initialize user resource mapping bucket

* fix error message

* add find user mapping fn

* fix error message

* implement user resource mapping filter fn

* add rest of user resource mapping filter fn
2018-09-27 12:15:26 -07:00
Kelvin Wang 3552af6386 feat: add onboarding defaults 2018-09-27 15:02:17 -04:00
Michael Desa f7a3f22ef8 feat(platform): add basic auth service
feat(bolt): add boltdb implementation of basic auth service

test(bolt): replace context.TODO with context.Background

feat(bolt): make bcrypt hash function cost injectable
2018-09-25 14:58:02 -04:00
Christopher Henn d8598bd584 feat(http): add MacroService client
Co-authored-by: Chris Goller <goller@gmail.com>
Co-authored-by: Chris Henn <chris@chrishenn.net>
2018-09-20 09:32:04 -07:00
Christopher Henn babab631e8 feat(inmem): add MacroService inmem implementation
Also adds some bolt tests.
2018-09-15 07:51:59 -07:00
Kelvin Wang f636c52fa5 feat(scraper): add scraper lib 2018-09-14 16:59:18 -04:00
Christopher Henn 00b61c948b Implement macros API 2018-09-14 13:45:42 -07:00
Jade McGough 0b70dc99c4
don't store references to internal buckets (#789)
* add types to bucket service tests

* add type to bucket cmd interface

* bucket type needs to be defined in json for POST creations

* rip out bucket type stuff

* remove type from bucket tests

* add InternalBucketID helper fn

* remove more code

* remove org from internal bucket ID
2018-09-14 09:26:59 -07:00
Jade McGough cd30e5a820
add internal system buckets for orgs (#652)
feat(bolt): add internal system buckets for orgs
2018-09-06 09:19:58 -07:00
Chris Goller 4c42d40ca9 docs(http): authorization status is now active or inactive 2018-08-29 13:07:39 -05:00
Chris Goller 40e56333e1 refactor(http): update authorization to use active/inactive status 2018-08-29 13:07:39 -05:00
Chris Goller 8fa72fa35b feat(auth): allow authorizations to be enabled/disabled 2018-08-29 13:07:38 -05:00
Michael Desa 45233d939a feat(platform): add uniform query endpoint for sources
Using query request struct to query resources

Signed-off-by: Lorenzo Fontana <lo@linux.com>

Use query.ProxyRequest instead query.Request

Signed-off-by: Lorenzo Fontana <lo@linux.com>

Proxy request from idpd

Signed-off-by: Lorenzo Fontana <lo@linux.com>

Comments about the desired results

Signed-off-by: Lorenzo Fontana <lo@linux.com>

V1 endpoints working with flux

Signed-off-by: Lorenzo Fontana <lo@linux.com>

Influxql working for v1

Signed-off-by: Lorenzo Fontana <lo@linux.com>
Co-authored-by: Michael De Sa <mjdesa@gmail.com>

V2 influxql query endpoint working

Signed-off-by: Lorenzo Fontana <lo@linux.com>
Co-authored-by: Michael De Sa <mjdesa@gmail.com>
Signed-off-by: Lorenzo Fontana <lo@linux.com>

V2 Flux compiler support

Co-authored-by: Michael De Sa <mjdesa@gmail.com>
Signed-off-by: Lorenzo Fontana <lo@linux.com>

Improve comments in bolt sources and give error on self

Signed-off-by: Lorenzo Fontana <lo@linux.com>
Co-authored-by: Michael De Sa <mjdesa@gmail.com>

Review tests failing

Signed-off-by: Lorenzo Fontana <lo@linux.com>
Co-authored-by: Michael De Sa <mjdesa@gmail.com>

Avoid type casts for compiler types

Signed-off-by: Lorenzo Fontana <lo@linux.com>
Co-authored-by: Michael De Sa <mjdesa@gmail.com>

Using nil instead of dbrp mapping service for influxql v1

Signed-off-by: Lorenzo Fontana <lo@linux.com>

Check if compiler types are valid for influxql

Signed-off-by: Lorenzo Fontana <lo@linux.com>

Organization as query param in the flux external handler

Signed-off-by: Lorenzo Fontana <lo@linux.com>

feat(http): update swagger documentation for flux query endpoint

feat(http): document query endpoint design

The code documented does not currently work. It is indended that this
will be implemented in follow up PRs.

feat(platform): move source to platform package

The source Query endpoint implements what's in the query swagger docs

Signed-off-by: Lorenzo Fontana <lo@linux.com>
Co-authored-by: Michael De Sa <mjdesa@gmail.com>

feat(platform): allow for encoding and decoding of csv dialects

feat(platform): specify dialect in flux page

Co-authored-by: Andrew Watkins <andrew.watkinz@gmail.com>
Co-authored-by: Michael Desa <mjdesa@gmail.com>
2018-08-28 15:53:20 -04:00
Michael Desa 8bc2d33b78 feat(platform): move chronogaf v2 dashboards to platform
test(testing): add tests for dashboards and cells

test(bolt): all conformance tests for dashbaords and cells

fix(bolt): rename dashboardV2Bucket to dashboardBucket

feat(chronograf): introduce v2 dashboards

Co-authored-by: Andrew Watkins <andrew.watkinz@gmail.com>
Co-authored-by: Michael Desa <mjdesa@gmail.com>

chore(chronograf): add tests for v2 dashboard reducer

Co-authored-by: Andrew Watkins <andrew.watkinz@gmail.com>
Co-authored-by: Michael Desa <mjdesa@gmail.com>

chore(chronograf): create dashboard from dashboard index

Co-authored-by: Andrew Watkins <andrew.watkinz@gmail.com>
Co-authored-by: Michael Desa <mjdesa@gmail.com>

chore(chronograf): move tests to same level of heirarchy as file tested

chronograf(chore): implement import dashboard with v2 api

chore(chronograf): delete dashboards from v2 api

chore(chronograf): add source health handler

chore(chronograf): move sources reducer to sources dir

chore(chronograf): remove stutter in notify

WIP stop namespacing by sourceID

chore(chronograf): no longer namespace routes under sources/:sourceID

WIP move dashtimeV1 to ranges

WIP remove CEO

chrore(chronograf): WIP Remove CEO and QueryMaker

chore(chronograf): introduce updateDashboard v2

chore(chronograf): Change cell to view

A dashboard's cell object now only contains positional information
for the cell in it's grid and a reference to the cell's view data.
A cell's view contains all necessary information for the cell's
visualization.

Add react-grid-layout types

chore(chronograf): introduce add cell

chore(chronograf): fix type errors

Not on DashboardPage

feat(platform): add cell methods to dashboard service interface

feat(mock): update dashboard service with cell methods

feat(testing): add cell methods to testing package

feat(bolt): add dashboard cell methods to bolt dashbaord service

feat(http): add cell routes to dashbaord handler

feat(platform): add dependent create/destroy of views from cells

chore(chronograf): introduce update dashboard cells endpoint

WIP update cells FE

fix(http): rename Cells to cells on dashboard cells response

chore(chronograf): re-introduce dashboard cell dragging

feat(platform): add copy dashboard cell to dashboard service

chore(platform): rename cell to view across codebase

feat(bolt): add replace dashboard tests

Move Layouts to Cells

Introduce delete cell

Fix broken test

fix(platform): update route for copying a a dashboard cell

UI for delete cell

Introduce copy cell

feat(platform): add copy view options to AddDashboardCell

feat(bolt): delete views when dashboard is removed.

Cleanup

Fix type errors

Fix links not updating

Remove annotations from RefreshingGraph

Sources and types work

fix(platform): add TODO.go files back

fix(view): rename visualizationType to type in view JSON

Co-authored-by: Deniz Kusefoglu <deniz@influxdata.com>
Co-authored-by: Michael Desa <mjdesa@gmail.com>

fix(dashboardTime): change dashboardID to string

Co-authored-by: Deniz Kusefoglu <deniz@influxdata.com>
Co-authored-by: Michael Desa <mjdesa@gmail.com>

feat(http): add dashboard api to swagger documentation

review(http): fix comments and function naming

feat(http): update sources swagger documentation

review(http): update the swagger to reflect the implementation

feat(platform): add usingView options to POST /dashboard/:id/cells
2018-08-24 13:22:58 -04:00
Michael Desa e954a8063d feat(platform): add ability to query sources
Currently all  that is supported is v1 sources. This code will likely
need revisiting.

Co-authored-by: Andrew Watkins <andrew.watkinz@gmail.com>
Co-authored-by: Michael Desa <mjdesa@gmail.com>
2018-08-08 09:32:44 -07:00
Michael Desa 91c35e7d41 review(bolt): update pr with review comments
dep(platform): run dep ensure
2018-08-07 11:08:51 -04:00
Michael Desa b421b5f522 fix(bolt): use source in oss influxdb bucket service
Co-authored-by: Andrew Watkins <andrew.watkinz@gmail.com>
Co-authored-by: Michael Desa <mjdesa@gmail.com>
2018-08-07 10:45:14 -04:00
Michael Desa 6dbe11b318 feat(bolt): add bucket service to source on retrieval
Co-authored-by: Andrew Watkins <andrew.watkinz@gmail.com>
Co-authored-by: Michael Desa <mjdesa@gmail.com>
2018-08-07 10:45:14 -04:00
Michael Desa 503be5b0ef feat(bolt): add zap logger to bolt client
Co-authored-by: Andrew Watkins <andrew.watkinz@gmail.com>
Co-authored-by: Michael Desa <mjdesa@gmail.com>
2018-08-07 10:45:14 -04:00
Michael Desa 40e504340f feat(bolt): add boltdb implementation of sources service
Co-authored-by: Andrew Watkins <andrew.watkinz@gmail.com>
Co-authored-by: Michael Desa <mjdesa@gmail.com>
2018-08-07 10:45:13 -04:00
Michael Desa 8c87c9d132 revert #442 2018-08-01 14:54:32 -04:00
Leonardo Di Donato c16a855a58 Better naming for the ID length constant 2018-08-01 18:20:59 +02:00
Leonardo Di Donato d3c18e58ae Filter dashboards by valid IDs 2018-08-01 18:20:59 +02:00
Leonardo Di Donato 3191de776d Refactoring code using platform.IDs
Signed-off-by: Leonardo Di Donato <leodidonato@gmail.com>
2018-08-01 18:20:59 +02:00
Leonardo Di Donato 0b235b38cc Refinements to delete authorization refactoring and tests 2018-08-01 18:20:59 +02:00
Leonardo Di Donato 16f92c41cd Refactoring bolt package 2018-08-01 18:20:59 +02:00
Michael Desa cfe907e8f5 feat(chronograf): all chronograf api handler to platform 2018-07-24 15:55:49 -04:00
Michael Desa d0a2f84c07 feat(platform): add dashboards service
feat(platform): add dashboard service interface and associated types

feat(bolt): add bolt implementation ofplatform dashboard service

feat(http): add dashboard http handler and http implementation dashboard service

feat(cmd/idpd): use bolt dashboard service in idpd

test(testing): add conformance test for dashboard service

test(bolt): ensure conforms dashboard service conforms to tests

fix(platform): rename DashboardContents to DashboardCellContents in test

fix(bolt): correct mispelled comments
2018-06-04 08:26:19 -07:00
Michael Desa f654b59662 feat(platform): add boltdb implementation of services
feat(platform): add id to authorization

feat(platform): add user arg to CreateAuthorization method on auth svc

migrate(platform): move idp command to platform directory

This comit did not move the ifql command as it depends on the query
service which has yet to be migrated.

feat(platform): add optional user name to authorization struct

feat(platform): add organization name to bucket struct

Additionally allow filtering buckets by organization name.

feat(prom): ensure that prom auth svc implement base interface

feat(prometheus): add user to create authorization method

feat(prom): drop user string from create authorization

feat(zap): ensure that zap auth svc implements base service interface

feat(zap): add user to create authorization method

feat(zap): drop user string from create authorization

feat(http): add ids to authorization service

feat(http): ensure that http authoriztaion service implements auth svc interface

feat(http): use authorization ids in authorization handler

squash(http): add check for http status accepted in authorization service

feat(http): clean up authorization service and handlers

feat(http): drop user string from create authorization

fix(http): normalize the http authorization service

feat(http): normalize bucket service and handler methods

Additonally, we added support for DELETE bucket

feat(http): add delete user handler

Additionally, there was a bit of general cleanup

feat(http): add delete route for organization handler and service

Did a bit of additional cleanup of the http code.

test(testing): add service conformance tests

test(testing): add organization service conformance tests

test(testing): add conformance test for orgs service

Additionally, there was a bit of cleanup in the users service tests

test(testing): add conformance test for authorizations service

test(testing): update auth tests to validate that user exists

test(testing): update authorization conformance tests with user name

test(testing): update bucket conformance tests to include organizations

feat(bolt): add bolt implementation services

feat(bolt): add bolt implementation of organization service

feat(bolt): add bolt implementation of users service

feat(bolt): add bolt implementation of authorization service

feat(bolt): add user to create authorization method

feat(bolt): drop user string from create authorization

fix(bolt): set user name on authorization after put

feat(bolt): update bucket servie to include organizations

feat(bolt): add dependent destroy of resources

feat(cmd/idpd): use bolt services in platform server

feat(cmd/idpd): use bolt organization service in platform server

feat(cmd/idpd): use bolt users service in plaform server

feat(cmd/idpd): use bolt client as authorization service

feat(cmd/idp): show user name in output of auth sub command

feat(cmd/idp): clean up bucket subcommand of idp command

fix(cmd/idp): normalize idp command output for users

fix(cmd/idp): normalize auth subcommand output

feat(cmd/idp): add support for delete organiztion command

migrate(idp): move ifql subcommand of idp to platform
2018-05-21 10:08:22 -04:00
Michael Desa f35f8e3386 feat(bolt): add boltdb implementation of bucket service
fix(bolt): use correct bolt package in test

feat(bolt): add bucket name index to bolt bucket service

feat(bolt): establish pattern for bolt back servies
2018-05-16 11:45:10 -04:00