github grafana/k6-operator v1.3.0

latest release: helm-k6-operator-4.3.0
6 hours ago

✨ New features

We added two major features in this release.

Firstly, there is now an option to skip initializer pod step by setting .spec.initializer.disabled: true in the TestRun CRD. Thanks, @Kristina-Pianykh! Note:

  • By skipping the initializer pod, there's a risk of starting N runner pods and having them all fail on a misconfigured script.
  • This option is recommended for advanced users who have a stable testing setup and have done due diligence for their scripts as described here.
  • Lastly, this option will be ignored for cloud output tests as they require initializer pod execution.

Secondly, we're adding a new option of PodTemplate to the PrivateLoadZone CRD to unlock extended configuration. It supports only a limited number of fields now:

apiVersion: k6.io/v1alpha1
kind: PrivateLoadZone
metadata:
  name: <NAME>
  namespace: <NS>
spec:
  token: <TOKEN>
  resources:
    limits:
      cpu: 400m
      memory: 1000Mi

  podTemplate: # a new, optional field
    spec:
      securityContext:
        runAsUser: 100
        runAsGroup: 100
        fsGroup: 100
      tolerations:
        - key: "app"
          operator: "Equal"
          value: "blue"
          effect: "NoSchedule"
      containers:
        - name: k6
          securityContext:
            allowPrivilegeEscalation: false

No other field can be passed to the .spec.podTemplate: it'll be blocked by Kubernetes validation, with an error about unknown field. This configuration will be applied to all Pods started by k6-operator for this PrivateLoadZone.

Note

PrivateLoadZone doesn't support mutability yet, so it must be re-created anew if you want to add a new config to it.

🛠️ Maintenance

Notable updates from the automated renovate bot:

  • Update of module go.k6.io/k6 to v1.6.1 (PR)

We now have a JSON schema validation check for all new PRs: if there's a PR opened for the Helm chart, a new GitHub Workflow will check if the JSON schema was updated as it should be, without waiting for human review. Thanks, @railgun-0402!

A couple of new commands were added to the Makefile to simplify maintenance:

  • make e2e-update-latest to help populate e2e/latest folder (PR). It is mainly meant for the release process.
  • make patch-helm-crd to help copy changes in CRD to the Helm chart (PR). It can be used both in the release process and during normal PRs.

Full Changelog: v1.2.0...v1.3.0

Don't miss a new k6-operator release

NewReleases is sending notifications on new releases.