v1.1.0
KMM 1.1 includes the following improvements:
- the new
version
field of theModule
CRD gives users better control on the kmod upgrade process through node labels; - soft dependencies can now be specified using the new
modulesLoadingOrder
field of theModule
CRD; - a validating webhook now performs thorough checks on
Module
andManagedClusterModule
resources when they are created or updated; - the new
inTreeModuleToRemove
field of theModule
CRD allows users to unload an in-tree kmod; - the
MOD_NAME
andMOD_NAMESPACE
variables are now substituted in thecontainerImage
field and are available as default build arguments for build jobs.
Installing
KMM 1.1 depends on cert-manager.
Both installation methods outlined below install it automatically.
Using make
git fetch
git checkout release-1.1
# For KMM
make deploy IMAGE_TAG=v20230606-v1.1.0
# For KMM-Hub
make deploy-hub IMAGE_TAG=v20230606-v1.1.0
Using operator-sdk
When using this method, KMM and KMM-Hub have to be installed in separate namespaces.
# For KMM
operator-sdk run bundle gcr.io/k8s-staging-kmm/kernel-module-management-operator-bundle:v20230606-v1.1.0
# For KMM-Hub
operator-sdk run bundle gcr.io/k8s-staging-kmm/kernel-module-management-operator-hub-bundle:v20230606-v1.1.0
Changelog
List of pull requests included in this release
- Bump github.com/onsi/ginkgo/v2 from 2.7.0 to 2.7.1 by @dependabot in #272
- Bump sigs.k8s.io/controller-runtime from 0.14.1 to 0.14.2 by @dependabot in #271
- Fixing documentation by @yevgeny-shnaidman in #275
- Bump github.com/onsi/ginkgo/v2 from 2.7.1 to 2.8.0 by @dependabot in #273
- Fix KMM Hub scheme and permissions by @mresvanis in #276
- Mention Pod Security Admission in the docs by @qbarrand in #279
- Add a troubleshooting section by @qbarrand in #281
- Remove unnecessary ServiceAccounts used in the operator namespace by @mresvanis in #280
- Refactor mapping and module unification and override by @yevgeny-shnaidman in #284
- Use a service for the registry by @qbarrand in #288
- Move to Go 1.20 by @qbarrand in #283
- Wrap assertions into Ginkgo
It
blocks by @qbarrand in #290 - Add signing to the e2e CI by @qbarrand in #287
- Move labs to the documentation website by @qbarrand in #291
- add manager-hub to .gitignore by @yevgeny-shnaidman in #293
- Fixes edit-uri for documentation by @dharmit in #286
- Add {,un}deploy KMM Hub Makefile rules by @mresvanis in #278
- Bump github.com/a8m/envsubst from 1.3.0 to 1.4.1 by @dependabot in #294
- Simplifying KernelAPI interface by @yevgeny-shnaidman in #292
- Bump open-cluster-management.io/api from 0.9.0 to 0.10.0 by @dependabot in #285
- Bump github.com/a8m/envsubst from 1.4.1 to 1.4.2 by @dependabot in #298
- ModuleReconciler and ManagedCluster controllers should not requeue on Build/Sign valid statuses by @yevgeny-shnaidman in #296
- Fix CSV metadata by @qbarrand in #299
- Bump github.com/onsi/ginkgo/v2 from 2.8.0 to 2.8.1 by @dependabot in #300
- Creating ModuleLoaderData sturcture for Build/Sign/ModuleLoader workflow by @yevgeny-shnaidman in #301
- OGP by @iranzo in #297
- Bump github.com/onsi/gomega from 1.26.0 to 1.27.0 by @dependabot in #303
- Bump github.com/onsi/gomega from 1.27.0 to 1.27.1 by @dependabot in #305
- Refactoring ModuleReconciler by @yevgeny-shnaidman in #306
- Changing the metrics flow by @yevgeny-shnaidman in #307
- Documentation fix by @yevgeny-shnaidman in #308
- Bump actions/checkout from 2 to 3 by @dependabot in #312
- Bump k8s.io/client-go from 0.26.1 to 0.26.2 by @dependabot in #317
- Bump github.com/onsi/ginkgo/v2 from 2.8.1 to 2.8.4 by @dependabot in #314
- Use kaniko for signing by @qbarrand in #313
- Expose module's name and namespace by @erusso7 in #310
- Patch instead of update Module and ManagedClusterModule status by @mresvanis in #320
- Bump github.com/onsi/gomega from 1.27.1 to 1.27.2 by @dependabot in #319
- Fix signing Dockerfile by @qbarrand in #324
- Adding Version field to Module CRD by @yevgeny-shnaidman in #327
- Build binaries manually for CodeQL by @qbarrand in #329
- Bump k8s.io/klog/v2 from 2.90.0 to 2.90.1 by @dependabot in #321
- Bump k8s.io/kubectl from 0.26.1 to 0.26.2 by @dependabot in #323
- Bump github.com/onsi/ginkgo/v2 from 2.8.4 to 2.9.0 by @dependabot in #326
- Bump sigs.k8s.io/controller-runtime from 0.14.2 to 0.14.5 by @dependabot in #322
- Adding module version labels definitions by @yevgeny-shnaidman in #330
- Refactoring of handleDriverContainer code by @yevgeny-shnaidman in #332
- Update broken links in secure_boot.md by @hershpa in #338
- Adding the namespace to the
<module>.ready
label. by @ybettan in #328 - handling Version change in DevicePlugin and ModuleLoader DaemonSets by @yevgeny-shnaidman in #334
- Bump actions/setup-go from 3 to 4 by @dependabot in #342
- Require Go 1.19 and bump dependencies by @qbarrand in #346
- Exclude generated files from codecov by @qbarrand in #349
- Bump github.com/onsi/gomega from 1.27.3 to 1.27.5 by @dependabot in #350
- updating skipper dockerfile base image to golang-1.19 by @yevgeny-shnaidman in #352
- Adding a
prow
script to test a basic deployment. by @ybettan in #353 - Revert "Adding a
prow
script to test a basic deployment." by @ybettan in #357 - fixing Daemonsets GC by @yevgeny-shnaidman in #356
- Adding
cert-manager
to config/default. by @ybettan in #355 - Revert "Adding
cert-manager
to config/default." by @ybettan in #358 - Installing
cert-manager
as part of the deployment. by @ybettan in #359 - Bump sigs.k8s.io/controller-runtime from 0.14.5 to 0.14.6 by @dependabot in #362
- Making sure that
cert-manager
is ready before deploying KMM. by @ybettan in #360 - Bump github.com/go-logr/logr from 1.2.3 to 1.2.4 by @dependabot in #366
- In-tree kernel module replacement by @yevgeny-shnaidman in #354
- Bump github.com/onsi/gomega from 1.27.5 to 1.27.6 by @dependabot in #365
- Create a validation webhook by @erusso7 in #348
- Module version nodes' label management by @yevgeny-shnaidman in #347
- change the name of skipper build container to kmm-operator-build by @yevgeny-shnaidman in #367
- fixing the missing image pull policy for module loader by @yevgeny-shnaidman in #369
- Adding a validation webhook to the
ManagedClusterModule
CRD. by @ybettan in #368 - Bump github.com/prometheus/client_golang from 1.14.0 to 1.15.0 by @dependabot in #374
- Bump k8s.io/apimachinery from 0.26.3 to 0.27.1 by @dependabot in #377
- Define new selector for building image job by @erusso7 in #311
- Fixing termination timeout for module loader pods by @yevgeny-shnaidman in #379
- Adding api for ordered multiple kernel modules by @yevgeny-shnaidman in #380
- Prefix the webhook secret name with kmm-operator- by @qbarrand in #383
- Adding sign jobs garbage collection to hub flow by @yevgeny-shnaidman in #386
- Loading multiple independent kernel modules in one KMM Module by @yevgeny-shnaidman in #381
- Bump k8s.io/klog/v2 from 2.90.1 to 2.100.1 by @dependabot in #384
- Simplify the softdep config generation by @qbarrand in #390
- Upgrade to controller-gen 0.12.0 by @qbarrand in #393
- Changing InTree kernel module removal by @yevgeny-shnaidman in #389
- Bump github.com/onsi/ginkgo/v2 from 2.9.2 to 2.9.3 by @dependabot in #394
- Add webhook checks for the softdep feature by @qbarrand in #388
- Bump github.com/prometheus/client_golang from 1.15.0 to 1.15.1 by @dependabot in #396
- Bump github.com/onsi/ginkgo/v2 from 2.9.3 to 2.9.4 by @dependabot in #395
- Mount the prefixed secret in the Hub by @qbarrand in #397
- Adding an e2e workflow for the hub-spoke topology. by @ybettan in #385
- Bump github.com/google/go-containerregistry from 0.14.0 to 0.15.1 by @dependabot in #399
- Use ubuntu-20.04 explicitly in CI e2e tests instead of ubuntu-latest by @mresvanis in #403
- Update CI e2e-hub test by @mresvanis in #404
- Bump alpine from 3.17 to 3.18 by @dependabot in #405
- Fix the cache key for binaries in CI by @qbarrand in #407
- Make mresvanis a reviewer and an approver by @qbarrand in #406
- Hub & Spoke: Expand and replace Module kernel mappings with literal ones before applying the ManifestWork by @mresvanis in #392
- Add KERNEL_FULL_VERSION as a default build argument by @hershpa in #409
- Collect a support bundle in CI by @qbarrand in #411
- Upgrade to kustomize 5.0.1 by @qbarrand in #398
- Use operator namespace when hub fetches the image digest by @mresvanis in #410
- Bump github.com/onsi/ginkgo/v2 from 2.9.4 to 2.9.5 by @dependabot in #412
- Bump github.com/onsi/gomega from 1.27.6 to 1.27.7 by @dependabot in #415
- Bump github.com/google/go-containerregistry from 0.15.1 to 0.15.2 by @dependabot in #413
- Upgrade to controller-runtime v0.15.0 by @qbarrand in #420
- adding comment explaining job filtering by owner by @yevgeny-shnaidman in #423
- Update skipper configuration by @yevgeny-shnaidman in #422
- Bump github.com/onsi/ginkgo/v2 from 2.9.5 to 2.9.7 by @dependabot in #424
- Set the tag of all images when building bundles by @qbarrand in #426
- Fix a command in cloudbuild.yaml by @qbarrand in #428
- Inject the webhook CA into the validated CRDs by @qbarrand in #430
- Make cert-manager an OLM dependency of KMM by @qbarrand in #433
Full Changelog: v1.0.0...v1.1.0
New Contributors
Getting support
The KMM community is available on #sig-node-kmm on the Kubernetes Slack.
Please join the community meeting!