github vmware-tanzu/sonobuoy v0.54.0

latest releases: v0.56.3, v0.56.2, v0.56.1...
7 months ago

Overview

This is a big release filled with new features, bug fixes, and UX improvements for all Sonobuoy users and plugin developers.

Major Changes

  • By default, sonobuoy run --wait and sonobuoy delete --wait will now output much more information. This was an experimental feature for a release and it was extremely useful. When waiting on a run, the user is effectively given timestamped changes to sonobuoy status data so you can see when plugins are progressing. When running sonobuoy delete --wait, the JSON for the namespace is output as it changes. This makes it clear what is causing namespace deletion to be slow or hang.
  • Adds some basic plugin management capabilities. You can now try out sonobuoy plugin install <file or URL> and it will store the plugin in a central location so that when you run sonobuoy run -p myplugin the plugin doesn't have to reside in the present working directory. Expect a blog post on this feature as it is a very new capability and we have some ideas how to make it better.
  • Sonobuoy now supports plugin results in go-json format
    • This is the format from go test --json and enables us to support the upstream e2e-framework. To write a plugin that uses this format, simply change the result-type to go-json.
  • Added a securityContext by default and set the user/group/fsGroup; this prevents certain security tools from blocking typical Sonobuoy runs. This is not supported on Windows nodes so a flag was added to turn off this functionality (--security-context-mode=none) if desired.
  • Adds multiple new env vars to plugin environments when run including:
    • SONOBUOY=true to indicate that it was launched by Sonobuoy
    • SONOBUOY_CONFIG_DIR to identify where configmaps will be mounted at
    • SONOBUOY_RESULTS_DIR to identify where the results should be saved
  • By default, Sonobuoy will now gather logs for all pods in kube-system and will query all API resources it can, including CRDs (but not secrets!)
  • Add --rerun-failed flag to sonobuoy run. This takes a filename as a parameter and will walk the given tarball for e2e results and adjust the E2E_FOCUS accordingly to target just those failed tests. This is meant to be a replacement for the older sonobuoy e2e command.

Minor Changes

  • sonobuoy gen will not support all the flags that sonobuoy run does including things like --wait and --skip-preflight in order to make it easier to change back and forth between run and gen for testing
  • Fixed a bug where --level was not respected on the aggregator container and added more logging at the --level=trace.
  • Documented underlying issues with supporting Kubernetes for Docker Desktop
  • Removed managed field data from the data that Sonobuoy queries. This is usually not relevant for users and is verbose and confusing.
  • Fixed a bug which caused podLogs to only be gathered for one pod (typically the Sonobuoy aggregator)
  • Adds a useful dev feature: if SONOBUOY_DEV_REPO is set, it will use that repo for the default Sonobuoy image to facilitate faster iteration
  • Fixed a bug where a plugin's name would cause an invalid configmap name to be generated. A few more restrictions and validation were added to make the naming limitation more clear.
  • Fixed a bug where, when a plugin failed, the Sonobuoy aggregator status would report itself as failed regardless of other plugins. This was originally by design but as we have more fine-grained reporting abilities now, it is not necessary and is potentially confusing.

Changelog

08bb70f Bump version and docs for v0.54.0 release
b214bb7 Add go-json output support for results
0e55157 Combine gen and run flags
623d739 Add tracing throughout code and ensure level is passed to server
57b5ecc Add known issue related to docker desktop
af87543 Add flag/config setting for security context
b633b4f Export and tweak some of the manual results methods/values
0ffc70b Add more auto env vars to plugins
df0e77d Default our experimental features to true
b51156c Increase default query data
2adb0a5 Removed managed fields from query output
b84102e Improve various logging points on aggregator
7d59d80 Adds easy way for devs to swap their own registry
fe560d0 Do not use deprecated SelfLink
ca27736 Add default security context to aggregator
0f94168 Added validation to gen [plugin] for plugin name
6df070d Adjust the logic for processing plugin results for aggregator status
57feff6 Update contributors on site
90abde6 Fix feature gate name
a189f91 Replace master with main
26b589b Show/maintain fewer versions of docs
dc458b5 Tweaks logging and how pluginList uses cache
f1060a2 Use experimental features in test
34a3fc3 Absorb e2e functionality into rerun-failed flag
baffa30 Add vulnerability scanning to CI
63394b6 Fix readme for github
d3bca9e Fix docs links for 1388 issue

Don't miss a new sonobuoy release

NewReleases is sending notifications on new releases.