base32

package module
v0.1.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 11, 2025 License: AGPL-3.0 Imports: 3 Imported by: 0

README

devcontainer-feature-demo-xk6

Example repository to demonstrate the use of the xk6 Dev Container feature

This repository contains a k6 example extension that implements base32 encoding. The k6 test script can be run in the Dev Container using the following command:

xk6 run script.js

k6 with the example extension can be built using the following command:

xk6 build --with github.com/grafana/devcontainer-feature-demo-xk6=.

After that, the test script can be run with the built k6 as follows:

./k6 run script.js

The API documentation can be generated using the following command:

npx -y typedoc

The above command generates the API documentation from the index.d.ts file into the build/docs directory.

Usage

The repository contains a Development Container configuration, which means that k6 tests can be run immediately, without installing k6, in any environment that supports Dev Containers (GitHub Codespaces, JetBrains IDEs, Visual Studio Code, DevPods, CodeSandbox, etc)

Without installing software

You can build k6 extension without installing any software using GitHub Codespaces. After forking this repository, create a codespace for your repository.

The created codespace will contain the xk6 executable and the go toolkit so that the test script can be run with example extension immediately in a terminal window:

xk6 run script.js

Using an IDE

You can run k6 test using Visual Studio Code if the Dev Containers extension is installed. After forking this repository, clone your repository and open the folder with Visual Studio Code. It will automatically detect that the folder contains a Dev Container configuration and ask you whether to open the folder in a container. Choose "Reopen in Container".

After reopening in the Dev Container, the test script can be run with extension immediately in the terminal window:

xk6 run script.js

Configuration

The Dev Container configuration is in the .devcontainer/devcontainer.json file:

{
  "name": "devcontainer-feature-demo-xk6",
  "image": "mcr.microsoft.com/devcontainers/base:1-bookworm",

  "features": {
    "ghcr.io/devcontainers/features/go:1": {
      "version": "1.23",
      "golangciLintVersion": "1.63.4"
    },
    "ghcr.io/grafana/devcontainer-features/xk6:1": { "version": "0.14.0" },
    "ghcr.io/devcontainers/features/node:1": { "version": "22" }
  }
}

This is a relatively minimal Dev Container configuration for developing k6 extensions. In addition to the container name and the Debian base image reference, it only contains the following Dev Container feature references:

  • go the latest 1.23.x version of the go toolkit with golangci-lint version 1.63.4.
  • xk6 the xk6 tool version 0.14.0.
  • node Node.js version 22 for generating documentation with TypeDoc.

Documentation

Overview

Package base32 contains the grafana/devcontainer-feature-demo-xk6 demo k6 extension.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL