Skip to content

v0.2.0

Compare
Choose a tag to compare
@wzshiming wzshiming released this 20 Apr 06:57
· 814 commits to main since this release
1dcfb0e

What's Changed

This release focuses on improving the simulation of Pod-related operations, as well as some bug fixes, and code cleanup.

Full Changelog: v0.1.0...v0.2.0

Breaking Changes

  • Default version of Go has been updated to v1.20
  • [kwokctl] Default version of Kubernetes has been updated to v1.27.1
  • [kwokctl] Default version of Etcd has been updated to v3.5.7
  • [kwokctl] Default version of Prometheus has been updated to v2.43.0
  • [kwokctl] Default version of Docker-compose has been updated to v2.17.2
  • [kwokctl] Default version of Kind has been updated to v0.18.0
  • [kwokctl] Update current-context after cluster create/deletion
  • [kwokctl] Treat the unknown version as the latest
  • [kwokctl] Default heartbeat interval extension
  • [kwok] If the Node does not have a version, it will default to kwok-${version} instead of fake

API Changes

  • New API
    • Exec and ClusterExec for exec command in container
    • Logs and ClusterLogs for get logs of container
    • Attach and ClusterAttach for attach in container
    • PortForward and ClusterPortForward for port forward to pod
  • Stage
    • Add ImmediateNextStage for immediate match next stage
  • KwokctlConfiguration
    • Add ExtraVolumes for add extra volumes to components
    • Add ExtraArgs for add extra args to components
    • Supports configuration of node heartbeat
  • Use new apiGroup (config.kwok.x-k8s.io) for KwokctlConfiguration and KwokConfiguration

Tools Changes

  • Common
    • Support parse string for flag -v
  • kwok
    • Fix some conditions not updating
    • Respect HostNetwork of Pod
    • Respect PodCIDR of Node
  • kwokctl
    • Allow clusters to be created without setting kubeconfig
    • Add --kube-admission for enable admission plugins
    • Automatically detect runtime in order: docker, nerdctl, binary
    • Support k8s format for snapshot
    • Support port exposure
      • --controller-port
      • --etcd-port
      • --kube-scheduler-port
      • --kube-controller-manager-port

Fixed Bug

  • #250: Fix pprof
  • #275: Avoid clearing empty finalizers
  • #277: Fix default stages name
  • #276: Uniform "not found" output
  • #294: Fixes CVE-2022-41723/GHSA-vvpx-j8f3-3w6h: Bump golang.org/x/net from 0.4.0 to 0.7.0
  • #344: config: ignore empty documents while loading
  • #347: initialize nodeSelectorFunc when
  • #360: check error
  • #400: Fixes node not initialized
  • #409: Fix node controller accidental exit
  • #440: Fix featureGates and runtimeConfig on kind runtime
  • #475: fix get port used

Images

kwok

  • registry.k8s.io/kwok/kwok:v0.2.0

cluster

  • registry.k8s.io/kwok/cluster:{tag}
    • v0.2.0-k8s.v1.27.1
    • v0.2.0-k8s.v1.26.3
    • v0.2.0-k8s.v1.25.8
    • v0.2.0-k8s.v1.24.12
    • v0.2.0-k8s.v1.23.17
    • v0.2.0-k8s.v1.22.17

Contributors

Thank you to everyone who contributed to this release! ❤️

Users whose commits are in this release (alphabetically by user name)

And thank you very much to everyone else not listed here who contributed in other ways like filing issues, giving feedback, etc. 🙏