Commit Graph

209 Commits

Author SHA1 Message Date
e2aa4d2df9 fix(stacks): Fix stack error typo (#445)
This is a simple fix for typo in an error returned to the user.
2022-09-22 15:39:48 +01:00
3a593e7184 fix: don't allow creating an auth with instance resources (#442)
* fix: don't allow creating an auth with instance resources

* fix: handle operator flag as well
2022-08-29 14:01:05 -04:00
5c7c34f16d feat: replication bucket name (#440)
* chore: gofmt

* chore: update openapi gen files

* feat: add replication-bucket-name flag

* fix: fix tests

* chore: rename to replication-bucket

* feat: show remote bucket name or id

* chore: fmt fixup

* chore: update openapi to master

* chore: fix openapi generation
2022-08-18 14:21:50 -04:00
051a6aafc4 Clarify difference in virtual vs physical dbrps when listing (#439)
* fix: separate v1 dbrp list results into physical and virtual

* fix: remove virtual column from v1 dbrp list

* fix: update v1 dbrp list tests for new format

* fix: add new test with virtual result
2022-08-17 10:31:48 -06:00
65ff49fedf chore(tasks): support looking up tasks by script id (#437) 2022-08-15 10:19:09 -06:00
7bdad28ee0 feat: add virtual column to DBRP printing (#435)
* feat: add virtual column to DBRP printing

* fix: update DBRP tests with new virtual column

* chore: update to latest openapi
2022-08-03 16:14:07 -06:00
fbbe9743f2 fix: update unsupported xcode version (#436) 2022-08-03 15:51:52 -06:00
75e3606e87 fix: show remotes and replications flags in auth create (#374) 2022-08-03 16:49:45 -05:00
826e03f8b2 feat: added script support when updating tasks for the cloud (#433)
* feat: added script support when updating tasks for the cloud

* feat: added script ID to task printing
2022-08-03 13:12:27 -06:00
1453e20f2b feat: added script support when creating tasks for the cloud (#432) 2022-08-03 13:12:11 -06:00
0b6ce21cfe feat: allow deleting replications with remotes (#417) 2022-08-02 11:03:38 -05:00
78ef3c127c chore: add influx command shell hint (#400) 2022-07-28 11:00:14 -06:00
f34e6a888f feat: add username and password login (#418)
* feat: add username and password login

* fix: make sure cookie is not empty

* chore: go mod tidy

* fix: prevent local config from influencing tests

* fix: small cleanup on error handling

* fix: remove unnecessary trim
2022-07-28 10:53:19 -04:00
182303e31d fix: prevent v1 shell hang on empty query result (#431) 2022-07-27 15:21:49 -06:00
0de05ed3e4 feat: updated openapi to support tasks containing scripts (#430) 2022-07-27 15:21:11 -06:00
d470527e43 feat: added tag stripping step to openapi generation to fix codegen (#428)
* feat: added tag stripping step to openapi generation to fix codegen

* fix: run tag removal in docker container

* fix: ignore cli generated yaml
2022-07-26 13:02:19 -06:00
c44d2f232b build: upload "latest" artifacts (#423) 2022-07-13 02:26:42 -04:00
b9ffcb4b5a fix: improve display for strings and numbers in v1 shell tables (#420)
* fix: improve alignment for strings and numbers

* add scientific toggle command for table format

* enter altscreen when in table format interactive mode

* chore: run go mod tidy
2022-07-01 10:22:13 -06:00
da2899d71d feat: add skipRowOnError handling for raw line protocol files (#419)
* feat: add skipRowOnError for raw line protocol files

* use common code from influxdb instead of copying

* add test

* remove dead code comment
2022-07-01 10:14:14 -06:00
e5707cd63c feat: allow setting membership type in influx org members add (#402)
* add owners endpoints to cli.yml

* run make openapi and mock

* add owner listing, adding and removing

* fix: update tests to remove getUser indirection
2022-06-28 16:06:58 -06:00
56a8276a4a chore: fix issues with Go 1.18 in CI (#416) 2022-06-27 15:11:12 -05:00
d3e0efb560 fix up tabs vs. spaces mistakes in shell help prompt (#412) 2022-06-24 11:32:16 -06:00
9dc1b8e4b1 feat: add pretty table format to REPL (#393)
* add v1-compatible query path and refactor other paths to de-duplicate "/query"

* add initial influxQL repl

* add ping endpoint to schema

* improve prompt UX, implement some commands

* fix json column type in schema and improve completion

* feat: add table formatter and move to forked go-prompt

* improve formatting and add table pagination

* implement more REPL commands, including insert and history

* implement "INSERT INTO"

* move repl command to "v1 repl"

* refactor and improve documentation

* clean up v1_repl cmd

* update to latest openapi, use some openapi paths instead of overrides

* remove additional files that were moved to openapi

* compute historyFilePath at REPL start

* clean up REPL use command logic flow

* clean up comments for TODOs now in issues

* move gopher (chonky boi)

* remove autocompletion for separate PR

* run go mod tidy

* add rfc3339 precision option

* allow left and right column scrolling to display whole table

* add error to JSON query response

* add tags and partial to JSON response series schema

* fix csv formatting and add column formatting

* remove table format for separate PR

* add pretty table format to REPL

* fix getDatabases

* move from write to legacy write endpoint for INSERT

* remove history vestiges

* allow multiple spaces in INSERT commands

* add precision comment

* remove auth for separate PR

* separate parseInsert and add unit test

* add additional test case and improve error messages

* fix missing errors import

* update for simpler horizontal scrolling in table mode

* improve dialog printing

* improve table format and interactions

* jump to first page on shift-up

* add keybinding info

* change wording from result to table, flip
2022-06-24 09:08:51 -06:00
85c690f1f1 chore: add checkgenerate test to lint (#404) 2022-06-23 10:07:38 -05:00
09881c0214 chore: fix typo in mockgen (#403) 2022-06-23 10:02:00 -05:00
760f07ed9e feat: invokable scripts (#387)
* basic list, create, and invoke working

* all commands working

* added support for create script body from file and invoke params from file

* linter cleanup

* update defaults to existing parameters if not provided

* updated generated mock files, added mock files for scripts, added basic script create test

* added mock script list

* cleanup pass, fixed not using params in list call

* added update mock test

* fixed mock tests requiring go 1.18

* updated openapi, integrated overrides upstream, added new override to fix codegen bug

* added nil check

* fixed routes
2022-06-22 14:08:55 -06:00
a68106ee88 Replace token flags with = to prevent bad parsing of leading dash in token (#399) 2022-06-17 14:59:11 -06:00
c695e601a5 Add REPL autocompletion & go-prompt (#392)
* add v1-compatible query path and refactor other paths to de-duplicate "/query"

* add initial influxQL repl

* add ping endpoint to schema

* improve prompt UX, implement some commands

* fix json column type in schema and improve completion

* feat: add table formatter and move to forked go-prompt

* improve formatting and add table pagination

* implement more REPL commands, including insert and history

* implement "INSERT INTO"

* move repl command to "v1 repl"

* refactor and improve documentation

* clean up v1_repl cmd

* update to latest openapi, use some openapi paths instead of overrides

* remove additional files that were moved to openapi

* compute historyFilePath at REPL start

* clean up REPL use command logic flow

* clean up comments for TODOs now in issues

* move gopher (chonky boi)

* remove autocompletion for separate PR

* run go mod tidy

* add back autocompletion & go-prompt

* add rfc3339 precision option

* allow left and right column scrolling to display whole table

* add error to JSON query response

* add tags and partial to JSON response series schema

* fix csv formatting and add column formatting

* remove table format for separate PR

* fix getDatabases

* move from write to legacy write endpoint for INSERT

* remove history vestiges

* allow multiple spaces in INSERT commands

* add precision comment

* remove auth for separate PR

* separate parseInsert and add unit test

* add additional test case and improve error messages

* fix missing errors import

* fix format suggestion

* re-add history implementation with history limit

* build: upgrade to Go 1.18.3 (#395)

* feat: add back the InfluxQL REPL (#386)

* add v1-compatible query path and refactor other paths to de-duplicate "/query"

* add initial influxQL repl

* add ping endpoint to schema

* improve prompt UX, implement some commands

* fix json column type in schema and improve completion

* feat: add table formatter and move to forked go-prompt

* improve formatting and add table pagination

* implement more REPL commands, including insert and history

* implement "INSERT INTO"

* move repl command to "v1 repl"

* refactor and improve documentation

* clean up v1_repl cmd

* update to latest openapi, use some openapi paths instead of overrides

* remove additional files that were moved to openapi

* compute historyFilePath at REPL start

* clean up REPL use command logic flow

* clean up comments for TODOs now in issues

* move gopher (chonky boi)

* remove autocompletion for separate PR

* run go mod tidy

* add rfc3339 precision option

* allow left and right column scrolling to display whole table

* add error to JSON query response

* add tags and partial to JSON response series schema

* fix csv formatting and add column formatting

* remove table format for separate PR

* fix getDatabases

* move from write to legacy write endpoint for INSERT

* remove history vestiges

* allow multiple spaces in INSERT commands

* add precision comment

* remove auth for separate PR

* separate parseInsert and add unit test

* add additional test case and improve error messages

* fix missing errors import

* print rfc3339 precision

* add rfc3339 to help output

* run tidy

* restructure autocomplete and handle review items

* improve autocompletion with leftover handling

* improve comments and add autocomplete for DELETE & DROP MEASUREMENT

* rename repl to shell

* remove unsupported CREATE & DROP autocompletions

* additional refactor for autocompletion

Co-authored-by: Dane Strandboge <dstrandboge@influxdata.com>
2022-06-14 15:18:27 -06:00
0c17ebd621 fix: users and orgs permissions should not be scoped under an org (#398) 2022-06-13 09:20:26 -04:00
fc529745a5 feat: add back the InfluxQL REPL (#386)
* add v1-compatible query path and refactor other paths to de-duplicate "/query"

* add initial influxQL repl

* add ping endpoint to schema

* improve prompt UX, implement some commands

* fix json column type in schema and improve completion

* feat: add table formatter and move to forked go-prompt

* improve formatting and add table pagination

* implement more REPL commands, including insert and history

* implement "INSERT INTO"

* move repl command to "v1 repl"

* refactor and improve documentation

* clean up v1_repl cmd

* update to latest openapi, use some openapi paths instead of overrides

* remove additional files that were moved to openapi

* compute historyFilePath at REPL start

* clean up REPL use command logic flow

* clean up comments for TODOs now in issues

* move gopher (chonky boi)

* remove autocompletion for separate PR

* run go mod tidy

* add rfc3339 precision option

* allow left and right column scrolling to display whole table

* add error to JSON query response

* add tags and partial to JSON response series schema

* fix csv formatting and add column formatting

* remove table format for separate PR

* fix getDatabases

* move from write to legacy write endpoint for INSERT

* remove history vestiges

* allow multiple spaces in INSERT commands

* add precision comment

* remove auth for separate PR

* separate parseInsert and add unit test

* add additional test case and improve error messages

* fix missing errors import

* print rfc3339 precision

* add rfc3339 to help output
2022-06-10 08:54:07 -06:00
51ca97ee29 build: upgrade to Go 1.18.3 (#395) 2022-06-07 13:49:46 -05:00
50de408a0a fix: add mutual exclusion for OrgId and OrgName params (#377)
Display an error when the OrgName and OrgId flags are both passed in. Only one or the other is allowed.

closes https://github.com/influxdata/influx-cli/issues/371
2022-05-13 18:50:22 -06:00
35279515e9 build: upgrade to Go 1.18.1 (#373) 2022-04-13 15:50:35 -05:00
30e64c5cc9 feat: Add --extra-http-header flag (#372) 2022-04-13 19:22:18 +02:00
88ba3464cd feat: add max age to replications create and update (#367) 2022-03-18 17:21:12 -05:00
c8c7c1c680 fix: json suffix for json template from CLI (#370) 2022-03-14 09:15:21 -04:00
37ec38ac5a fix: rename bucket id parameters to be explicit (#369) 2022-03-11 15:12:34 -05:00
85a33adf71 chore: update to API spec for new template endpoint response (#362) 2022-02-17 14:46:05 -06:00
041ebf65e3 chore: improve logging for creating a new remote (#360)
* chore: improve logging for creating a new remote

* chore: improve error logging for creating remote
2022-02-04 15:06:35 -05:00
9ddf110ad6 fix: template apply uses better diff checking (#358)
* fix: template apply uses better diff checking

Previously, we did a DeepEqual of all the returned data about each changed entity,
but due to our template overrides that is not actually all the information
available for each entity. So we marked trivial things as 'conflicts' (e.g.
telegraf config ID's 'changing' from the empty string to the real, current value)
while not catching important conflicts like flux script changes in checks and tasks.

Changes to make things more straightforward:

 * Change the --force behaviour to be more similar to `apt install`, where even
in non-interactive mode `--force yes` is required to bypass the prompt to apply.

  * Before, there were two stages of diff checking - once to print diffs, and once
after the 'Yes/No' prompt. If any conflicts were detected in the second check,
the user got an inscrutable error message that did not highlight what the difference
was or how to force it to apply. `--force conflict` was required to avoid this error.
Instead, we now have simplified to `--force yes` to bypass the 'Yes/No' prompt, and
we never do a second stage of diff checking.

 * Because we do not currently properly account for more complicated diffs (e.g.
flux tasks), we now assume in the diff printing that every object has changes,
except for Labels, Buckets, Variables, and Label Mappings. This could be improved
in the future.

* fix: when statestatus is 'remove', mark as removed
2022-02-04 10:59:02 -05:00
981be7872d chore: upgrade to latest OpenAPI (#357) 2022-02-01 14:53:34 -06:00
5cd1c9d037 build: automatically generate changelog (#349) 2022-01-10 08:05:38 -08:00
cb3bade38b update: instructions to update openapi (#350)
* Add openapi submodule instructions to README.md

Add instructions for updating the influx-cli/openapi git submodule when regenerating the CLI.

* update: instructions to update openapi

Add instructions to update and regenerate influx-cli/openapi when changing commits.
2021-12-28 14:51:46 -06:00
7af0b2ae73 feat: enhanced error messages for cloud and oss specific commands (#347)
* feat: enhanced error messages for cloud and oss specific commands

* chore: rename test
2021-12-28 10:03:29 -05:00
13d0827815 fix: duration parser shows duration missing units on error (#348) 2021-12-23 15:06:29 -05:00
178c7546b1 feat: add server-config command (#346)
* feat: added server-config command

* chore: update openapi to latest
2021-12-23 09:32:31 -05:00
68ac116959 chore: update openapi ref to latest (#345)
* chore: update openapi ref to latest

* chore: update to openapi master
2021-12-21 15:15:50 -05:00
327f239c6f feat: enable remotes and replication streams feature (#341) 2021-12-13 16:33:28 -06:00
becbe8f7b8 fix: Use influx-debug-id header (#338)
Influxdata cloud2 uses a different mechanism to enable tracing.
You need to pass a `influx-debug-id` header (the value is ignored) and if the response contains
`trace-sampled: true` then the response's `trace-id` header contains a valid trace ID that can be
used to jump to the trace in jaeger.

If the request has been sampled, we print the trace-id to stderr.

Since modern terminals allow to click on hyperlinks, we could avoid a copy&paste of the trace id
if the `influx` binary wrote a the link to the jeager trace.
However, we don't want to hardcode the URL of the internal jaeger endpoint in the binary.

I tried adding a wrapper script on my machine that would just capture the trace-id and render it, but it's
hard to do without messing with the ordering of the stderr and stdout lines.
Thus I preferred adding a secret env var that controls the formatting of the trace-id and can be used
by our devs to generate links to our internal jaeger instance.

```console
$ export INFLUX_CLI_TRACE_PRINT_PREFIX="Trace: https://jaeger.my.cloud/trace/"
$ influx query --trace-debug-id 123 -f query.flux
Trace: https://jaeger.my.cloud/trace/f39a69354a3acca6
Result: _result
Table: keys: [_measurement]
...
```
2021-12-03 17:54:47 +01:00
4c0fae3a4c feat: add ExecuteWithHttpInfo methods for generated API (#336)
* feat: add `ExecuteWithHttpInfo` methods for generated API

* chore: update templates README

* chore: update comment to explain usage of response body

* chore: update template README

* chore: fix formatting
2021-11-29 15:42:29 -06:00