Skip to content

Revamp extensions docs #2030

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 8 commits into from
Aug 12, 2025
Merged

Revamp extensions docs #2030

merged 8 commits into from
Aug 12, 2025

Conversation

dgzlopes
Copy link
Contributor

What?

This PR revamps the extensions section of our docs to properly reflect the current state of extensions after the GA release of the "automatic extensions loading" project.

Checklist

  • I have used a meaningful title for the PR.
  • I have described the changes I've made in the "What?" section above.
  • I have performed a self-review of my changes.
  • I have run the npm start command locally and verified that the changes look good.
  • I have made my changes in the docs/sources/k6/next folder of the documentation.

Related PR(s)/Issue(s)

https://github.com/grafana/website/pull/26929

@dgzlopes dgzlopes requested review from heitortsergent and a team as code owners August 11, 2025 11:20
@dgzlopes dgzlopes requested review from pablochacin and removed request for a team August 11, 2025 11:20
@CLAassistant
Copy link

CLAassistant commented Aug 11, 2025

CLA assistant check
All committers have signed the CLA.

@CLAassistant
Copy link

CLA assistant check
Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.
You have signed the CLA already but the status is still pending? Let us recheck it.


- [Create a JavaScript extension](https://grafana.com/docs/k6/<K6_VERSION>/extensions/create/javascript-extensions) to extend the JavaScript functionality of your script or add support for a new network protocol to test.
- [Create an Output extension](https://grafana.com/docs/k6/<K6_VERSION>/extensions/create/output-extensions) to process the metrics emitted by k6 or publish them to unsupported backend stores.
- [Create a Secret Source extension](https://grafana.com/docs/k6/<K6_VERSION>/extensions/create/secret-source_extensions) to provide secrets to your k6 script at runtime.
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not related... but small enough to add here.


{{< /code >}}
TBD
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

How should we handle this? Point to Cloud docs? Duplicate them here?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.


Use the table to explore the many extensions. Questions? Feel free to join the discussion about extensions in the [k6 Community Forum](https://community.grafana.com/c/grafana-k6/extensions/82).
TBD
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same as above.

- **Official & Community** → You can import them directly in your test. If your local binary doesn’t already include them, k6 automatically loads a compatible version when you run your test.
- **Other** (from the ecosystem or your own) → These require building a custom k6 binary with [xk6](https://github.com/grafana/xk6).

## Using automatic extension loading
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I didn't get into all the pragma things, etc. If someone has the time to add it, please, go ahead.

.module != "go.k6.io/k6"
and .tier == $tier
and .repo.name != "xk6-kafka"
and .repo.name != "xk6-sse"
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is a hack. It is terrible... but I didn't want these to appear twice (in community and others).

@@ -76,23 +76,6 @@ Our goal is to quickly understand the intent of the extension.

{{< /admonition >}}

## Extension Tiers
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this collides with our latest takes on the topic.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I took the freedom to remove this, bc with automatic extension resolution, it felt deprecated.


<div class="nav-cards">
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I decided to simplify this page. There was no new info here vs. other internal pages, so I did the same we have done in a few other folders: Just show the items inside.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What is the plan? To add more content or to leave it as for the pushed code? I think the previous version was nicer. It would require some additional content for the new mode, but the current proposal seems not very useful.

If we don't like the previous version then I'm for deleting it and just rely on the menu in the navbar.

Copy link
Contributor Author

@dgzlopes dgzlopes Aug 12, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

but the current proposal seems not very useful.

Fair, but... We do this in: Set up, Get started, Using k6, Examples, and a bunch of other sections in our docs.

So yeah, at least it is consistent 😄

I agree that something else here could be nicer, but the current content was extremely redundant, and this feels a bit out of scope for this PR. It would be great if the extensions team iterates on this in the future.

@dgzlopes dgzlopes requested review from codebien and Lantero August 11, 2025 11:26
| Category | Maintainer | Audited | Cloud support | How to use them |
| ------------- | ----------------------------------- | ------- | ------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Official** | Grafana Labs | ✅ Yes | ✅ Yes | [Import them in your test](https://grafana.com/docs/k6/<K6_VERSION>/extensions/run/#using-automatic-extension-loading) |
| **Community** | Community | ✅ Yes | ⚠️ Partial\* | [Import them in your test](https://grafana.com/docs/k6/<K6_VERSION>/extensions/run/#using-automatic-extension-loading) |
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
| **Community** | Community | ✅ Yes | ⚠️ Partial\* | [Import them in your test](https://grafana.com/docs/k6/<K6_VERSION>/extensions/run/#using-automatic-extension-loading) |
| **Featured** | Community | ✅ Yes | ⚠️ Partial\* | [Import them in your test](https://grafana.com/docs/k6/<K6_VERSION>/extensions/run/#using-automatic-extension-loading) |

| ------------- | ----------------------------------- | ------- | ------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Official** | Grafana Labs | ✅ Yes | ✅ Yes | [Import them in your test](https://grafana.com/docs/k6/<K6_VERSION>/extensions/run/#using-automatic-extension-loading) |
| **Community** | Community | ✅ Yes | ⚠️ Partial\* | [Import them in your test](https://grafana.com/docs/k6/<K6_VERSION>/extensions/run/#using-automatic-extension-loading) |
| **Other** | Community | ❌ No | ⚠️ Partial\* | [Build a custom k6 binary](https://grafana.com/docs/k6/<K6_VERSION>/extensions/run/#using-other-extensions) |
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
| **Other** | Community | ❌ No | ⚠️ Partial\* | [Build a custom k6 binary](https://grafana.com/docs/k6/<K6_VERSION>/extensions/run/#using-other-extensions) |
| **Community** | Community | ❌ No | ⚠️ Partial\* | [Build a custom k6 binary](https://grafana.com/docs/k6/<K6_VERSION>/extensions/run/#using-other-extensions) |

Copy link
Contributor

@codebien codebien left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@dgzlopes thanks for addressing it. Generally speaking the unique issue I see is the concept between Community and Others.

As a user, they don't match my expectations, where I find the current representation more complicated, instead I would prefer:

  • Others should to be just Community
  • Community should be Cloud-Enabled Community

cc @Lantero


<div class="nav-cards">
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What is the plan? To add more content or to leave it as for the pushed code? I think the previous version was nicer. It would require some additional content for the new mode, but the current proposal seems not very useful.

If we don't like the previous version then I'm for deleting it and just rely on the menu in the navbar.

@dgzlopes
Copy link
Contributor Author

@codebien @mstoykov I just pushed what we discussed in the call 👍

@codebien
Copy link
Contributor

@heitortsergent we are merging this as-is right now as we need for the release. But we would much appreciate any additional reviews as this is a very draft version, and we should re-iterate on it.

@codebien codebien merged commit b926a85 into main Aug 12, 2025
6 of 7 checks passed
@codebien codebien deleted the revamp-extensions-docs branch August 12, 2025 13:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants