Releases: grafana/k6-operator
v0.0.11
✨ New features
Helm support is finally here! Many thanks to @knmsk and everyone for the incredible work in #98.
At the moment, installation or upgrade of Helm chart require cloning k6-operator repo and installing from local folder ./charts
. We are actively looking into publishing Helm release to Grafana repo.
Cloud output in k6-operator has been set to use a new and much improved v2 protocol by default (#272). There is a leftover decoding of v1 protocol in k6-operator, to smooth out the transition, but it will be removed in the next release.
TestRun
CRD has been added as a duplicate of K6
CRD. TestRun
has exactly the same interface, API and logic as K6
CRD (#286). The goal here is to improve UX of our APIs and to avoid confusion around CRDs, given our recent work on PrivateLoadZone feature and addition of PrivateLoadZone
CRD.
⚠️ K6
CRD will be removed in favor ofTestRun
CRD in the future. Please switch to usingTestRun
!
⚠️ Breaking changes
Node selector is now properly defined as nodeSelector
instead of nodeselector
(#274). Thanks, @JorTurFer!
🐛 Bug hunting
PrivateLoadZone
CRD is now deleted properly upon deletion of the resource, without leaving ghosts behind (#282).
🪛 Maintenance
Update of Golang to 1.19 and update of Golang dependencies happened in #308, including update of controller-runtime
to v0.16.2.
There has been quite a bit of work happenning to improve our CI workflows. Part of it is related to Helm feature addition, but it is also a preparation to the refactoring work planned for the next releases. Thanks, @u5surf for helping with it (#313)!
Full Changelog: v0.0.10...v0.0.11
v0.0.11rc3
⚠️ Future deprecation
K6
CRD is going to be deprecated in favor of TestRun
CRD. The behaviour of both should be identical for now, but it is strongly recommended to switch to TestRun
CRD in your workflows as K6
CRD will be removed in the future.
What's Changed
- CI: limit Helm chart testing workflow only to branches by @yorugac in #287
- Bundle update for release v0.0.11rc2 by @github-actions in #285
- Switch to cloud output v2 by @yorugac in #272
- Add a TestRun CRD as a duplicate of K6 CRD by @yorugac in #286
Full Changelog: v0.0.11rc2...v0.0.11rc3
v0.0.11rc2
Helm chart is included starting this RC 🎉
What's Changed
- Bundle update for release v0.0.11rc1 by @github-actions in #278
- Clean deletion of PLZ CRD by @yorugac in #282
- Feature: add Helm chart install mode by @knmsk in #98
- CI: fix Helm chart test workflow by @yorugac in #284
Full Changelog: v0.0.11rc1...v0.0.11rc2
v0.0.11rc1
⚠️ Breaking change
This RC contains a breaking change with rename of the field in K6 API: from nodeselector
to nodeSelector
in #274. It is part of improvement of k6-operator UX as well as preparation before Helm chart addition and rename of K6 CRD itself.
What's Changed
- Bundle update for release v0.0.10 by @github-actions in #269
- Update Makefile and versioning by @yorugac in #270
- Fix CSV to include both CRDs by @yorugac in #256
- fix: Use standard naming for nodeSelector definition by @JorTurFer in #274
New Contributors
- @JorTurFer made their first contribution in #274
Full Changelog: v0.0.10...v0.0.11rc1
v0.0.10
⚠️ Breaking Changes
As was mentioned in v0.0.10rc3, since PR #247 all images are built as part of k6-operator Github package.
The old images and releases continue to be available as part of operator package. But it is highly recommended to re-deploy with the new, k6-operator package image, in order to receive the latest updates and releases.
✨ New Features
Watch namespaces are now configurable. Thanks, @dkhachyan!
Readiness and liveness probes can be configured as part of K6 spec, since #230. Thanks, @0xF0D0!
Cloud output in k6-operator is now more performant thanks to metrics aggregation options, added in #229. Additionally, default name of test runs in cloud output has become consistent with other k6 Cloud test runs in #248.
The long-awaited init containers are supported by k6-operator now 🎉 Thanks to @ivanape and @andrei-trandafir! PR #184 and #249. See examples here and here.
A new CRD named PrivateLoadZone
has been added in #238 and #239. It is a feature for k6 Cloud users as well as a new type of test run in k6-operator.
Last but not least, k6-operator has been equipped with bundle.yaml
to support a simpler method of installation with kubectl apply
in #257. See the relevant docs for details.
🐛 Bugs
A bug with nonexistent folder was fixed in #243. Thanks, @vukor!
There was also a couple of important fixes of operator-sdk auto generation, in #217. Thanks, @dkhachyan!
🔧 Maintenance
Dependency updates in this release:
Our docs has been seeing more improvements too:
- Syntax and highlighting was imrpoved in #244 and #245. Thanks, @agilgur5!
- Example with extensions update in #246.
- Instructions for bundle installation in #259.
On a related note, our guide for distributed tests has landed in official k6 Docs!
Full Changelog: v0.0.9...v0.0.10
v0.0.10rc3
The old images and releases continue to be available as part of operator package. If someone needs to load an older release (without prefix k6-
), it's possible to pass it via K6 spec runner.image
in case of runner image or in IMG=... make deploy
in case of controller image. However, it is highly recommended to re-deploy with the new, k6-operator package image, in order to receive the latest updates and releases. After this RC, the simplest way to switch to the new package will be to git pull
fresh changes in the main
branch of the k6-operator, re-run make deploy
and restart the deployment as needs be.
What's Changed
- Fix 'no such file or directory' issue in initializer by @vukor in #243
- Core implementation for PLZ API by @yorugac in #238
- fix(docs): use valid, conventional syntax in JS example by @agilgur5 in #244
- docs: add missing YAML syntax highlighting by @agilgur5 in #245
- Updating example when building with extensions by @javaducky in #246
- Fix default name of test runs in cloud output by @yorugac in #248
- Update image names to k6-operator over generic operator by @javaducky in #247
New Contributors
Full Changelog: v0.0.10rc2...v0.0.10rc3
v0.0.10rc2
This is a small RC but it contains some pretty important changes and features.
What's Changed
- Add configurable readiness & liveness probe by @0xF0D0 in #230
- Set k6 env vars for metrics aggregation by default for cloud output by @yorugac in #229
- Allow init containers by @ivanape in #184
New Contributors
Full Changelog: v0.0.10rc1...v0.0.10rc2
v0.0.10rc1
What's Changed
- Up-to-date versions in Makefile and docs by @yorugac in #218
- Fix operator-sdk CSV and role auto generation by @dkhachyan in #217
- Bump kubebuilder-tools-version in tests by @lplazas in #232
- Configurable watch namespaces by @dkhachyan in #225
New Contributors
- @dkhachyan made their first contribution in #217
- @lplazas made their first contribution in #232
Full Changelog: v0.0.9...v0.0.10rc1
v0.0.9
⚠️ Breaking changes
Sometimes we encounter some inconsistencies in design and esp. in configuration of k6-operator. One of them was fixed in this release and might be a breaking change for those who used Istio support in k6-operator:
- Option
scuttleLogging
was changed todisableLogging
in #182.
✨ New Features
The most noticeable improvement in this release is the work done on idempotence problem:
- Execution of simultaneous tests in #169. Thanks, @ivanape!
- Improved logic with conditions and persistent test run ID in #213.
Thanks to these, it is now possible to run simultaneous test runs of any kind with k6-operator 🎉
Among other notable additions are:
- Option
separate
is now applicable only to runner pods, since #170. Thanks, @cmergenthaler! - Handling of initializer logs was improved in #174 and made more secure in #202.
- Support for full threshold syntax in script syntax was added in #176. Thanks, @mwain!
- Basic implementation of liveness and readiness probes for runner pods was added in #185. Thanks, @ivanape!
- Separate spec for initializer pod was added in #175. Thanks, @13013SwagR!
- Initializer pod is now setting
securityContext
as well, since #215. Thanks, @mohamediag!
🔧 Maintenance
There has been a major update of dependencies, including a jump of controller-runtime
version to v0.14.6 and of Golang to 1.18 in #212.
A new doc was added to clarify the k6 version in relation to runner images in #216.
Among other changes:
- Docs received some polishing in #177, #180. Thanks, @emanuelef!
- Our CI hit a bug with buildx version and was fixed and improved in #183, #188 and #190.
Full Changelog: v0.0.8...v0.0.9
v0.0.9rc3
📝 This RC contains a fix for broken Docker manifests that occured in the previous RC, v0.0.9rc2.
What's Changed
- Add workflow dispatch to CI image building by @yorugac in #188
- CI: add workflow dispatch logic and fix buildx version by @yorugac in #190
- Adds support for full threshold syntax by @mwain in #176
New Contributors
Full Changelog: v0.0.9rc2...v0.0.9rc3