Commit Graph

11 Commits (jstirnaman/issue5108)

Author SHA1 Message Date
Jason Stirnaman 625883ab84 chore(tests): Setup a python venv in test containers 2024-03-15 17:47:32 -05:00
Jason Stirnaman 5bf392afc4
chore(telegraf): Improve CSV parser doc and run Telegraf tests: (#5302)
* chore(telegraf): Improve CSV parser doc and run Telegraf tests:

- Revise CSV parser documentation and add examples.
- Configure test runner for Telegraf tests.

* Update content/telegraf/v1/data_formats/input/csv.md

Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>

* Update content/telegraf/v1/data_formats/input/csv.md

Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>

* Update content/telegraf/v1/data_formats/input/csv.md

Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>

---------

Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
2024-01-17 09:31:18 -06:00
Jason Stirnaman de0f526bdf
Reorganize Serverless DBRP for v1 queries and writes, explain DBRP and auto bucket defaults (#5257)
* chore(v3): DBRP: Update Serverless API ref (#5234)

* chore(ci): Tests: substitute placeholders in JSON body parameters

* chore(v3): DBRP: copy page from influxql to admin/dbrps.

* chore(ci): Trying to prevent "a Influx..."

* chore(ci): Allow autogen

* chore(serverless): DBRP glossary entry

* chore(v2): add default DBRP note

* chore(v3): use product-name shortcode

* chore(v3): use product-name shortcode, clarify retention period and mapping

* chore(serverless): Create Bucket:

- add missing example for Data Explorer
- move Retention Period syntax and define retentionRules syntax
- setup for tests

* chore(serverless): Create Bucket:

- add missing example for Data Explorer
- move Retention Period syntax and define retentionRules syntax
- setup for tests

* chore(serverless): Update bucket: alias to match other products

* chore(v3): Serverless for prototyping: update with DBRP behavior

* Serverless auto-generated buckets have 3-day default retention period
Fixes #5234

- v1-compat guide:
  - passes tests
  - explains DBRPs (default, automatic, and management)
  - migrate DBRP content from query-data/influxql/dbrp
- v2-compat guide:
  - fix TOC
  - add list code example
- rename influxdb-v1-api to api/v1-http, migrate params from v1-compat guide, and explain DBRP in context
- add write-data/api/v1-http and migrate content from v1-compat guide
- move optimize and troubleshooting up to /query-data
- add Related items support for paths containing http
- substitute placeholders in tests

* chore(test): update configuration in README

* fix(serverless): Optimize queries parent

* fix(serverless): create-bucket cleanup

* fix: cleanup

* fix: close tag

* Apply suggestions from code review

Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>

* Apply suggestions from code review

Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>

* fix(v3): permission to create dbrp-mapped bucket

---------

Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
2023-12-05 16:48:25 -06:00
Jason Stirnaman 5c74bf4ff6
5156 Writes: add v1 to Serverless get-started (#5233)
* chore(ci): Install Telegraf to test container

* chore(v3): test telegraf config and startup:

- creates the config file for the test run. TODO: remove the duplication and use the content for test setup.
- fix placeholder name

* fix(v3): make test pass for curl API example

* chore(ci): make tests pass for write. Add dependencies to Dockerfile.

* chore(tests): update test build

- Compose metadata: Add profile to test service. We can decouple services later and apply the profile to each. Rename. Pass the image name to the container.
- Fetch the parse_yaml.sh script during docker build, so we only fetch when necessary. Track the script in git. This is still a little janky, but better.
- test.sh: Use `HEAD` for diff (duh). Go back to using docker compose up so we're rebuilding only as needed and reusing the container - much faster, but the output isn't as pretty as `run`.
- pytest.ini, requirements.txt: Use pytest-dotenv to load env.products variables.

* fix(write): update JS instructions and pass tests.

* chore(ci): Install influx v2 CLI into the Docker test container.

* chore(ci): move .env file loading to pytest and run product tests separately with the proper .env file:

- Moves .env configs to be loaded by the test runner instead of by Docker. I'd prefer to ignore any product divergence and have them run interchangeably, but the pros outweigh the cons for now.
- Add example for passing custom commands in the compose file.

* fix(v3): replace curl example with v1 and v2, simplify JS example, pass tests.

feat(v3): add v1 write, test, update text:

- adds Serverless v1 /write example with note about autogen behavior
- adds link from v1 examples to Migrate guide
- adds description of autogen behavior to v1-compat guide
- updates "powered by..." text
- adapts examples to make them more testable, asserts `/write` status code
- replace "shared" examples (only used once) with inline to make them testable

fix(v3): promote migrate link

* Update content/influxdb/cloud-dedicated/get-started/write.md

Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>

* Apply suggestions from code review

Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>

* Apply suggestions from code review

Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>

* Apply suggestions from code review

Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>

* Apply suggestions from code review

Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>

* Apply suggestions from code review

Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>

* chore(v3): Write: fix wording for curl success  (#5156)

---------

Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
2023-11-15 14:41:29 -06:00
Jason Stirnaman c4cab2d99d
fix(tests): test runner (#5220)
- Bad Dockerfile merge.
- Add condition to abort if there are no files to test.
- Revert search path to `.`. If we need to change it, we can do it in pytest.ini.
2023-11-07 10:06:15 -06:00
Scott Anderson b823be2f63
fix inadvertantly reverted changes (#5219) 2023-11-06 16:55:00 -07:00
Scott Anderson 636f5ada45
V2 nav reorg (#5213)
* nest reference docs menu in v2 and cloud

* move migrate data into write data

* nest notebooks under tools

* nest templates under tools

* nest telegraf configs under tools

* cleanup weights and titles of tools sections

* reorg org and bucket management under admin

* add backup/restore to admin, clean up related links

* restructure security sections under admin

* Apply suggestions from code review

Co-authored-by: Jason Stirnaman <stirnamanj@gmail.com>

* updated serverless cli docs to address pr feedback

* Update content/influxdb/cloud/admin/organizations/delete-org.md

Co-authored-by: Jason Stirnaman <stirnamanj@gmail.com>

* port v2 install changes to new structure

* address pr feedback and ported missing content to serverless

---------

Co-authored-by: Jason Stirnaman <stirnamanj@gmail.com>
2023-11-06 15:53:12 -07:00
Jason Stirnaman 6067315a58
5204 v2 update downloads and install instructions (#5214)
* chore(ci): Docker install gpg and wget for test image.

* chore(ci): add a config (temporary) for v2 tests.

* chore(ci): tests: replace latest-patch tag with environment variable.

* chore(ci): test runner

- test.sh diffs against origin/master
- test.sh builds the image for each run and then removes the container after the run.
- tesh.sh adds examples for running and debugging to remind myself.
- compose.yaml adds a bind mount to copy docs-v2/data into docs-v2/test.
- Dockerfile: simplify path use
- run-tests.sh: make default run less verbose, add support for a verbose option (and future options).
- run-tests.sh: generates a .env.products file from data/products.yml and sources the file variables as environment variables to use in test runs.
- run-tests.sh: adds some misc. test setup.
- requirements.txt: return to using the influxdb3-python release

* chore(v2): Update and test v2 OSS and CLI install instructions:

- Update download URLs and paths for all distributions.
- Update and fix install instructions, make consistent between browser downloading and shell
- Make testable.

* chore(v2): Ignore parse_yaml.sh download.
2023-11-06 09:48:01 -06:00
Jason Stirnaman c4b97f9acf
5025 fix and test python examples (#5207)
* chore(v3): add test replacements

* fix(v3): get-started/query samples, make testable
2023-10-30 16:48:09 -05:00
Jason Stirnaman 35f3f09edb
Python test placeholders (#5161)
* chore(ci): Update vocab.

* chore(test): Set language-specific replacements for code sample tests

This is a bit of kludge to allow for language-specific replacement patterns
while keeping the code samples valid when a user replaces placeholder strings with their own and copies the sample.
This is necessary for executing (not for validating syntax) of the code samples.

- Workaround for identifying language-specific replacements for pytest-codeblocks test runs.
- Uses Python f-strings to identify Python-specific placeholders.
- To import os for your code sample and hide it from users, wrap it in a comment and use the `pytest-codeblocks:cont` comment tag. See d0ca7e22b8/README.md?plain=1#L117
2023-10-03 10:09:47 -05:00
Jason Stirnaman 237b01877b
chore(qol): Test python and shell code samples. WIP - use for local testing only, not ready for CI. (#5154)
- Adds a Docker image, scripts, and configuration that install and run pytest-codeblocks on Python and shell code samples in Markdown.
- Copied from https://github.com/jstirnaman/docs-codeblocks/
- TODO: The script copies files into a tmp directory configured as a bind mount for the Docker container. We might want to replace this with the experimental `watch` feature.
- TODO: Use a secret to configure the token. As is, values subbed from the dotenv file are exposed in your Docker container history.
2023-09-26 14:56:21 -05:00