Go to file
Pavel Zavora 1629655a55 chore: update changelog 2020-09-12 11:43:50 +02:00
.circleci fix: switch port to 8086 2020-09-03 14:40:29 -07:00
.github chore: require flagging in pull request template 2020-08-24 19:15:12 -06:00
authorization Merge remote-tracking branch 'origin/master' into sgc/tsm1 2020-08-11 10:25:01 -07:00
authorizer chore(auth): remove unnecessary URM service from Bucket authorizer (#19060) 2020-08-04 14:37:14 +01:00
bolt Merge remote-tracking branch 'origin/master' into sgc/tsm1 2020-08-26 09:26:43 -07:00
checks chore(task): clean up old maxPermission code (#19432) 2020-08-26 10:26:32 -06:00
chronograf fix: switch port to 8086 2020-09-03 14:40:29 -07:00
cmd feat: Port shard precreation service from InfluxDB 1.x 2020-09-09 13:34:22 -07:00
context refactor: rewrite imports to include the /v2 suffix for version 2 2020-04-03 12:39:20 -05:00
dbrp fix: Speed up tests by disabling bolt fsync 2020-08-03 09:20:51 -07:00
docker fix: switch port to 8086 2020-09-03 14:40:29 -07:00
docs build: remove npm replace with yarn (#14176) 2019-06-21 16:19:42 -07:00
e2e fix: switch port to 8086 2020-09-03 14:40:29 -07:00
endpoints chore: improve code doc 2020-07-30 02:37:51 +02:00
etc fix: switch port to 8086 2020-09-03 14:40:29 -07:00
flux refactor: rewrite imports to include the /v2 suffix for version 2 2020-04-03 12:39:20 -05:00
gather refactor: move v2/v1/models to v2/models 2020-08-03 09:20:51 -07:00
http feat: update BandViewProperties 2020-09-11 10:47:24 -07:00
influxql chore(influxdb): Placate the linter. 2020-08-27 15:46:32 -04:00
inmem feat(kv): add support for WithCursorLimit to ForwardCursor (#17524) 2020-08-26 12:10:00 +01:00
internal chore: Consolidate `v1/internal` to `internal` 2020-09-11 11:37:43 -07:00
jsonweb feat: Add initial OSS-Fuzz testing integration 2020-07-07 11:46:35 -07:00
kit Merge remote-tracking branch 'origin/master' into sgc/tsm1 2020-09-02 11:11:28 -07:00
kv fix(variables): use Update function for Put Variable 2020-09-11 11:48:11 -07:00
label Merge remote-tracking branch 'origin/master' into sgc/tsm1 2020-09-02 11:11:28 -07:00
logger refactor: rewrite imports to include the /v2 suffix for version 2 2020-04-03 12:39:20 -05:00
mock fix(variables): add id to put variable request 2020-09-08 11:26:03 -07:00
models fix: Ensure precision is passed to points parsing 2020-08-31 17:39:52 -07:00
nats chore: Remove several instances of WithLogger (#15996) 2019-12-04 15:10:23 -08:00
notification fix(notification/rule): Include the edge of the boundary we are observing. (#19392) 2020-08-24 10:08:14 -04:00
pkg fix(pkg/csv2lp): do not override existing line part in group annotation #19452 2020-09-12 11:40:54 +02:00
pkger feat: update BandViewProperties 2020-09-11 10:47:24 -07:00
predicate chore: move v2/v1/tsdb → v2/tsdb 2020-08-26 10:46:47 -07:00
prometheus chore: update staticcheck and fix newly identified lint checks (#18737) 2020-06-26 18:54:09 -05:00
query chore(influxdb): Placate the linter. 2020-08-27 15:46:32 -04:00
rand refactor: rewrite imports to include the /v2 suffix for version 2 2020-04-03 12:39:20 -05:00
resource refactor: rewrite imports to include the /v2 suffix for version 2 2020-04-03 12:39:20 -05:00
scripts Merge branch 'master' into chore/merge-master 2020-04-30 09:53:04 -07:00
secret refactor: migrator and introduce Store.(Create|Delete)Bucket (#18570) 2020-07-01 12:08:20 +01:00
session fix(tenant): add support for offset to list urms (#18944) 2020-07-14 19:40:04 +01:00
snowflake refactor: rewrite imports to include the /v2 suffix for version 2 2020-04-03 12:39:20 -05:00
source refactor: rewrite imports to include the /v2 suffix for version 2 2020-04-03 12:39:20 -05:00
storage feat: Implement DELETE FROM and DROP MEASUREMENT 2020-09-11 11:37:43 -07:00
task chore: Closing in goroutine causes race with logging framework 2020-09-09 10:32:06 -07:00
telegraf/plugins fix: switch port to 8086 2020-09-03 14:40:29 -07:00
telemetry chore: update staticcheck and fix newly identified lint checks (#18737) 2020-06-26 18:54:09 -05:00
tenant fix: Add me permission to onboarded auth token (#19501) 2020-09-10 11:59:11 -06:00
testing fix(variables): use Update function for Put Variable 2020-09-11 11:48:11 -07:00
toml fix: Unit test 2020-09-04 15:56:57 -07:00
tools/tmpl refactor: modify tooling to take advantage of go run 2018-10-15 11:01:27 -05:00
tsdb fix: Unit test 2020-09-04 15:56:57 -07:00
ui fix: switch port to 8086 2020-09-03 14:40:29 -07:00
uuid chore: rename imports from platform to influxdb 2019-01-09 20:51:47 -08:00
v1 feat: Implement DELETE FROM and DROP MEASUREMENT 2020-09-11 11:37:43 -07:00
vault fix: switch port to 8086 2020-09-03 14:40:29 -07:00
write feat(cmd/influx/write): enhance the ability to import CSV files using csv2lp library (#18093) 2020-05-28 15:28:45 -07:00
zap refactor: rewrite imports to include the /v2 suffix for version 2 2020-04-03 12:39:20 -05:00
.editorconfig chore(editorconfig): revert editorconfig changes, too much work 2020-06-25 18:16:57 +01:00
.gitignore chore: use go generate to download large tsdb testdata (#18993) 2020-07-22 11:29:22 -04:00
.goreleaser-nightly.yml ci(release): correctly build static binaries for the nightly release (#19022) 2020-07-23 11:46:58 -07:00
.goreleaser.yml fix(release): create static builds for linux amd64 (#18805) 2020-07-01 12:45:54 -05:00
CHANGELOG.md chore: update changelog 2020-09-12 11:43:50 +02:00
CONTRIBUTING.md fix: switch port to 8086 2020-09-03 14:40:29 -07:00
DEVELOPMENT.md fix: switch port to 8086 2020-09-03 14:40:29 -07:00
Dockerfile fix: switch port to 8086 2020-09-03 14:40:29 -07:00
FUZZ.md fix: Edit FUZZ.md 2020-07-30 09:19:26 -07:00
LICENSE Initial commit 2018-05-09 09:17:31 -07:00
Makefile fix: switch port to 8086 2020-09-03 14:40:29 -07:00
README.md fix: switch port to 8086 2020-09-03 14:40:29 -07:00
SECURITY.md feat(security): add SECURITY.md file (#14878) 2019-09-05 12:09:15 -07:00
api-compat.Jenkinsfile chore(Jenkins): Update Golang build container to 1.12 2019-04-12 15:51:21 -04:00
appveyor.yml fix(tasks): Add a log message for run transition clairity (#14321) 2019-07-12 10:10:11 -06:00
auth.go refactor!: replace authorizer.Allowed method with PermissionSet (#17959) 2020-05-13 12:27:46 +01:00
authz.go fix(auth): use init to read envvar once (#19314) 2020-08-12 16:51:31 -04:00
authz_test.go refactor: rewrite imports to include the /v2 suffix for version 2 2020-04-03 12:39:20 -05:00
backup.go feat(storage): implement backup and restore (#16504) 2020-01-21 14:22:45 -08:00
bucket.go feat: resource log 2020-01-23 13:04:06 -05:00
build.go feat(influxdb): Add global BuildInfo 2019-03-14 09:23:53 -07:00
check.go Merge branch 'master' into chore/merge-master 2020-05-12 11:18:25 -07:00
crud_log.go chore(inmem): nuke the duplicative inmem store 2019-12-30 11:04:45 -08:00
dashboard.go feat: update BandViewProperties 2020-09-11 10:47:24 -07:00
dashboard_test.go chore: fix tests 2020-06-25 18:16:57 +01:00
dbrp_mapping.go feat: dbrp service 2020-05-15 12:05:38 +02:00
dbrp_mapping_internal_test.go chore: rename imports from platform to influxdb 2019-01-09 20:51:47 -08:00
dbrp_mapping_test.go refactor: rewrite imports to include the /v2 suffix for version 2 2020-04-03 12:39:20 -05:00
delete.go revert(storage): Revert changes from 1501351 2020-08-24 10:08:46 -07:00
document.go fix(http): refactor document service and fix auth 2020-03-09 20:32:31 +01:00
duration.go refactor(tasks): use go Time for Task CreatedAt, UpdatedAt, LatestCompleted, Offset (#15672) 2019-11-12 17:13:56 -08:00
env feat: add support for pkg-config (#17036) 2020-02-28 11:08:21 -06:00
error.go chore: rename imports from platform to influxdb 2019-01-09 20:51:47 -08:00
errors.go feat(http): add configurable limit to points batch size on write endpoint (#16469) 2020-01-10 11:02:44 +00:00
errors.md feat(errors): add errors lib 2018-09-07 21:45:47 -05:00
errors_test.go refactor: rewrite imports to include the /v2 suffix for version 2 2020-04-03 12:39:20 -05:00
flags.yml revert(tasks): Revert incompatible commits 2020-08-26 09:44:21 -07:00
go.mod feat: Port 1.x retention policy enforcement service 2020-09-09 10:32:06 -07:00
go.sum build(flux): update Flux to v0.82.2 2020-08-25 08:04:28 -06:00
id.go refactor: add new label package (#18078) 2020-05-21 11:30:19 -07:00
id_test.go refactor: rewrite imports to include the /v2 suffix for version 2 2020-04-03 12:39:20 -05:00
keyvalue_log.go feat(kv): implemented key/value store with end-to-end integration tests 2019-02-19 17:47:19 -06:00
label.go fix(labels): prevent adding duplicate labels to resources in kv (#17340) 2020-04-16 09:02:50 -07:00
label_test.go refactor: rewrite imports to include the /v2 suffix for version 2 2020-04-03 12:39:20 -05:00
lookup.go fix(influxdb): change resource to resource type 2019-01-15 12:57:57 -05:00
measurement.go chore: rename imports from platform to influxdb 2019-01-09 20:51:47 -08:00
notification.go refactor!(notifications): drop URM and Org services from NotificationRuleService interface definition (#18131) 2020-05-20 15:10:09 +01:00
notification_endpoint.go feat(http): add notification endpoint service 2019-12-10 12:40:17 -08:00
onboarding.go feat(onboard): allow optional password (#19225) 2020-08-05 12:42:17 -06:00
operation_log.go chore: rename imports from platform to influxdb 2019-01-09 20:51:47 -08:00
organization.go fix: org filtering for both kv and tenant need to match behaviors. (#17758) 2020-04-16 12:22:21 -06:00
paging.go feat(paging): add support for after id parameter in find options (#19219) 2020-08-25 14:59:59 +01:00
passwords.go chore: refactor password service to provide userID instead of name 2019-11-20 09:16:31 -08:00
query.go refactor(http): remove the spec and update lang usage (#17148) 2020-03-09 13:30:43 -05:00
scraper.go chore(tenant): point tests to new tenant service (#19477) 2020-09-02 11:50:26 -06:00
secret.go feat(http): add notification endpoint service 2019-12-10 12:40:17 -08:00
secret_test.go feat(notification/endpoint): add endpoint struct 2019-08-15 21:56:17 -04:00
semaphore.go refactor: simpify Semaphore interface 2019-10-23 19:49:48 +01:00
session.go refactor!: replace authorizer.Allowed method with PermissionSet (#17959) 2020-05-13 12:27:46 +01:00
source.go fix: encode IDs as JSON map keys properly 2019-04-26 20:41:20 -07:00
status.go feat(kv): add new update 2019-03-28 11:46:41 -04:00
tag.go feat(pkger): add application functionality for the notification rules resource 2019-12-20 12:48:46 -08:00
tag_test.go refactor: rewrite imports to include the /v2 suffix for version 2 2020-04-03 12:39:20 -05:00
task.go Merge remote-tracking branch 'origin/master' into sgc/tsm1 2020-08-26 10:14:42 -07:00
task_errors.go fix(task): update task max page size error message to include an accurate limit 2020-08-06 11:09:40 -07:00
task_test.go feat(task): Parse Task Options using Flux AST Helpers (#19326) 2020-08-20 11:57:23 -04:00
telegraf.go feat(influx): add telegraf resource support to influx CLI 2020-07-20 15:37:43 -07:00
telegraf_test.go fix: switch port to 8086 2020-09-03 14:40:29 -07:00
tenant.go test: add tests for tenant service 2020-03-19 11:34:15 +01:00
token.go chore: rename imports from platform to influxdb 2019-01-09 20:51:47 -08:00
tools.go chore(tools): remove goreleaser from the tools.go file (#18775) 2020-06-29 11:07:53 -05:00
usage.go chore: rename imports from platform to influxdb 2019-01-09 20:51:47 -08:00
user.go feat(task): Add new permission lookup pattern for executor (#18920) 2020-07-13 14:47:58 -06:00
user_resource_mapping.go feat(task): Add new permission lookup pattern for executor (#18920) 2020-07-13 14:47:58 -06:00
user_resource_mapping_test.go chore: update staticcheck and fix newly identified lint checks (#18737) 2020-06-26 18:54:09 -05:00
variable.go fix: add variable name validation for flux identifier 2020-08-21 10:28:18 -07:00
variable_test.go refactor: rewrite imports to include the /v2 suffix for version 2 2020-04-03 12:39:20 -05:00
write.go chore: rename imports from platform to influxdb 2019-01-09 20:51:47 -08:00
xcc.sh fix(release): create static builds for linux amd64 (#18805) 2020-07-01 12:45:54 -05:00

README.md

InfluxDB CircleCI

Slack Status

InfluxDB is an open source time series platform. This includes APIs for storing and querying data, processing it in the background for ETL or monitoring and alerting purposes, user dashboards, and visualizing and exploring the data and more. The master branch on this repo now represents the latest InfluxDB, which now includes functionality for Kapacitor (background processing) and Chronograf (the UI) all in a single binary.

The list of InfluxDB Client Libraries that are compatible with the latest version can be found in our documentation.

If you are looking for the 1.x line of releases, there are branches for each minor version as well as a master-1.x branch that will contain the code for the next 1.x release. The master-1.x working branch is here. The InfluxDB 1.x Go Client can be found here.

State of the Project

The latest InfluxDB 1.x is the stable release and recommended for production use. The InfluxDB that is on the master branch is currently in the beta stage. This means that it is still NOT recommended for production usage. There may be breaking API changes, breaking changes in the Flux language, changes in the underlying storage format that will require you to delete all your data, and significant changes to the UI. The beta is intended for feature exploration and gathering feedback on the available feature set. It SHOULD NOT be used for performance testing, benchmarks, or other stress tests.

Additional features will arrive during the beta period until we reach general availability (GA). We will be cutting versioned releases at least every two weeks starting in the first release. There will also be nightly builds based off the latest code in master.

Once we close on the final feature set of what will be in the first GA release of InfluxDB in the 2.x line, we will move into the release candidate (RC) phase. At that point, we do not expect there to be breaking changes to the API or Flux language. We may still need to make a breaking change prior to GA due to some unforseen circumstance, but it would need to be extremely important and will be clearly communicated via the changelog and all available channels.

Our current plans are to release RCs suitable for production usage, but we will re-evaluate in consultation with the community as the cycle progresses. During the RC period, we will focus on feedback from users, bug fixes, performance, and additive features (where time permits).

What you can expect in the Beta and RC Phases

Beta

Releases every two weeks or as needed

Planned additions include:

  • Compatibility layer with 1.x including: 1.x HTTP Write API and HTTP Read API support for InfluxQL
  • Import Bulk Data from 1.x - convert TSM from 1.x to 2.x
  • Performance tuning, stability improvements, and fine tuning based on community feedback.
  • Finalization of supported client libraries starting with JavaScript and Go.

RC

As needed

Planned activities include:

  • Performance tuning, stability improvements, and fine-tuning based on community feedback.

What is NOT planned?

  • Migration of users/security permissions from InfluxDB v1.x to 2.x. ACTION REQUIRED: Re-establish users and permissions within the new unified security model which now spans the underlying database and user interface.
  • Migration of Continuous Queries. ACTION REQUIRED: These will need to be re-implemented as Flux tasks.
  • Direct support by InfluxDB for CollectD, StatsD, Graphite, or UDP. ACTION REQUIRED: Leverage Telegraf 1.9+ along with the InfluxDB v2.0 output plugin to translate these protocols/formats.

Installing from Source

We have nightly and weekly versioned Docker images, Debian packages, RPM packages, and tarballs of InfluxDB available at the InfluxData downloads page. We also provide the influx command line interface (CLI) client as a separate binary available at the same location.

Building From Source

This project requires Go 1.13 and Go module support.

Set GO111MODULE=on or build the project outside of your GOPATH for it to succeed.

The project also requires a recent stable version of Rust. We recommend using rustup to install Rust.

If you are getting an error loading module requirements error with bzr executable file not found in $PATH” on make, then you need to ensure you have bazaar, protobuf, and yarn installed.

  • OSX: brew install bazaar protobuf yarn
  • Linux (Arch): pacman -S bzr protobuf yarn
  • Linux (Ubuntu): apt install bzr protobuf-compiler libprotobuf-dev yarnpkg

NB: For RedHat, there are some extra steps:

  1. You must enable the EPEL
  2. You must add the yarn repository

For information about modules, please refer to the wiki.

A successful make run results in two binaries, with platform-dependent paths:

$ make
...
env GO111MODULE=on go build -tags 'assets ' -o bin/$(uname -s | tr '[:upper:]' '[:lower:]')/influx ./cmd/influx
env GO111MODULE=on go build -tags 'assets ' -o bin/$(uname -s | tr '[:upper:]' '[:lower:]')/influxd ./cmd/influxd

influxd is the InfluxDB service. influx is the CLI management tool.

Start the service. Logs to stdout by default:

$ bin/$(uname -s | tr '[:upper:]' '[:lower:]')/influxd

Building with the go command

The Makefile provides a wrapper around configuring the utilities for building influxdb. For those wanting to use the go command directly, one of two things can be done.

First, the env script is located in the root of the repository. This script can be used to execute go commands with the appropriate environment configuration.

$ ./env go build ./cmd/influxd

Another method is to configure the pkg-config utility. Follow the instructions here to install and configure pkg-config and then the normal go commands will work.

The first step is to install the pkg-config command.

# On Debian/Ubuntu
$ sudo apt-get install -y clang pkg-config
# On Mac OS X with Homebrew
$ brew install pkg-config

Install the pkg-config wrapper utility of the same name to a different path that is earlier in the PATH.

# Install the pkg-config wrapper utility
$ go build -o ~/go/bin/ github.com/influxdata/pkg-config
# Ensure the GOBIN directory is on your PATH
$ export PATH=$HOME/go/bin:${PATH}
$ which -a pkg-config
/home/user/go/bin/pkg-config
/usr/bin/pkg-config

Then all go build commands should work.

$ go build ./cmd/influxd
$ go test ./...

Getting Started

For a complete getting started guide, please see our full online documentation site.

To write and query data or use the API in any way, you'll need to first create a user, credentials, organization and bucket. Everything in InfluxDB is organized under a concept of an organization. The API is designed to be multi-tenant. Buckets represent where you store time series data. They're synonymous with what was previously in InfluxDB 1.x a database and retention policy.

The simplest way to get set up is to point your browser to http://localhost:8086 and go through the prompts.

You can also get set up from the CLI using the command influx setup:

$ bin/$(uname -s | tr '[:upper:]' '[:lower:]')/influx setup
Welcome to InfluxDB 2.0!
Please type your primary username: marty

Please type your password: 

Please type your password again: 

Please type your primary organization name.: InfluxData

Please type your primary bucket name.: telegraf

Please type your retention period in hours.
Or press ENTER for infinite.: 72


You have entered:
  Username:          marty
  Organization:      InfluxData
  Bucket:            telegraf
  Retention Period:  72 hrs
Confirm? (y/n): y

UserID                  Username        Organization    Bucket
033a3f2c5ccaa000        marty           InfluxData      Telegraf
Your token has been stored in /Users/marty/.influxdbv2/configs

You can run this command non-interactively using the -f, --force flag if you are automating the setup. Some added flags can help:

$ bin/$(uname -s | tr '[:upper:]' '[:lower:]')/influx setup \
--username marty \
--password F1uxKapacit0r85 \
--org InfluxData \
--bucket telegraf \
--retention 168 \
--token where-were-going-we-dont-need-roads \
--force

Once setup is complete, a configuration profile is created to allow you to interact with your local InfluxDB without passing in credentials each time. You can list and manage those profiles using the influx config command.

$ bin/$(uname -s | tr '[:upper:]' '[:lower:]')/influx config
Active	Name	URL			            Org
*	    default	http://localhost:8086	InfluxData

Writing Data

Write to measurement m, with tag v=2, in bucket telegraf, which belongs to organization InfluxData:

$ bin/$(uname -s | tr '[:upper:]' '[:lower:]')/influx write --bucket telegraf --precision s "m v=2 $(date +%s)"

Since you have a default profile set up, you can omit the Organization and Token from the command.

Write the same point using curl:

curl --header "Authorization: Token $(bin/$(uname -s | tr '[:upper:]' '[:lower:]')/influx auth list --json | jq -r '.[0].token')" \
--data-raw "m v=2 $(date +%s)" \
"http://localhost:8086/api/v2/write?org=InfluxData&bucket=telegraf&precision=s"

Read that back with a simple Flux query:

$ bin/$(uname -s | tr '[:upper:]' '[:lower:]')/influx query 'from(bucket:"telegraf") |> range(start:-1h)'
Result: _result
Table: keys: [_start, _stop, _field, _measurement]
                   _start:time                      _stop:time           _field:string     _measurement:string                      _time:time                  _value:float
------------------------------  ------------------------------  ----------------------  ----------------------  ------------------------------  ----------------------------
2019-12-30T22:19:39.043918000Z  2019-12-30T23:19:39.043918000Z                       v                       m  2019-12-30T23:17:02.000000000Z                             2

Use the -r, --raw option to return the raw flux response from the query. This is useful for moving data from one instance to another as the influx write command can accept the Flux response using the --format csv option.

Introducing Flux

Flux is an MIT-licensed data scripting language (previously named IFQL) used for querying time series data from InfluxDB. The source for Flux is available on GitHub. Learn more about Flux from CTO Paul Dix's presentation.

Contributing to the Project

InfluxDB is an MIT licensed open source project and we love our community. The fastest way to get something fixed is to open a PR. Check out our contributing guide if you're interested in helping out. Also, join us on our Community Slack Workspace if you have questions or comments for our engineering teams.

CI and Static Analysis

CI

All pull requests will run through CI, which is currently hosted by Circle. Community contributors should be able to see the outcome of this process by looking at the checks on their PR. Please fix any issues to ensure a prompt review from members of the team.

The InfluxDB project is used internally in a number of proprietary InfluxData products, and as such, PRs and changes need to be tested internally. This can take some time, and is not really visible to community contributors.

Static Analysis

This project uses the following static analysis tools. Failure during the running of any of these tools results in a failed build. Generally, code must be adjusted to satisfy these tools, though there are exceptions.

  • go vet checks for Go code that should be considered incorrect.
  • go fmt checks that Go code is correctly formatted.
  • go mod tidy ensures that the source code and go.mod agree.
  • staticcheck checks for things like: unused code, code that can be simplified, code that is incorrect and code that will have performance issues.

staticcheck

If your PR fails staticcheck it is easy to dig into why it failed, and also to fix the problem. First, take a look at the error message in Circle under the staticcheck build section, e.g.,

tsdb/tsm1/encoding.gen.go:1445:24: func BooleanValues.assertOrdered is unused (U1000)
tsdb/tsm1/encoding.go:172:7: receiver name should not be an underscore, omit the name if it is unused (ST1006)

Next, go and take a look here for some clarification on the error code that you have received, e.g., U1000. The docs will tell you what's wrong, and often what you need to do to fix the issue.

Generated Code

Sometimes generated code will contain unused code or occasionally that will fail a different check. staticcheck allows for entire files to be ignored, though it's not ideal. A linter directive, in the form of a comment, must be placed within the generated file. This is problematic because it will be erased if the file is re-generated. Until a better solution comes about, below is the list of generated files that need an ignores comment. If you re-generate a file and find that staticcheck has failed, please see this list below for what you need to put back:

File Comment
query/promql/promql.go //lint:file-ignore SA6001 Ignore all unused code, it's generated

End-to-End Tests

CI also runs end-to-end tests. These test the integration between the influx server the ui. You can run them locally in two steps:

  • Start the server in "testing mode" by running make run-e2e.
  • Run the tests with make e2e.