xk6-disruptor

Extension for injecting faults into k6 tests

AGPL-3.0 License

Stars
93
Committers
9

Bot releases are visible (Hide)

xk6-disruptor - release v0.3.11 Latest Release

Published by github-actions[bot] 8 months ago

This is a patch release that fixes a few bugs and does minor improvements.

Updates

  • #370 We have updated our license to AGPL to align with Grafana license policy

Bug fixes

  • #391 Revert the update of upload/download artifacts actions to v4 due to issues when uploading artifacts from multiple jobs

Internal improvements

  • #388 Update k6 to v0.49.0
  • #298 #376 Update dependencies
  • #357 #374 Experimental work on new disruptions
xk6-disruptor - Release v0.3.11

Published by github-actions[bot] 8 months ago

This is a patch release that fixes a few bugs and does minor improvements.

Updates

  • #370 We have updated our license to AGPL to align with Grafana license policy

Internal improvements

  • #388 Update k6 to v0.49.0
  • #298 #376 Update dependencies
  • #357 #374 Experimental work on new disruptions
xk6-disruptor - v0.3.10

Published by github-actions[bot] 12 months ago

This is a patch release that fixes a few bugs and does minor improvements.

Enhancements

  • #359 Pod Termination fault. This new fault type allows the termination of a set of the targets pods for a PodDisruptor or ServiceDisruptor.

Bug fixes

  • #368 Fix pod controller not stopping all fault injection when an error occurs

Internal improvements

  • #355 #356 #365 Multiple changes in the code structure to facilitate the addition of new features and improve testability.
  • #340 #341 #342 Complete migration of integration tests to using TestContainers
xk6-disruptor - v0.3.9

Published by github-actions[bot] about 1 year ago

This is a patch release that fixes a bug that prevented xk6-disruptor to be built using xk6.

Bug Fixes

  • #332 Fix xk6 not being able to build k6 with xk6-disruptor due to a mismatch in GRPC dependencies
xk6-disruptor - v0.3.8

Published by github-actions[bot] about 1 year ago

This is a patch release that fixes a few bugs and does minor improvements.

Enhancements

  • #320 Report an error if proxy does not receive any requests
  • #267 Report error if there are no targets for a disruptor

Bug Fixes

  • #326 Prevent race condition waiting for condition that could affect the injection of the agent in the target Pods
  • #316 Add missing validations in some fault injections

Internal improvements

  • #322 #323 Proof of concepts that demonstrate using TestContainers for integration tests for agent and the Kubernetes helper library
  • #313 Add tool for e2e test cluster setup and cleanup. This tool facilitates sharing clusters among tests to reduce the setup time
  • #303 #304 #306 Minor improvements in code and tests
  • #297 Update k6 to v0.46.0
xk6-disruptor - v0.3.7

Published by github-actions[bot] about 1 year ago

Bug Fixes

Internal improvements

xk6-disruptor - v0.3.6

Published by github-actions[bot] about 1 year ago

This is a patch release that fixes a few bugs and does minor improvements.

Bug Fixes

  • #276 Bump k6 version to fix broken dependency
  • #269 Fix build process failing for non-release builds

Internal improvements

xk6-disruptor - v0.3.5

Published by github-actions[bot] about 1 year ago

This is a patch release that fixes a few bugs and does minor improvements.

Bug Fixes

  • #264 Revert change of default proxy port to 8000
  • #263 Custom builds from a release break version synchronization between extension and agent
xk6-disruptor - v0.3.4

Published by github-actions[bot] about 1 year ago

This is a patch release that fixes a few bugs and does minor improvements.

Enhancements

  • #231 Allow interception of port-forwarded traffic
  • #257 Refuse to inject a fault on pods with hostNetwork set to true

Internal improvements

  • #258 Upgrade to golangci-lint v1.53.3
  • #244 Implement mechanism for generating custom agent commands per target pod
  • #241 Update actions/setup-go action to v4
  • #239 Add golangci to renovate configuration
  • #237 Update alpine Docker tag to v3.18
  • #235 Update go k8s libraries to v0.27.3
  • #233#236 Enhancements in the setup and cleanup of e2e test resources
  • #213 Generate runtime metrics
xk6-disruptor - v0.3.3

Published by github-actions[bot] over 1 year ago

This is a patch release that fixes a few bugs and does minor improvements.

Bug Fixes

  • #219 Disruptor binaries does not include experimental browser module

Internal improvements

  • 210 Set up Renovate for dependency update automation
  • 209 212 Refactoring to improve separation between agent logic from cli for better testability and preparation for implementing a gRPC interface for the agent 52
xk6-disruptor - v0.3.2

Published by github-actions[bot] over 1 year ago

This is a patch release that fixes a few bugs and does minor improvements.

Bug Fixes

  • #182 HTTP Headers are not preserved in HTTP fault injection
  • #128 Validate target port when injecting protocol faults to Pods

Internal improvements

  • #160 Use ingresses in the e2e test to facilitate parallel tests. Mitigates the flakiness issues in the e2e tests #147. Also allows removing some complex logic used for preventing port collisions between tests #189
  • #172 Introduce an abstraction for the runtime environment to facilitate testing
  • Facilitate debugging of the disruptor agent by means of instrumentation options #166 and also adding the option of running the agent as a proxy in the development environment #169
  • #177 #170 Multiple minor improvements in the code
  • #176 Add a CI action to validate spelling in the code

New contributors

xk6-disruptor - v0.3.1

Published by github-actions[bot] over 1 year ago

This is a patch release that fixes a few bugs and does minor improvements.

Bug Fixes

xk6-disruptor - v0.3.0

Published by github-actions[bot] over 1 year ago

xk6-disruptor v0.3.0 is out!

This release contains breaking changes in the xk6-disruptor API.

Breaking changes

  • Use duration as strings in API.
    This PR changes xk6-disruptor's API to use strings in duration-related parameters, avoiding the use of implicit time units in numeric parameters and making it consistent with k6 API. Changes where introduced to:
    • The duration of the fault injection methods
    • The delay introduced in HTTP and GRPC faults
xk6-disruptor - v0.2.1

Published by github-actions[bot] over 1 year ago

This is a patch release that fixes a few bugs and does minor improvements.

Bug Fixes

xk6-disruptor - v0.2.0

Published by github-actions[bot] over 1 year ago

xk6-disruptor v0.2.0 is out!

This release contains new functionalities for the disruptor.

Enhancements

xk6-disruptor - v0.1.3

Published by github-actions[bot] almost 2 years ago

This is a patch release with minor improvements.

Improvements

New contributors

xk6-disruptor - v0.1.2

Published by github-actions[bot] almost 2 years ago

This is a patch release that fixes a few bugs and does minor improvements.

Improvements

xk6-disruptor - v0.1.1

Published by github-actions[bot] almost 2 years ago

This is a patch release that fixes a few bugs and does minor improvements.

Bug Fixes

Improvements

  • Binaries generated for Linux and MacOS for amd64 and arm64 architectures
  • Agent image supports amd64 and arm64 architectures
  • MacOS is supported as a build platform for both the extension and the agent image
xk6-disruptor - v0.1.0

Published by github-actions[bot] almost 2 years ago

This is the first public release of xk6-disruptor

The xk6-disruptor is a k6 extension providing fault injection capabilities.

⚠️ xk6-disruptor is in the alpha stage, undergoing active development. We do not guarantee API compatibility between releases - your k6 scripts may need to be updated on each release until this extension reaches v1.0 release.

If you encounter any bugs or unexpected behavior, please search the currently open GitHub issues first, and create a new one if it doesn't exist yet.

Check our documentation for instructions on how to install xk6-disruptor and a guide to the fault injection API .

You can keep track of our development plan in our roadmap.

If you encounter any bugs or unexpected behavior, please search the currently open GitHub issues first, and create a new one if it doesn't exist yet.