* chore: add unit test coverage to inspect report-tsi command
* chore: add additional test cases and data for inspect report-tsi command
* refactor: made small changes based on code review
* chore: added line protocol files for tsi test data
Co-authored-by: Michelle McFarland <michellemcfarland@Michelles-MacBook-Pro.local>
* chore: add unit test coverage to inspect dump-wal
* chore: ran make fmt
* refactor: small styling change in conditional statement
* refactor: passed cobra cmd as pointer instead of an object
Co-authored-by: Michelle McFarland <michellemcfarland@Michelles-MacBook-Pro.local>
* feat: port influxd inspect build-tsi
* refactor: changes based on code review, not including logging changes
* refactor: improved logging based on code review
* chore: updated CHANGELOG.md
Co-authored-by: Michelle McFarland <michellemcfarland@Michelles-MacBook-Pro.local>
* feat: porting influxd inspect dump-wal from 1.x
* refactor: adapted 1.x logic to cobra command syntax
* refactor: improved clarity of printed output and help documentation
* chore: ran make fmt
* chore: updated CHANGELOG.md
* refactor: made small changes suggested in code review
* build(flux): update flux to v0.123.0
* fix(cmd/influxd/launcher): modify selector aggregate tests to use create empty false
Co-authored-by: Jonathan A. Sternberg <jonathan@influxdata.com>
* feat: port influxd inspect report-tsi
* chore: restored tsi1.IsIndexDir() functionality
* refactor: changed inspect report-tsi to work with 2.x file system structure
* chore: fixed output tab alignment
* chore: ran make fmt
* chore: ran make fmt on changed file after resolving merge conflicts
* refactor: made changes based on code review
* refactor: avoiding defer build-up in loop
* refactor: replaced path with filepath and added shardIdx closures
* chore: updated changelog
* refactor: handled shardIdx closures in error case
Co-authored-by: Michelle McFarland <michellemcfarland@Michelles-MacBook-Pro.local>
This differs from the 1.x implementation as the blocks and index in-depth printout will now only happen if explicitly stated, instead of being printed with filterKey set
* feat: port tsm-inspect command to dbv2
* test: add test code for tsm-verify
* chore: delete old tsm-verify code stubs
* docs: update changelog
* chore: test for broken checksums more thoroughly
* feat: new metadata backup endpoint
* feat: added restore/sql API endpoint
* fix: content-type is multipart/mixed, part names are kv and sql
* fix: changed multipart manifest to buckets and made it .json
* feat: added lock for backing up sqlite and bolt dbs
* fix: use read lock instead of write lock on kv during backup
* fix: use filepath.Join for temp dirs
* feat(notebooks): demo store functionality
* feat: demo store with context and middleware
* refactor: without context
* fix: update endpoint and status code for delete
* chore: changed name
* chore: added some tests
* fix: address review comments
* fix(query): accept queue-size > 0 when concurrency = 0
* fix(influxd): revert defaults for query settings to avoid validation err
* test: lower the default query concurrency used by test launchers
* chore: remove dead code
* refactor: move FluxLanguageService interface to fluxlang
* chore: run fmt
* refactor: move task.go from top level to task/taskmodel
* chore: run formatter
* chore: fix up import ordering with gci
The internal command can be used to execute flux tests using the same
internals as the `flux test` command, but it will invoke these tests
against a test influxdb instance that is launched in-process.
When checking for existing configs, check the length of the array after
parsing. There could be an empty config file present.
If --name was specified then use that as the configuration name, regardless of
whether or not there are existing configs.
Allow a 0 (infinite) retention to be specified with --retention when in
interactive mode.
Co-authored-by: Dan Moran <dmoran@influxdata.com>
This package provides essentially the same API as the Cloud tests
package, utilising the `TestLauncher` type.
Additional With functional options were added to the `Launcher`
in order to expose type-safe configuration of InfluxQL configuration.
Additional With options may be added in the future as the need arises.
This includes removal of a lot of kv.Service responsibilities. However,
it does not finish the re-wiring. It removes documents, telegrafs,
notification rules + endpoints, checks, orgs, users, buckets, passwords,
urms, labels and authorizations. There are some oustanding pieces that
are needed to get kv service compiling (dashboard service urm
dependency). Then all the call sites for kv service need updating and
the new implementations of telegraf and notification rules + endpoints
needed installing (along with any necessary migrations).
This resolves observed race conditions when running test suites that
utilize the launcher. It also reduces test times considerably, by
eliminating a slow loop to find a port.
The enhancements and fixes to the user experience are as follows:
* Rename active and inactive commands to the actions set-active and
set-inactive respectively to clarify their behavior
To set a token to active:
```
influx v1 auth set-active
```
To set a token to inactive, preventing its use:
```
influx v1 auth set-inactive
```
* allow `--id` or `--username` anywhere a single authentication token is
required
* use separate vars to store the flag state of each command
* factor out the behavior to find a single authentication token into
a shared function, `v1FindOneAuthorization`
A static initialization is not desirable in the main binaries, as it forces all
paths of code to init, but it is still useful in tests. It allows static
intialization to be performed once for all tests and eliminates the need to
always add the FluxInit call. Added a fluxinit/static package that calls
fluxinit.FluxInit() to replace the builtin package. This hides the nature of
the initialization and makes it clear that it is mandatory initialization code
getting called.
feat(dashboard): add owner ID to dashboard model
This adds the explicit OwnerID field to Dashboard and also adds a
migration which populates dashboard owners IDs based on dashboard owner
URMs.
feat(dashboards): isolate service in own package
This change isolates the dashboards service into its own package. It
also updates the API to no longer interface with user resource mappings.
Instead it defines new handlers which rely on the newly populated owner
ID field.
chore(dashboards): port tests from http package into new service transport package
chore(launcher): use dashboard transport package client in launcher tests
chore(kv): remove now defunkt dashboard service implementations