Inspektor Gadget v0.11.0 Release Notes.
Welcome to this new release of Inspektor Gadget. The most relevant changes:
local-gadgetgained several new gadgets! With this release you are now able to trace file operation, withtrace openandtrace fsslower, get information about network connection, withtrace dnsandtrace sniand also to audit a seccomp profile attached to a container with theaudit seccompgadget!- We modified
traceloopto use CO-RE and rely on trace API and the columns package! - We improved support for
cri-ocontainers and added support for watching for new containers inlocal-gadget.
Other changes are:
General improvements
- Support trace mount in local-gadget (#1099)
- localgadget: Add trace open command (#1100)
- localgadget: Support trace fsslower gadget (#1102)
- trace/sni: Use columns library (#1119)
- Remove cgo where possible from gadgets (#1092)
- Convert
traceloopto use CO-RE and the trace API (#1023) - profile/cpu: Use columns library (#1128)
- Generalize parts of kubectl-gadget top gadgets (#1063)
- pkg/gadget/trace/capabilities: Sync default audit-only value with CLI (#1127)
- Remove extra output mode validation (#1135)
- local-gadget: Add seccomp audit gadget (#1133)
- local-gadget: trace dns localgadget (#1103)
- pkg/trace/network: Prepare gadget for being added to local-gadget (#1118)
- cmd/common: Clean up special event management (#1131)
- gadgets/top/ebpf: Read fdinfo of map to get its size (#1120)
- Remove deprecated grpc.WithInsecure (#1149)
- local-gadget: fix tracing new crio containers (#1084)
- go.mod: update Kubernetes packages (#1148)
- pkg/gadgets/trace: remove cgo (#1093)
- gadgets/snapshot: Use columns library (#1123)
- ociannotations: Move annotation handling to separate package (#1147)
- Remove
Cgofortraceloop(#1140) - gadgets/top: Use the column library (#1138)
- pkg/runcnotify: Use self-pipe trick to wake up poll() (#1160)
- local-gadget: Add trace sni gadget (#1121)
Bug fixes
- profile/cpu: Add suffix "stack" to kernel/user parameter name (#1158)
Documentation improvements
- docs: Add badges for quick information (#1107)
Test and continuous integration
- integrationtest/TestAuditSeccomp: Validate json output (#1104)
- build(deps): bump github.com/moby/moby from 20.10.18+incompatible to 20.10.20+incompatible (#1115)
- build(deps): bump golangci/golangci-lint-action from 3.3.0 to 3.3.1 (#1117)
- integration-tests: Improve deployment workflow for IG/SPO (#1110)
- trace/capabilities: Fix unit tests (#1129)
- pkg/local-gadget-manager: Use nginx container to test network-graph. (#1106)
- integration-tests: Patch seccomp profiles to force SPO cleanup (#1113)
- Create YAML deployment file on release (#772)
- integration-tests: Only Skip deployment for SPO. (#1134)
- integration/TestEbpftop: Check for any captured event (#1141)
- ci: Do not cancel in progress jobs on main. (#1143)
- ci: Update libseccomp version and remove other packages. (#1136)
- lint: update github action to fix deprecation warning (#1150)
- pkg/exec: Lint correctly arm64_loadlinks.go. (#1154)
- ci: Update download-artifact from v2 to v3 (#1155)
- Remove Lint errors (#1153)
- integraton-tests: Fail if no entries provided to expectAllToMatch (#1152)
- ci: Use install-debian-packages before running the linter. (#1166)
- ci: Invalidate install-debian-packages cache when files are changed. (#1168)
- ci: Fix release job part in charge of creating release YAML. (#1169)
- ci: Use
${{ github.ref_name }}instead of ${GITHUB_REF_NAME}. (#1170)
Statistics
With regard to v0.10.0, we modified 233 files, added 7226 lines of code while removing 3874.
The big addition of lines comes to the rework of traceloop which brings a bit more than 2500 lines of code.
As today, Inspektor Gadget relies on the following languages:
| Language | files | blank | comment | code |
|---|---|---|---|---|
| C/C++ Header | 33 | 27952 | 110 | 208849 |
| Go | 388 | 8051 | 8851 | 37702 |
| Markdown | 76 | 1413 | 0 | 5434 |
| C | 27 | 686 | 401 | 2782 |
| YAML | 46 | 70 | 171 | 2041 |
| SVG | 4 | 0 | 1 | 518 |
| make | 11 | 102 | 45 | 410 |
| Bourne Shell | 21 | 111 | 183 | 343 |
| Perl | 1 | 18 | 13 | 54 |
| Protocol Buffers | 1 | 16 | 17 | 45 |
| JSON | 3 | 0 | 0 | 45 |
| Bourne Again Shell | 1 | 4 | 3 | 17 |
| Dockerfile | 2 | 6 | 2 | 16 |
| -------- | -------- | -------- | -------- | -------- |
| SUM: | 614 | 38429 | 9797 | 258256 |
Full Changelog: v0.10.0...v0.11.0