From 301c175eec99d5b2ba33913617f9d7b4bb6f43ac Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 22 May 2024 12:39:50 -0400 Subject: [PATCH 01/15] deps: bump go.opentelemetry.io/otel/metric from 1.26.0 to 1.27.0 (#398) Bumps [go.opentelemetry.io/otel/metric](https://github.com/open-telemetry/opentelemetry-go) from 1.26.0 to 1.27.0.
Changelog

Sourced from go.opentelemetry.io/otel/metric's changelog.

[1.27.0/0.49.0/0.3.0] 2024-05-21

Added

Changed

Fixed

Commits

[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=go.opentelemetry.io/otel/metric&package-manager=go_modules&previous-version=1.26.0&new-version=1.27.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) ---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- go.mod | 6 +++--- go.sum | 12 ++++++------ 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/go.mod b/go.mod index 9d96091247..9ecac8cf08 100644 --- a/go.mod +++ b/go.mod @@ -293,9 +293,9 @@ require ( github.com/safchain/ethtool v0.3.0 github.com/spf13/viper v1.18.2 github.com/vishvananda/netlink v1.2.1-beta.2.0.20231127184239-0ced8385386a - go.opentelemetry.io/otel v1.26.0 - go.opentelemetry.io/otel/metric v1.26.0 - go.opentelemetry.io/otel/trace v1.26.0 + go.opentelemetry.io/otel v1.27.0 + go.opentelemetry.io/otel/metric v1.27.0 + go.opentelemetry.io/otel/trace v1.27.0 go.uber.org/mock v0.4.0 golang.org/x/exp v0.0.0-20240222234643-814bf88cf225 gopkg.in/natefinch/lumberjack.v2 v2.2.1 diff --git a/go.sum b/go.sum index 83bf7fa422..d0d8b49bea 100644 --- a/go.sum +++ b/go.sum @@ -832,18 +832,18 @@ go.opencensus.io v0.24.0 h1:y73uSU6J157QMP2kn2r30vwW1A2W2WFwSCGnAVxeaD0= go.opencensus.io v0.24.0/go.mod h1:vNK8G9p7aAivkbmorf4v+7Hgx+Zs0yY+0fOtgBfjQKo= go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.45.0 h1:x8Z78aZx8cOF0+Kkazoc7lwUNMGy0LrzEMxTm4BbTxg= go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.45.0/go.mod h1:62CPTSry9QZtOaSsE3tOzhx6LzDhHnXJ6xHeMNNiM6Q= -go.opentelemetry.io/otel v1.26.0 h1:LQwgL5s/1W7YiiRwxf03QGnWLb2HW4pLiAhaA5cZXBs= -go.opentelemetry.io/otel v1.26.0/go.mod h1:UmLkJHUAidDval2EICqBMbnAd0/m2vmpf/dAM+fvFs4= +go.opentelemetry.io/otel v1.27.0 h1:9BZoF3yMK/O1AafMiQTVu0YDj5Ea4hPhxCs7sGva+cg= +go.opentelemetry.io/otel v1.27.0/go.mod h1:DMpAK8fzYRzs+bi3rS5REupisuqTheUlSZJ1WnZaPAQ= go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.19.0 h1:Mne5On7VWdx7omSrSSZvM4Kw7cS7NQkOOmLcgscI51U= go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.19.0/go.mod h1:IPtUMKL4O3tH5y+iXVyAXqpAwMuzC1IrxVS81rummfE= go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.19.0 h1:IeMeyr1aBvBiPVYihXIaeIZba6b8E1bYp7lbdxK8CQg= go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.19.0/go.mod h1:oVdCUtjq9MK9BlS7TtucsQwUcXcymNiEDjgDD2jMtZU= -go.opentelemetry.io/otel/metric v1.26.0 h1:7S39CLuY5Jgg9CrnA9HHiEjGMF/X2VHvoXGgSllRz30= -go.opentelemetry.io/otel/metric v1.26.0/go.mod h1:SY+rHOI4cEawI9a7N1A4nIg/nTQXe1ccCNWYOJUrpX4= +go.opentelemetry.io/otel/metric v1.27.0 h1:hvj3vdEKyeCi4YaYfNjv2NUje8FqKqUY8IlF0FxV/ik= +go.opentelemetry.io/otel/metric v1.27.0/go.mod h1:mVFgmRlhljgBiuk/MP/oKylr4hs85GZAylncepAX/ak= go.opentelemetry.io/otel/sdk v1.24.0 h1:YMPPDNymmQN3ZgczicBY3B6sf9n62Dlj9pWD3ucgoDw= go.opentelemetry.io/otel/sdk v1.24.0/go.mod h1:KVrIYw6tEubO9E96HQpcmpTKDVn9gdv35HoYiQWGDFg= -go.opentelemetry.io/otel/trace v1.26.0 h1:1ieeAUb4y0TE26jUFrCIXKpTuVK7uJGN9/Z/2LP5sQA= -go.opentelemetry.io/otel/trace v1.26.0/go.mod h1:4iDxvGDQuUkHve82hJJ8UqrwswHYsZuWCBllGV2U2y0= +go.opentelemetry.io/otel/trace v1.27.0 h1:IqYb813p7cmbHk0a5y6pD5JPakbVfftRXABGt5/Rscw= +go.opentelemetry.io/otel/trace v1.27.0/go.mod h1:6RiD1hkAprV4/q+yd2ln1HG9GoPx39SuvvstaLBl+l4= go.opentelemetry.io/proto/otlp v1.0.0 h1:T0TX0tmXU8a3CbNXzEKGeU5mIVOdf0oykP+u2lIVU/I= go.opentelemetry.io/proto/otlp v1.0.0/go.mod h1:Sy6pihPLfYHkr3NkUbEhGHFhINUSI/v80hjKIs5JXpM= go.starlark.net v0.0.0-20230814145427-12f4cb8177e4 h1:Ydko8M6UfXgvSpGOnbAjRMQDIvBheUsjBjkm6Azcpf4= From b3ea9cc54e23a029d965cd07fcace1cf063b721b Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 22 May 2024 16:40:27 +0000 Subject: [PATCH 02/15] deps: bump github.com/aws/aws-sdk-go-v2/service/s3 from 1.54.1 to 1.54.2 (#392) Bumps [github.com/aws/aws-sdk-go-v2/service/s3](https://github.com/aws/aws-sdk-go-v2) from 1.54.1 to 1.54.2.
Commits

[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=github.com/aws/aws-sdk-go-v2/service/s3&package-manager=go_modules&previous-version=1.54.1&new-version=1.54.2)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) ---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- go.mod | 8 ++++---- go.sum | 16 ++++++++-------- 2 files changed, 12 insertions(+), 12 deletions(-) diff --git a/go.mod b/go.mod index 9ecac8cf08..534be7794e 100644 --- a/go.mod +++ b/go.mod @@ -38,11 +38,11 @@ require ( github.com/aws/aws-sdk-go-v2/internal/configsources v1.3.7 // indirect github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.6.7 // indirect github.com/aws/aws-sdk-go-v2/internal/ini v1.8.0 // indirect - github.com/aws/aws-sdk-go-v2/internal/v4a v1.3.6 // indirect + github.com/aws/aws-sdk-go-v2/internal/v4a v1.3.7 // indirect github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.11.2 // indirect - github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.3.8 // indirect + github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.3.9 // indirect github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.11.9 // indirect - github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.17.6 // indirect + github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.17.7 // indirect github.com/aws/aws-sdk-go-v2/service/sso v1.20.8 // indirect github.com/aws/aws-sdk-go-v2/service/ssooidc v1.24.2 // indirect github.com/aws/aws-sdk-go-v2/service/sts v1.28.9 // indirect @@ -275,7 +275,7 @@ require ( github.com/aws/aws-sdk-go-v2 v1.27.0 github.com/aws/aws-sdk-go-v2/config v1.27.15 github.com/aws/aws-sdk-go-v2/credentials v1.17.15 - github.com/aws/aws-sdk-go-v2/service/s3 v1.54.1 + github.com/aws/aws-sdk-go-v2/service/s3 v1.54.2 github.com/cakturk/go-netstat v0.0.0-20200220111822-e5b49efee7a5 github.com/cilium/cilium v1.15.5 github.com/cilium/ebpf v0.15.0 diff --git a/go.sum b/go.sum index d0d8b49bea..1232baccfb 100644 --- a/go.sum +++ b/go.sum @@ -110,18 +110,18 @@ github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.6.7 h1:4OYVp0705xu8yjdyoWi github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.6.7/go.mod h1:vd7ESTEvI76T2Na050gODNmNU7+OyKrIKroYTu4ABiI= github.com/aws/aws-sdk-go-v2/internal/ini v1.8.0 h1:hT8rVHwugYE2lEfdFE0QWVo81lF7jMrYJVDWI+f+VxU= github.com/aws/aws-sdk-go-v2/internal/ini v1.8.0/go.mod h1:8tu/lYfQfFe6IGnaOdrpVgEL2IrrDOf6/m9RQum4NkY= -github.com/aws/aws-sdk-go-v2/internal/v4a v1.3.6 h1:+/uB/M07Isd7UajQIYW2M4lDc/302gIWu1zMe0d7uKo= -github.com/aws/aws-sdk-go-v2/internal/v4a v1.3.6/go.mod h1:7Gw/GeEezsEzpU/f1JWzSb1Y4M05taehNadic8jfF8U= +github.com/aws/aws-sdk-go-v2/internal/v4a v1.3.7 h1:/FUtT3xsoHO3cfh+I/kCbcMCN98QZRsiFet/V8QkWSs= +github.com/aws/aws-sdk-go-v2/internal/v4a v1.3.7/go.mod h1:MaCAgWpGooQoCWZnMur97rGn5dp350w2+CeiV5406wE= github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.11.2 h1:Ji0DY1xUsUr3I8cHps0G+XM3WWU16lP6yG8qu1GAZAs= github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.11.2/go.mod h1:5CsjAbs3NlGQyZNFACh+zztPDI7fU6eW9QsxjfnuBKg= -github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.3.8 h1:Etk3MkNNAXLKkOkrLcacOZhbH+ICPpM05Wueg/4FZGw= -github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.3.8/go.mod h1:LwdzRBRLEOcMRhcM31ltkzl8Nw4XpnmBkOksr+LY53A= +github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.3.9 h1:UXqEWQI0n+q0QixzU0yUUQBZXRd5037qdInTIHFTl98= +github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.3.9/go.mod h1:xP6Gq6fzGZT8w/ZN+XvGMZ2RU1LeEs7b2yUP5DN8NY4= github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.11.9 h1:Wx0rlZoEJR7JwlSZcHnEa7CNjrSIyVxMFWGAaXy4fJY= github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.11.9/go.mod h1:aVMHdE0aHO3v+f/iw01fmXV/5DbfQ3Bi9nN7nd9bE9Y= -github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.17.6 h1:T9S8fTr0gppdTU6rjrSBl9VFiabxUw41dqzUSozuQP8= -github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.17.6/go.mod h1:mQUaFeeWztcGGBaOxSykT9H/qF+FGw3sCGERh3APsRc= -github.com/aws/aws-sdk-go-v2/service/s3 v1.54.1 h1:q8hQJhndXQXnCnd4nG608lfhapDvylff9CCQyWX0tHQ= -github.com/aws/aws-sdk-go-v2/service/s3 v1.54.1/go.mod h1:4QIYvQFYGX6Q2qhLW6KeJO0iXQUFJ/WLBL0pSdazHwA= +github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.17.7 h1:uO5XR6QGBcmPyo2gxofYJLFkcVQ4izOoGDNenlZhTEk= +github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.17.7/go.mod h1:feeeAYfAcwTReM6vbwjEyDmiGho+YgBhaFULuXDW8kc= +github.com/aws/aws-sdk-go-v2/service/s3 v1.54.2 h1:gYSJhNiOF6J9xaYxu2NFNstoiNELwt0T9w29FxSfN+Y= +github.com/aws/aws-sdk-go-v2/service/s3 v1.54.2/go.mod h1:739CllldowZiPPsDFcJHNF4FXrVxaSGVnZ9Ez9Iz9hc= github.com/aws/aws-sdk-go-v2/service/sso v1.20.8 h1:Kv1hwNG6jHC/sxMTe5saMjH6t6ZLkgfvVxyEjfWL1ks= github.com/aws/aws-sdk-go-v2/service/sso v1.20.8/go.mod h1:c1qtZUWtygI6ZdvKppzCSXsDOq5I4luJPZ0Ud3juFCA= github.com/aws/aws-sdk-go-v2/service/ssooidc v1.24.2 h1:nWBZ1xHCF+A7vv9sDzJOq4NWIdzFYm0kH7Pr4OjHYsQ= From 01c0a76fd3409d76a84f5fbd71aca44bdb01f381 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 22 May 2024 12:50:00 -0400 Subject: [PATCH 03/15] deps: bump github.com/onsi/ginkgo/v2 from 2.17.3 to 2.18.0 (#397) Bumps [github.com/onsi/ginkgo/v2](https://github.com/onsi/ginkgo) from 2.17.3 to 2.18.0.
Release notes

Sourced from github.com/onsi/ginkgo/v2's releases.

v2.18.0

2.18.0

Features

  • Add --slience-skips and --force-newlines [f010b65]
  • fail when no tests were run and --fail-on-empty was set [d80eebe]

Fixes

  • Fix table entry context edge case [42013d6]

Maintenance

  • Bump golang.org/x/tools from 0.20.0 to 0.21.0 (#1406) [fcf1fd7]
  • Bump github.com/onsi/gomega from 1.33.0 to 1.33.1 (#1399) [8bb14fd]
  • Bump golang.org/x/net from 0.24.0 to 0.25.0 (#1407) [04bfad7]
Changelog

Sourced from github.com/onsi/ginkgo/v2's changelog.

2.18.0

Features

  • Add --slience-skips and --force-newlines [f010b65]
  • fail when no tests were run and --fail-on-empty was set [d80eebe]

Fixes

  • Fix table entry context edge case [42013d6]

Maintenance

  • Bump golang.org/x/tools from 0.20.0 to 0.21.0 (#1406) [fcf1fd7]
  • Bump github.com/onsi/gomega from 1.33.0 to 1.33.1 (#1399) [8bb14fd]
  • Bump golang.org/x/net from 0.24.0 to 0.25.0 (#1407) [04bfad7]
Commits
  • eb27ca8 v2.18.0
  • f010b65 Add --slience-skips and --force-newlines
  • 42013d6 Fix table entry context edge case
  • 9e234ea always rebuild and run ginkgo in makefile
  • 5ce8355 add --fail-on-empty to recommended CI flags in docs
  • 3ffbf8b add makefile
  • d80eebe fail when no tests were run and --fail-on-empty was set
  • fcf1fd7 Bump golang.org/x/tools from 0.20.0 to 0.21.0 (#1406)
  • 8bb14fd Bump github.com/onsi/gomega from 1.33.0 to 1.33.1 (#1399)
  • 04bfad7 Bump golang.org/x/net from 0.24.0 to 0.25.0 (#1407)
  • See full diff in compare view

[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=github.com/onsi/ginkgo/v2&package-manager=go_modules&previous-version=2.17.3&new-version=2.18.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) ---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- go.mod | 12 ++++++------ go.sum | 24 ++++++++++++------------ 2 files changed, 18 insertions(+), 18 deletions(-) diff --git a/go.mod b/go.mod index 534be7794e..c3bea9af74 100644 --- a/go.mod +++ b/go.mod @@ -207,11 +207,11 @@ require ( go.starlark.net v0.0.0-20230814145427-12f4cb8177e4 // indirect go.uber.org/dig v1.17.1 // indirect go4.org/netipx v0.0.0-20231129151722-fdeea329fbba // indirect - golang.org/x/crypto v0.22.0 // indirect + golang.org/x/crypto v0.23.0 // indirect golang.org/x/mod v0.17.0 // indirect - golang.org/x/text v0.14.0 // indirect + golang.org/x/text v0.15.0 // indirect golang.org/x/time v0.5.0 // indirect - golang.org/x/tools v0.20.0 // indirect + golang.org/x/tools v0.21.0 // indirect gomodules.xyz/jsonpatch/v2 v2.4.0 // indirect google.golang.org/genproto v0.0.0-20240123012728-ef4313101c80 // indirect google.golang.org/genproto/googleapis/api v0.0.0-20240123012728-ef4313101c80 // indirect @@ -241,11 +241,11 @@ require ( github.com/spf13/pflag v1.0.5 // indirect github.com/stretchr/testify v1.9.0 go.uber.org/multierr v1.11.0 // indirect - golang.org/x/net v0.24.0 // indirect + golang.org/x/net v0.25.0 // indirect golang.org/x/oauth2 v0.18.0 // indirect golang.org/x/sync v0.7.0 golang.org/x/sys v0.20.0 - golang.org/x/term v0.19.0 // indirect + golang.org/x/term v0.20.0 // indirect google.golang.org/appengine v1.6.8 // indirect google.golang.org/protobuf v1.34.1 gopkg.in/yaml.v2 v2.4.0 // indirect @@ -285,7 +285,7 @@ require ( github.com/jellydator/ttlcache/v3 v3.1.1 github.com/jsternberg/zap-logfmt v1.3.0 github.com/microsoft/ApplicationInsights-Go v0.4.4 - github.com/onsi/ginkgo/v2 v2.17.3 + github.com/onsi/ginkgo/v2 v2.18.0 github.com/onsi/gomega v1.33.1 github.com/pkg/errors v0.9.1 github.com/prometheus/client_model v0.6.0 diff --git a/go.sum b/go.sum index 1232baccfb..ad783b7f0e 100644 --- a/go.sum +++ b/go.sum @@ -648,8 +648,8 @@ github.com/oklog/ulid v1.3.1 h1:EGfNDEx6MqHz8B3uNV6QAib1UR2Lm97sHi3ocA6ESJ4= github.com/oklog/ulid v1.3.1/go.mod h1:CirwcVhetQ6Lv90oh/F+FBtV6XMibvdAFo93nm5qn4U= github.com/onsi/ginkgo v1.6.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= github.com/onsi/ginkgo v1.8.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= -github.com/onsi/ginkgo/v2 v2.17.3 h1:oJcvKpIb7/8uLpDDtnQuf18xVnwKp8DTD7DQ6gTd/MU= -github.com/onsi/ginkgo/v2 v2.17.3/go.mod h1:nP2DPOQoNsQmsVyv5rDA8JkXQoCs6goXIvr/PRJ1eCc= +github.com/onsi/ginkgo/v2 v2.18.0 h1:W9Y7IWXxPUpAit9ieMOLI7PJZGaW22DTKgiVAuhDTLc= +github.com/onsi/ginkgo/v2 v2.18.0/go.mod h1:rlwLi9PilAFJ8jCg9UE1QP6VBpd6/xj3SRC0d6TU0To= github.com/onsi/gomega v1.5.0/go.mod h1:ex+gbHU/CVuBBDIJjb2X0qEXbFg53c61hWP/1CpauHY= github.com/onsi/gomega v1.33.1 h1:dsYjIxxSR755MDmKVsaFQTE22ChNBcuuTWgkUDSubOk= github.com/onsi/gomega v1.33.1/go.mod h1:U4R44UsT+9eLIaYRB2a5qajjtQYn0hauxvRm16AVYg0= @@ -874,8 +874,8 @@ golang.org/x/crypto v0.0.0-20220622213112-05595931fe9d/go.mod h1:IxCIyHEi3zRg3s0 golang.org/x/crypto v0.0.0-20220722155217-630584e8d5aa/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= golang.org/x/crypto v0.3.0/go.mod h1:hebNnKkNXi2UzZN1eVRvBB7co0a+JxK6XbPiWVs/3J4= golang.org/x/crypto v0.6.0/go.mod h1:OFC/31mSvZgRz0V1QTNCzfAI1aIRzbiufJtkMIlEp58= -golang.org/x/crypto v0.22.0 h1:g1v0xeRhjcugydODzvb3mEM9SQ0HGp9s/nh3COQ/C30= -golang.org/x/crypto v0.22.0/go.mod h1:vr6Su+7cTlO45qkww3VDJlzDn0ctJvRgYbC2NvXHt+M= +golang.org/x/crypto v0.23.0 h1:dIJU/v2J8Mdglj/8rJ6UUOM3Zc9zLZxVZwwxMooUSAI= +golang.org/x/crypto v0.23.0/go.mod h1:CKFgDieR+mRhux2Lsu27y0fO304Db0wZe70UKqHu0v8= golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20240222234643-814bf88cf225 h1:LfspQV/FYTatPTr/3HzIcmiUFH7PGP+OQ6mgDYo3yuQ= golang.org/x/exp v0.0.0-20240222234643-814bf88cf225/go.mod h1:CxmFvTBINI24O/j8iY7H1xHzx2i4OsyguNBmN/uPtqc= @@ -919,8 +919,8 @@ golang.org/x/net v0.0.0-20220127200216-cd36cc0744dd/go.mod h1:CfG3xpIq0wQ8r1q4Su golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c= golang.org/x/net v0.2.0/go.mod h1:KqCZLdyyvdV855qA2rE3GC2aiw5xGR5TEjj8smXukLY= golang.org/x/net v0.6.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs= -golang.org/x/net v0.24.0 h1:1PcaxkF854Fu3+lvBIx5SYn9wRlBzzcnHZSiaFFAb0w= -golang.org/x/net v0.24.0/go.mod h1:2Q7sJY5mzlzWjKtYUEXSlBWCdyaioyXzRB2RtU8KVE8= +golang.org/x/net v0.25.0 h1:d/OCCoBEUq33pjydKrGQhw7IlUPI2Oylr+8qLx49kac= +golang.org/x/net v0.25.0/go.mod h1:JkAGAh7GEvH74S6FOH42FLoXpXbE/aqXSrIQjXgsiwM= golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= golang.org/x/oauth2 v0.18.0 h1:09qnuIAgzdx1XplqJvW6CQqMCtGZykZWcXzPMPUusvI= golang.org/x/oauth2 v0.18.0/go.mod h1:Wf7knwG0MPoWIMMBgFlEaSUDaKskp0dCfrlJRJXbBi8= @@ -998,8 +998,8 @@ golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuX golang.org/x/term v0.0.0-20220526004731-065cf7ba2467/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= golang.org/x/term v0.2.0/go.mod h1:TVmDHMZPmdnySmBfhjOoOdhjzdE1h4u1VwSiw2l1Nuc= golang.org/x/term v0.5.0/go.mod h1:jMB1sMXY+tzblOD4FWmEbocvup2/aLOaQEp7JmGp78k= -golang.org/x/term v0.19.0 h1:+ThwsDv+tYfnJFhF4L8jITxu1tdTWRTZpdsWgEgjL6Q= -golang.org/x/term v0.19.0/go.mod h1:2CuTdWZ7KHSQwUzKva0cbMg6q2DMI3Mmxp+gKJbskEk= +golang.org/x/term v0.20.0 h1:VnkxpohqXaOBYJtBmEppKUG6mXpi+4O6purfc2+sMhw= +golang.org/x/term v0.20.0/go.mod h1:8UkIAJTvZgivsXaD6/pH6U9ecQzZ45awqEOzuCvwpFY= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.2/go.mod h1:bEr9sfX3Q8Zfm5fL9x+3itogRgK3+ptLWKqgva+5dAk= golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= @@ -1008,8 +1008,8 @@ golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ= golang.org/x/text v0.3.8/go.mod h1:E6s5w1FMmriuDzIBO73fBruAKo1PCIq6d2Q6DHfQ8WQ= golang.org/x/text v0.4.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= golang.org/x/text v0.7.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= -golang.org/x/text v0.14.0 h1:ScX5w1eTa3QqT8oi6+ziP7dTV1S2+ALU0bI+0zXKWiQ= -golang.org/x/text v0.14.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU= +golang.org/x/text v0.15.0 h1:h1V/4gjBv8v9cjcR6+AR5+/cIYK5N/WAgiv4xlsEtAk= +golang.org/x/text v0.15.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU= golang.org/x/time v0.5.0 h1:o7cqy6amK/52YcAKIPlM3a+Fpj35zvRj2TP+e1xFSfk= golang.org/x/time v0.5.0/go.mod h1:3BpzKBy/shNhVucY/MWOyx10tF3SFh9QdLuxbVysPQM= golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= @@ -1024,8 +1024,8 @@ golang.org/x/tools v0.0.0-20200130002326-2f3ba24bd6e7/go.mod h1:TB2adYChydJhpapK golang.org/x/tools v0.0.0-20200619180055-7c47624df98f/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= golang.org/x/tools v0.0.0-20210106214847-113979e3529a/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc= -golang.org/x/tools v0.20.0 h1:hz/CVckiOxybQvFw6h7b/q80NTr9IUQb4s1IIzW7KNY= -golang.org/x/tools v0.20.0/go.mod h1:WvitBU7JJf6A4jOdg4S1tviW9bhUxkgeCui/0JHctQg= +golang.org/x/tools v0.21.0 h1:qc0xYgIbsSDt9EyWz05J5wfa7LOVW0YTLOXrqdLAWIw= +golang.org/x/tools v0.21.0/go.mod h1:aiJjzUbINMkxbQROHiO6hDPo2LHcIPhhQsa9DLh0yGk= golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= From ce408bd253e76cfc9934a3ff1eea6ff6ed6e0c38 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 23 May 2024 09:14:56 -0700 Subject: [PATCH 04/15] deps: bump aquasecurity/trivy-action from 0.20.0 to 0.21.0 (#401) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Bumps [aquasecurity/trivy-action](https://github.com/aquasecurity/trivy-action) from 0.20.0 to 0.21.0.
Release notes

Sourced from aquasecurity/trivy-action's releases.

v0.21.0

What's Changed

New Contributors

Full Changelog: https://github.com/aquasecurity/trivy-action/compare/0.20.0...0.21.0

Commits

[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=aquasecurity/trivy-action&package-manager=github_actions&previous-version=0.20.0&new-version=0.21.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) ---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/trivy.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/trivy.yaml b/.github/workflows/trivy.yaml index 7fe76b3f2f..1ebc91c700 100644 --- a/.github/workflows/trivy.yaml +++ b/.github/workflows/trivy.yaml @@ -30,7 +30,7 @@ jobs: echo "TAG=$(make version)" >> $GITHUB_ENV - name: Run Trivy vulnerability scanner - uses: aquasecurity/trivy-action@b2933f565dbc598b29947660e66259e3c7bc8561 + uses: aquasecurity/trivy-action@fd25fed6972e341ff0007ddb61f77e88103953c2 with: image-ref: "ghcr.io/${{ github.repository }}/${{ matrix.image }}:${{ env.TAG }}" format: "template" From 98baaf6c856482984ee86756693a60bbbf5df24e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 24 May 2024 16:03:22 -0700 Subject: [PATCH 05/15] deps: bump github.com/aws/aws-sdk-go-v2/credentials from 1.17.15 to 1.17.16 (#404) Bumps [github.com/aws/aws-sdk-go-v2/credentials](https://github.com/aws/aws-sdk-go-v2) from 1.17.15 to 1.17.16.
Commits

[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=github.com/aws/aws-sdk-go-v2/credentials&package-manager=go_modules&previous-version=1.17.15&new-version=1.17.16)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) ---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- go.mod | 8 ++++---- go.sum | 16 ++++++++-------- 2 files changed, 12 insertions(+), 12 deletions(-) diff --git a/go.mod b/go.mod index c3bea9af74..5421134e13 100644 --- a/go.mod +++ b/go.mod @@ -43,9 +43,9 @@ require ( github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.3.9 // indirect github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.11.9 // indirect github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.17.7 // indirect - github.com/aws/aws-sdk-go-v2/service/sso v1.20.8 // indirect - github.com/aws/aws-sdk-go-v2/service/ssooidc v1.24.2 // indirect - github.com/aws/aws-sdk-go-v2/service/sts v1.28.9 // indirect + github.com/aws/aws-sdk-go-v2/service/sso v1.20.9 // indirect + github.com/aws/aws-sdk-go-v2/service/ssooidc v1.24.3 // indirect + github.com/aws/aws-sdk-go-v2/service/sts v1.28.10 // indirect github.com/aws/smithy-go v1.20.2 // indirect github.com/beorn7/perks v1.0.1 // indirect github.com/blang/semver/v4 v4.0.0 // indirect @@ -274,7 +274,7 @@ require ( github.com/Microsoft/hcsshim v0.12.0-rc.3 github.com/aws/aws-sdk-go-v2 v1.27.0 github.com/aws/aws-sdk-go-v2/config v1.27.15 - github.com/aws/aws-sdk-go-v2/credentials v1.17.15 + github.com/aws/aws-sdk-go-v2/credentials v1.17.16 github.com/aws/aws-sdk-go-v2/service/s3 v1.54.2 github.com/cakturk/go-netstat v0.0.0-20200220111822-e5b49efee7a5 github.com/cilium/cilium v1.15.5 diff --git a/go.sum b/go.sum index ad783b7f0e..1018af0331 100644 --- a/go.sum +++ b/go.sum @@ -100,8 +100,8 @@ github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.6.2 h1:x6xsQXGSmW6frevw github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.6.2/go.mod h1:lPprDr1e6cJdyYeGXnRaJoP4Md+cDBvi2eOj00BlGmg= github.com/aws/aws-sdk-go-v2/config v1.27.15 h1:uNnGLZ+DutuNEkuPh6fwqK7LpEiPmzb7MIMA1mNWEUc= github.com/aws/aws-sdk-go-v2/config v1.27.15/go.mod h1:7j7Kxx9/7kTmL7z4LlhwQe63MYEE5vkVV6nWg4ZAI8M= -github.com/aws/aws-sdk-go-v2/credentials v1.17.15 h1:YDexlvDRCA8ems2T5IP1xkMtOZ1uLJOCJdTr0igs5zo= -github.com/aws/aws-sdk-go-v2/credentials v1.17.15/go.mod h1:vxHggqW6hFNaeNC0WyXS3VdyjcV0a4KMUY4dKJ96buU= +github.com/aws/aws-sdk-go-v2/credentials v1.17.16 h1:7d2QxY83uYl0l58ceyiSpxg9bSbStqBC6BeEeHEchwo= +github.com/aws/aws-sdk-go-v2/credentials v1.17.16/go.mod h1:Ae6li/6Yc6eMzysRL2BXlPYvnrLLBg3D11/AmOjw50k= github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.16.3 h1:dQLK4TjtnlRGb0czOht2CevZ5l6RSyRWAnKeGd7VAFE= github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.16.3/go.mod h1:TL79f2P6+8Q7dTsILpiVST+AL9lkF6PPGI167Ny0Cjw= github.com/aws/aws-sdk-go-v2/internal/configsources v1.3.7 h1:lf/8VTF2cM+N4SLzaYJERKEWAXq8MOMpZfU6wEPWsPk= @@ -122,12 +122,12 @@ github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.17.7 h1:uO5XR6QGBcmPyo github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.17.7/go.mod h1:feeeAYfAcwTReM6vbwjEyDmiGho+YgBhaFULuXDW8kc= github.com/aws/aws-sdk-go-v2/service/s3 v1.54.2 h1:gYSJhNiOF6J9xaYxu2NFNstoiNELwt0T9w29FxSfN+Y= github.com/aws/aws-sdk-go-v2/service/s3 v1.54.2/go.mod h1:739CllldowZiPPsDFcJHNF4FXrVxaSGVnZ9Ez9Iz9hc= -github.com/aws/aws-sdk-go-v2/service/sso v1.20.8 h1:Kv1hwNG6jHC/sxMTe5saMjH6t6ZLkgfvVxyEjfWL1ks= -github.com/aws/aws-sdk-go-v2/service/sso v1.20.8/go.mod h1:c1qtZUWtygI6ZdvKppzCSXsDOq5I4luJPZ0Ud3juFCA= -github.com/aws/aws-sdk-go-v2/service/ssooidc v1.24.2 h1:nWBZ1xHCF+A7vv9sDzJOq4NWIdzFYm0kH7Pr4OjHYsQ= -github.com/aws/aws-sdk-go-v2/service/ssooidc v1.24.2/go.mod h1:9lmoVDVLz/yUZwLaQ676TK02fhCu4+PgRSmMaKR1ozk= -github.com/aws/aws-sdk-go-v2/service/sts v1.28.9 h1:Qp6Boy0cGDloOE3zI6XhNLNZgjNS8YmiFQFHe71SaW0= -github.com/aws/aws-sdk-go-v2/service/sts v1.28.9/go.mod h1:0Aqn1MnEuitqfsCNyKsdKLhDUOr4txD/g19EfiUqgws= +github.com/aws/aws-sdk-go-v2/service/sso v1.20.9 h1:aD7AGQhvPuAxlSUfo0CWU7s6FpkbyykMhGYMvlqTjVs= +github.com/aws/aws-sdk-go-v2/service/sso v1.20.9/go.mod h1:c1qtZUWtygI6ZdvKppzCSXsDOq5I4luJPZ0Ud3juFCA= +github.com/aws/aws-sdk-go-v2/service/ssooidc v1.24.3 h1:Pav5q3cA260Zqez42T9UhIlsd9QeypszRPwC9LdSSsQ= +github.com/aws/aws-sdk-go-v2/service/ssooidc v1.24.3/go.mod h1:9lmoVDVLz/yUZwLaQ676TK02fhCu4+PgRSmMaKR1ozk= +github.com/aws/aws-sdk-go-v2/service/sts v1.28.10 h1:69tpbPED7jKPyzMcrwSvhWcJ9bPnZsZs18NT40JwM0g= +github.com/aws/aws-sdk-go-v2/service/sts v1.28.10/go.mod h1:0Aqn1MnEuitqfsCNyKsdKLhDUOr4txD/g19EfiUqgws= github.com/aws/smithy-go v1.20.2 h1:tbp628ireGtzcHDDmLT/6ADHidqnwgF57XOXZe6tp4Q= github.com/aws/smithy-go v1.20.2/go.mod h1:krry+ya/rV9RDcV/Q16kpu6ypI4K2czasz0NC3qS14E= github.com/benbjohnson/clock v1.1.0/go.mod h1:J11/hYXuz8f4ySSvYwY0FKfm+ezbsZBKZxNJlLklBHA= From 472cc425b97513175080a240f481bc7566295fc2 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 24 May 2024 16:03:35 -0700 Subject: [PATCH 06/15] deps: bump github.com/goreleaser/goreleaser from 1.26.1 to 1.26.2 in /hack/tools (#402) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Bumps [github.com/goreleaser/goreleaser](https://github.com/goreleaser/goreleaser) from 1.26.1 to 1.26.2.
Release notes

Sourced from github.com/goreleaser/goreleaser's releases.

v1.26.2

Changelog

Bug fixes

  • b3d646069937d74c04623a4979c2e429b55a7439: fix(docs): version typo (#4878) (@​nullswan)

Dependency updates

  • 73a22e56dd7577034fa2d3769862f9154532c661: chore(deps): bump actions/checkout from 4.1.5 to 4.1.6 (#4876) (@​dependabot[bot])
  • 1c66ce40d063ea13b66a4df20fbc1d734a9a232c: chore(deps): bump anchore/sbom-action from 0.15.11 to 0.16.0 (#4881) (@​dependabot[bot])
  • 39d1f446f52bc5764db4c89bcbf5d6ef70b62575: chore(deps): bump cachix/install-nix-action from 26 to 27 (#4874) (@​dependabot[bot])
  • 1d49b225c67d38008d44f3320ba0597e7bc83ce5: chore(deps): bump codecov/codecov-action from 4.4.0 to 4.4.1 (#4882) (@​dependabot[bot])
  • fae464e2783c11958733929f1cd871db34aaf2e3: chore(deps): bump github.com/caarlos0/env/v11 from 11.0.0 to 11.0.1 (#4888) (@​dependabot[bot])
  • de796eb4e5ac03eef993300861803de792799080: chore(deps): bump github.com/google/ko from 0.15.2 to 0.15.4 (#4885) (@​dependabot[bot])
  • b4d768bf16160766cc04a5a5fcc288fd81de8c72: chore(deps): bump github.com/mattn/go-mastodon from 0.0.6 to 0.0.8 (#4872) (@​dependabot[bot])
  • a82491afe446295c8756a2c5f46950a11d717aa0: chore(deps): bump github.com/slack-go/slack from 0.12.5 to 0.13.0 (#4871) (@​dependabot[bot])
  • cf2c47a5895da1b0ce0de3620e8a8953d380b905: chore(deps): bump github/codeql-action from 2.13.4 to 3.25.5 (#4880) (@​dependabot[bot])
  • 79caa9c28a394f1949ef2a82d9aa7252c1758ee9: chore(deps): bump github/codeql-action from 3.25.5 to 3.25.6 (#4883) (@​dependabot[bot])
  • b534f07d5b2191e314862d94fccc8ce93a3461d5: chore(deps): bump golang from c24516e to f1fe698 (#4873) (@​dependabot[bot])
  • d7c23c168fa61d738cd6fba03a645071e174bba5: chore(deps): bump golang from f1fe698 to b8ded51 (#4887) (@​dependabot[bot])

Documentation updates

  • 2023d4bcc6891b28b56a0c7b5b7481c4a0d68023: docs: fix winget default path (#4875) (@​lionello)

Build process updates

  • f4cd8fc1561e288ce198c60105c8277fcc24de03: build: fix changelog not showing dependencies updates (@​caarlos0)

Other work

  • 919b132e0de38ac253fe83f7b92560f1d95cda32: chore: auto-update generated files (@​actions-user)

Full Changelog: https://github.com/goreleaser/goreleaser/compare/v1.26.1...v1.26.2

Helping out

This release is only possible thanks to all the support of some awesome people!

Want to be one of them? You can sponsor, get a Pro License or contribute with code.

Where to go next?

Commits
  • d7c23c1 chore(deps): bump golang from f1fe698 to b8ded51 (#4887)
  • fae464e chore(deps): bump github.com/caarlos0/env/v11 from 11.0.0 to 11.0.1 (#4888)
  • f4cd8fc build: fix changelog not showing dependencies updates
  • de796eb chore(deps): bump github.com/google/ko from 0.15.2 to 0.15.4 (#4885)
  • 1c66ce4 chore(deps): bump anchore/sbom-action from 0.15.11 to 0.16.0 (#4881)
  • 1d49b22 chore(deps): bump codecov/codecov-action from 4.4.0 to 4.4.1 (#4882)
  • 79caa9c chore(deps): bump github/codeql-action from 3.25.5 to 3.25.6 (#4883)
  • cf2c47a chore(deps): bump github/codeql-action from 2.13.4 to 3.25.5 (#4880)
  • b3d6460 fix(docs): version typo (#4878)
  • 73a22e5 chore(deps): bump actions/checkout from 4.1.5 to 4.1.6 (#4876)
  • Additional commits viewable in compare view

[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=github.com/goreleaser/goreleaser&package-manager=go_modules&previous-version=1.26.1&new-version=1.26.2)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) ---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- hack/tools/go.mod | 49 ++++++++++---------- hack/tools/go.sum | 111 +++++++++++++++++++++------------------------- 2 files changed, 75 insertions(+), 85 deletions(-) diff --git a/hack/tools/go.mod b/hack/tools/go.mod index 141760508d..257be94b24 100644 --- a/hack/tools/go.mod +++ b/hack/tools/go.mod @@ -4,7 +4,7 @@ go 1.22 require ( github.com/golangci/golangci-lint v1.58.2 - github.com/goreleaser/goreleaser v1.26.1 + github.com/goreleaser/goreleaser v1.26.2 github.com/onsi/ginkgo v1.16.5 go.uber.org/mock v0.4.0 mvdan.cc/gofumpt v0.6.0 @@ -69,29 +69,29 @@ require ( github.com/ashanbrown/makezero v1.1.1 // indirect github.com/atc0005/go-teams-notify/v2 v2.10.0 // indirect github.com/aws/aws-sdk-go v1.53.0 // indirect - github.com/aws/aws-sdk-go-v2 v1.26.0 // indirect + github.com/aws/aws-sdk-go-v2 v1.26.1 // indirect github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.6.1 // indirect - github.com/aws/aws-sdk-go-v2/config v1.27.9 // indirect - github.com/aws/aws-sdk-go-v2/credentials v1.17.9 // indirect - github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.16.0 // indirect + github.com/aws/aws-sdk-go-v2/config v1.27.13 // indirect + github.com/aws/aws-sdk-go-v2/credentials v1.17.13 // indirect + github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.16.1 // indirect github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.16.9 // indirect - github.com/aws/aws-sdk-go-v2/internal/configsources v1.3.4 // indirect - github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.6.4 // indirect + github.com/aws/aws-sdk-go-v2/internal/configsources v1.3.5 // indirect + github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.6.5 // indirect github.com/aws/aws-sdk-go-v2/internal/ini v1.8.0 // indirect github.com/aws/aws-sdk-go-v2/internal/v4a v1.3.3 // indirect - github.com/aws/aws-sdk-go-v2/service/ecr v1.20.2 // indirect - github.com/aws/aws-sdk-go-v2/service/ecrpublic v1.18.2 // indirect - github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.11.1 // indirect + github.com/aws/aws-sdk-go-v2/service/ecr v1.28.0 // indirect + github.com/aws/aws-sdk-go-v2/service/ecrpublic v1.23.5 // indirect + github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.11.2 // indirect github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.3.5 // indirect - github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.11.6 // indirect + github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.11.7 // indirect github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.17.3 // indirect github.com/aws/aws-sdk-go-v2/service/kms v1.30.0 // indirect github.com/aws/aws-sdk-go-v2/service/s3 v1.51.4 // indirect - github.com/aws/aws-sdk-go-v2/service/sso v1.20.3 // indirect - github.com/aws/aws-sdk-go-v2/service/ssooidc v1.23.3 // indirect - github.com/aws/aws-sdk-go-v2/service/sts v1.28.5 // indirect - github.com/aws/smithy-go v1.20.1 // indirect - github.com/awslabs/amazon-ecr-credential-helper/ecr-login v0.0.0-20231024185945-8841054dbdb8 // indirect + github.com/aws/aws-sdk-go-v2/service/sso v1.20.6 // indirect + github.com/aws/aws-sdk-go-v2/service/ssooidc v1.24.0 // indirect + github.com/aws/aws-sdk-go-v2/service/sts v1.28.7 // indirect + github.com/aws/smithy-go v1.20.2 // indirect + github.com/awslabs/amazon-ecr-credential-helper/ecr-login v0.0.0-20240514230400-03fa26f5508f // indirect github.com/aymanbagabas/go-osc52/v2 v2.0.1 // indirect github.com/bahlo/generic-list-go v0.2.0 // indirect github.com/beorn7/perks v1.0.1 // indirect @@ -108,7 +108,7 @@ require ( github.com/butuzov/ireturn v0.3.0 // indirect github.com/butuzov/mirror v1.2.0 // indirect github.com/caarlos0/ctrlc v1.2.0 // indirect - github.com/caarlos0/env/v11 v11.0.0 // indirect + github.com/caarlos0/env/v11 v11.0.1 // indirect github.com/caarlos0/go-reddit/v3 v3.0.1 // indirect github.com/caarlos0/go-shellwords v1.0.12 // indirect github.com/caarlos0/go-version v0.1.1 // indirect @@ -143,8 +143,8 @@ require ( github.com/distribution/reference v0.5.0 // indirect github.com/docker/cli v25.0.4+incompatible // indirect github.com/docker/distribution v2.8.3+incompatible // indirect - github.com/docker/docker v25.0.5+incompatible // indirect - github.com/docker/docker-credential-helpers v0.8.0 // indirect + github.com/docker/docker v26.1.3+incompatible // indirect + github.com/docker/docker-credential-helpers v0.8.1 // indirect github.com/docker/go-connections v0.4.0 // indirect github.com/docker/go-units v0.5.0 // indirect github.com/dustin/go-humanize v1.0.1 // indirect @@ -210,7 +210,7 @@ require ( github.com/google/go-github/v62 v62.0.0 // indirect github.com/google/go-querystring v1.1.0 // indirect github.com/google/gofuzz v1.2.0 // indirect - github.com/google/ko v0.15.2 // indirect + github.com/google/ko v0.15.4 // indirect github.com/google/rpmpack v0.6.1-0.20240329070804-c2247cbb881a // indirect github.com/google/s2a-go v0.1.7 // indirect github.com/google/safetext v0.0.0-20220905092116-b49f7bc46da2 // indirect @@ -288,7 +288,7 @@ require ( github.com/mattn/go-colorable v0.1.13 // indirect github.com/mattn/go-isatty v0.0.20 // indirect github.com/mattn/go-localereader v0.0.1 // indirect - github.com/mattn/go-mastodon v0.0.6 // indirect + github.com/mattn/go-mastodon v0.0.8 // indirect github.com/mattn/go-runewidth v0.0.15 // indirect github.com/mgechev/revive v1.3.7 // indirect github.com/minio/sha256-simd v1.0.1 // indirect @@ -296,6 +296,7 @@ require ( github.com/mitchellh/go-homedir v1.1.0 // indirect github.com/mitchellh/mapstructure v1.5.0 // indirect github.com/mitchellh/reflectwalk v1.0.2 // indirect + github.com/moby/docker-image-spec v1.3.1 // indirect github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect github.com/modern-go/reflect2 v1.0.2 // indirect github.com/moricho/tparallel v0.3.1 // indirect @@ -363,7 +364,7 @@ require ( github.com/sivchari/containedctx v1.0.3 // indirect github.com/sivchari/tenv v1.7.1 // indirect github.com/skeema/knownhosts v1.2.2 // indirect - github.com/slack-go/slack v0.12.5 // indirect + github.com/slack-go/slack v0.13.0 // indirect github.com/sonatard/noctx v0.0.2 // indirect github.com/sourcegraph/conc v0.3.0 // indirect github.com/sourcegraph/go-diff v0.7.0 // indirect @@ -449,13 +450,13 @@ require ( honnef.co/go/tools v0.4.7 // indirect k8s.io/api v0.29.3 // indirect k8s.io/apiextensions-apiserver v0.29.0 // indirect - k8s.io/apimachinery v0.29.3 // indirect + k8s.io/apimachinery v0.29.4 // indirect k8s.io/klog/v2 v2.120.1 // indirect k8s.io/utils v0.0.0-20230726121419-3b25d923346b // indirect lukechampine.com/blake3 v1.2.1 // indirect mvdan.cc/unparam v0.0.0-20240427195214-063aff900ca1 // indirect sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd // indirect - sigs.k8s.io/kind v0.22.0 // indirect + sigs.k8s.io/kind v0.23.0 // indirect sigs.k8s.io/structured-merge-diff/v4 v4.4.1 // indirect sigs.k8s.io/yaml v1.4.0 // indirect software.sslmate.com/src/go-pkcs12 v0.4.0 // indirect diff --git a/hack/tools/go.sum b/hack/tools/go.sum index de229ab87b..b254f79b4a 100644 --- a/hack/tools/go.sum +++ b/hack/tools/go.sum @@ -75,7 +75,6 @@ github.com/Azure/go-autorest/tracing v0.6.0/go.mod h1:+vhtPC754Xsa23ID7GlGsrdKBp github.com/AzureAD/microsoft-authentication-library-for-go v1.2.2 h1:XHOnouVk1mxXfQidrMEnLlPk9UMeRtyBTnEFtxkV0kU= github.com/AzureAD/microsoft-authentication-library-for-go v1.2.2/go.mod h1:wP83P5OoQ5p6ip3ScPr0BAq0BvuPAvacpEuSzyouqAI= github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU= -github.com/BurntSushi/toml v1.0.0/go.mod h1:CxXYINrC8qIiEnFrOxCa7Jy5BFHlXnUU2pbicEuybxQ= github.com/BurntSushi/toml v1.3.2 h1:o7IhLm0Msx3BaB+n3Ag7L8EVlByGnpq14C4YWiu/gL8= github.com/BurntSushi/toml v1.3.2/go.mod h1:CxXYINrC8qIiEnFrOxCa7Jy5BFHlXnUU2pbicEuybxQ= github.com/Crocmagnon/fatcontext v0.2.2 h1:OrFlsDdOj9hW/oBEJBNSuH7QWf+E9WPVHw+x52bXVbk= @@ -145,56 +144,52 @@ github.com/atc0005/go-teams-notify/v2 v2.10.0 h1:eQvRIkyESQgBvlUdQ/iPol/lj3QcRyr github.com/atc0005/go-teams-notify/v2 v2.10.0/go.mod h1:SIeE1UfCcVRYMqP5b+r1ZteHyA/2UAjzWF5COnZ8q0w= github.com/aws/aws-sdk-go v1.53.0 h1:MMo1x1ggPPxDfHMXJnQudTbGXYlD4UigUAud1DJxPVo= github.com/aws/aws-sdk-go v1.53.0/go.mod h1:LF8svs817+Nz+DmiMQKTO3ubZ/6IaTpq3TjupRn3Eqk= -github.com/aws/aws-sdk-go-v2 v1.21.2/go.mod h1:ErQhvNuEMhJjweavOYhxVkn2RUx7kQXVATHrjKtxIpM= -github.com/aws/aws-sdk-go-v2 v1.26.0 h1:/Ce4OCiM3EkpW7Y+xUnfAFpchU78K7/Ug01sZni9PgA= -github.com/aws/aws-sdk-go-v2 v1.26.0/go.mod h1:35hUlJVYd+M++iLI3ALmVwMOyRYMmRqUXpTtRGW+K9I= +github.com/aws/aws-sdk-go-v2 v1.26.1 h1:5554eUqIYVWpU0YmeeYZ0wU64H2VLBs8TlhRB2L+EkA= +github.com/aws/aws-sdk-go-v2 v1.26.1/go.mod h1:ffIFB97e2yNsv4aTSGkqtHnppsIJzw7G7BReUZ3jCXM= github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.6.1 h1:gTK2uhtAPtFcdRRJilZPx8uJLL2J85xK11nKtWL0wfU= github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.6.1/go.mod h1:sxpLb+nZk7tIfCWChfd+h4QwHNUR57d8hA1cleTkjJo= -github.com/aws/aws-sdk-go-v2/config v1.27.9 h1:gRx/NwpNEFSk+yQlgmk1bmxxvQ5TyJ76CWXs9XScTqg= -github.com/aws/aws-sdk-go-v2/config v1.27.9/go.mod h1:dK1FQfpwpql83kbD873E9vz4FyAxuJtR22wzoXn3qq0= -github.com/aws/aws-sdk-go-v2/credentials v1.17.9 h1:N8s0/7yW+h8qR8WaRlPQeJ6czVMNQVNtNdUqf6cItao= -github.com/aws/aws-sdk-go-v2/credentials v1.17.9/go.mod h1:446YhIdmSV0Jf/SLafGZalQo+xr2iw7/fzXGDPTU1yQ= -github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.16.0 h1:af5YzcLf80tv4Em4jWVD75lpnOHSBkPUZxZfGkrI3HI= -github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.16.0/go.mod h1:nQ3how7DMnFMWiU1SpECohgC82fpn4cKZ875NDMmwtA= +github.com/aws/aws-sdk-go-v2/config v1.27.13 h1:WbKW8hOzrWoOA/+35S5okqO/2Ap8hkkFUzoW8Hzq24A= +github.com/aws/aws-sdk-go-v2/config v1.27.13/go.mod h1:XLiyiTMnguytjRER7u5RIkhIqS8Nyz41SwAWb4xEjxs= +github.com/aws/aws-sdk-go-v2/credentials v1.17.13 h1:XDCJDzk/u5cN7Aple7D/MiAhx1Rjo/0nueJ0La8mRuE= +github.com/aws/aws-sdk-go-v2/credentials v1.17.13/go.mod h1:FMNcjQrmuBYvOTZDtOLCIu0esmxjF7RuA/89iSXWzQI= +github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.16.1 h1:FVJ0r5XTHSmIHJV6KuDmdYhEpvlHpiSd38RQWhut5J4= +github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.16.1/go.mod h1:zusuAeqezXzAB24LGuzuekqMAEgWkVYukBec3kr3jUg= github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.16.9 h1:vXY/Hq1XdxHBIYgBUmug/AbMyIe1AKulPYS2/VE1X70= github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.16.9/go.mod h1:GyJJTZoHVuENM4TeJEl5Ffs4W9m19u+4wKJcDi/GZ4A= -github.com/aws/aws-sdk-go-v2/internal/configsources v1.1.43/go.mod h1:auo+PiyLl0n1l8A0e8RIeR8tOzYPfZZH/JNlrJ8igTQ= -github.com/aws/aws-sdk-go-v2/internal/configsources v1.3.4 h1:0ScVK/4qZ8CIW0k8jOeFVsyS/sAiXpYxRBLolMkuLQM= -github.com/aws/aws-sdk-go-v2/internal/configsources v1.3.4/go.mod h1:84KyjNZdHC6QZW08nfHI6yZgPd+qRgaWcYsyLUo3QY8= -github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.4.37/go.mod h1:Qe+2KtKml+FEsQF/DHmDV+xjtche/hwoF75EG4UlHW8= -github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.6.4 h1:sHmMWWX5E7guWEFQ9SVo6A3S4xpPrWnd77a6y4WM6PU= -github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.6.4/go.mod h1:WjpDrhWisWOIoS9n3nk67A3Ll1vfULJ9Kq6h29HTD48= +github.com/aws/aws-sdk-go-v2/internal/configsources v1.3.5 h1:aw39xVGeRWlWx9EzGVnhOR4yOjQDHPQ6o6NmBlscyQg= +github.com/aws/aws-sdk-go-v2/internal/configsources v1.3.5/go.mod h1:FSaRudD0dXiMPK2UjknVwwTYyZMRsHv3TtkabsZih5I= +github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.6.5 h1:PG1F3OD1szkuQPzDw3CIQsRIrtTlUC3lP84taWzHlq0= +github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.6.5/go.mod h1:jU1li6RFryMz+so64PpKtudI+QzbKoIEivqdf6LNpOc= github.com/aws/aws-sdk-go-v2/internal/ini v1.8.0 h1:hT8rVHwugYE2lEfdFE0QWVo81lF7jMrYJVDWI+f+VxU= github.com/aws/aws-sdk-go-v2/internal/ini v1.8.0/go.mod h1:8tu/lYfQfFe6IGnaOdrpVgEL2IrrDOf6/m9RQum4NkY= github.com/aws/aws-sdk-go-v2/internal/v4a v1.3.3 h1:mDnFOE2sVkyphMWtTH+stv0eW3k0OTx94K63xpxHty4= github.com/aws/aws-sdk-go-v2/internal/v4a v1.3.3/go.mod h1:V8MuRVcCRt5h1S+Fwu8KbC7l/gBGo3yBAyUbJM2IJOk= -github.com/aws/aws-sdk-go-v2/service/ecr v1.20.2 h1:y6LX9GUoEA3mO0qpFl1ZQHj1rFyPWVphlzebiSt2tKE= -github.com/aws/aws-sdk-go-v2/service/ecr v1.20.2/go.mod h1:Q0LcmaN/Qr8+4aSBrdrXXePqoX0eOuYpJLbYpilmWnA= -github.com/aws/aws-sdk-go-v2/service/ecrpublic v1.18.2 h1:PpbXaecV3sLAS6rjQiaKw4/jyq3Z8gNzmoJupHAoBp0= -github.com/aws/aws-sdk-go-v2/service/ecrpublic v1.18.2/go.mod h1:fUHpGXr4DrXkEDpGAjClPsviWf+Bszeb0daKE0blxv8= -github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.11.1 h1:EyBZibRTVAs6ECHZOw5/wlylS9OcTzwyjeQMudmREjE= -github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.11.1/go.mod h1:JKpmtYhhPs7D97NL/ltqz7yCkERFW5dOlHyVl66ZYF8= +github.com/aws/aws-sdk-go-v2/service/ecr v1.28.0 h1:rdPrcOZmqT2F+yzmKEImrx5XUs7Hpf4V9Rp6E8mhsxQ= +github.com/aws/aws-sdk-go-v2/service/ecr v1.28.0/go.mod h1:if7ybzzjOmDB8pat9FE35AHTY6ZxlYSy3YviSmFZv8c= +github.com/aws/aws-sdk-go-v2/service/ecrpublic v1.23.5 h1:452e/nFuqPvwPg+1OD2CG/v29R9MH8egJSJKh2Qduv8= +github.com/aws/aws-sdk-go-v2/service/ecrpublic v1.23.5/go.mod h1:8pvvNAklmq+hKmqyvFoMRg0bwg9sdGOvdwximmKiKP0= +github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.11.2 h1:Ji0DY1xUsUr3I8cHps0G+XM3WWU16lP6yG8qu1GAZAs= +github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.11.2/go.mod h1:5CsjAbs3NlGQyZNFACh+zztPDI7fU6eW9QsxjfnuBKg= github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.3.5 h1:mbWNpfRUTT6bnacmvOTKXZjR/HycibdWzNpfbrbLDIs= github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.3.5/go.mod h1:FCOPWGjsshkkICJIn9hq9xr6dLKtyaWpuUojiN3W1/8= -github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.11.6 h1:b+E7zIUHMmcB4Dckjpkapoy47W6C9QBv/zoUP+Hn8Kc= -github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.11.6/go.mod h1:S2fNV0rxrP78NhPbCZeQgY8H9jdDMeGtwcfZIRxzBqU= +github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.11.7 h1:ogRAwT1/gxJBcSWDMZlgyFUM962F51A5CRhDLbxLdmo= +github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.11.7/go.mod h1:YCsIZhXfRPLFFCl5xxY+1T9RKzOKjCut+28JSX2DnAk= github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.17.3 h1:4t+QEX7BsXz98W8W1lNvMAG+NX8qHz2CjLBxQKku40g= github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.17.3/go.mod h1:oFcjjUq5Hm09N9rpxTdeMeLeQcxS7mIkBkL8qUKng+A= github.com/aws/aws-sdk-go-v2/service/kms v1.30.0 h1:yS0JkEdV6h9JOo8sy2JSpjX+i7vsKifU8SIeHrqiDhU= github.com/aws/aws-sdk-go-v2/service/kms v1.30.0/go.mod h1:+I8VUUSVD4p5ISQtzpgSva4I8cJ4SQ4b1dcBcof7O+g= github.com/aws/aws-sdk-go-v2/service/s3 v1.51.4 h1:lW5xUzOPGAMY7HPuNF4FdyBwRc3UJ/e8KsapbesVeNU= github.com/aws/aws-sdk-go-v2/service/s3 v1.51.4/go.mod h1:MGTaf3x/+z7ZGugCGvepnx2DS6+caCYYqKhzVoLNYPk= -github.com/aws/aws-sdk-go-v2/service/sso v1.20.3 h1:mnbuWHOcM70/OFUlZZ5rcdfA8PflGXXiefU/O+1S3+8= -github.com/aws/aws-sdk-go-v2/service/sso v1.20.3/go.mod h1:5HFu51Elk+4oRBZVxmHrSds5jFXmFj8C3w7DVF2gnrs= -github.com/aws/aws-sdk-go-v2/service/ssooidc v1.23.3 h1:uLq0BKatTmDzWa/Nu4WO0M1AaQDaPpwTKAeByEc6WFM= -github.com/aws/aws-sdk-go-v2/service/ssooidc v1.23.3/go.mod h1:b+qdhjnxj8GSR6t5YfphOffeoQSQ1KmpoVVuBn+PWxs= -github.com/aws/aws-sdk-go-v2/service/sts v1.28.5 h1:J/PpTf/hllOjx8Xu9DMflff3FajfLxqM5+tepvVXmxg= -github.com/aws/aws-sdk-go-v2/service/sts v1.28.5/go.mod h1:0ih0Z83YDH/QeQ6Ori2yGE2XvWYv/Xm+cZc01LC6oK0= -github.com/aws/smithy-go v1.15.0/go.mod h1:Tg+OJXh4MB2R/uN61Ko2f6hTZwB/ZYGOtib8J3gBHzA= -github.com/aws/smithy-go v1.20.1 h1:4SZlSlMr36UEqC7XOyRVb27XMeZubNcBNN+9IgEPIQw= -github.com/aws/smithy-go v1.20.1/go.mod h1:krry+ya/rV9RDcV/Q16kpu6ypI4K2czasz0NC3qS14E= -github.com/awslabs/amazon-ecr-credential-helper/ecr-login v0.0.0-20231024185945-8841054dbdb8 h1:SoFYaT9UyGkR0+nogNyD/Lj+bsixB+SNuAS4ABlEs6M= -github.com/awslabs/amazon-ecr-credential-helper/ecr-login v0.0.0-20231024185945-8841054dbdb8/go.mod h1:2JF49jcDOrLStIXN/j/K1EKRq8a8R2qRnlZA6/o/c7c= +github.com/aws/aws-sdk-go-v2/service/sso v1.20.6 h1:o5cTaeunSpfXiLTIBx5xo2enQmiChtu1IBbzXnfU9Hs= +github.com/aws/aws-sdk-go-v2/service/sso v1.20.6/go.mod h1:qGzynb/msuZIE8I75DVRCUXw3o3ZyBmUvMwQ2t/BrGM= +github.com/aws/aws-sdk-go-v2/service/ssooidc v1.24.0 h1:Qe0r0lVURDDeBQJ4yP+BOrJkvkiCo/3FH/t+wY11dmw= +github.com/aws/aws-sdk-go-v2/service/ssooidc v1.24.0/go.mod h1:mUYPBhaF2lGiukDEjJX2BLRRKTmoUSitGDUgM4tRxak= +github.com/aws/aws-sdk-go-v2/service/sts v1.28.7 h1:et3Ta53gotFR4ERLXXHIHl/Uuk1qYpP5uU7cvNql8ns= +github.com/aws/aws-sdk-go-v2/service/sts v1.28.7/go.mod h1:FZf1/nKNEkHdGGJP/cI2MoIMquumuRK6ol3QQJNDxmw= +github.com/aws/smithy-go v1.20.2 h1:tbp628ireGtzcHDDmLT/6ADHidqnwgF57XOXZe6tp4Q= +github.com/aws/smithy-go v1.20.2/go.mod h1:krry+ya/rV9RDcV/Q16kpu6ypI4K2czasz0NC3qS14E= +github.com/awslabs/amazon-ecr-credential-helper/ecr-login v0.0.0-20240514230400-03fa26f5508f h1:Z0kS9pJDQgCg3u2lH6+CdYaFbyQtyukVTiUCG6re0E4= +github.com/awslabs/amazon-ecr-credential-helper/ecr-login v0.0.0-20240514230400-03fa26f5508f/go.mod h1:rAE739ssmE5O5fLuQ2y8uHdmOJaelE5I0Es3SxV0y1A= github.com/aymanbagabas/go-osc52/v2 v2.0.1 h1:HwpRHbFMcZLEVr42D4p7XBqjyuxQH5SMiErDT4WkJ2k= github.com/aymanbagabas/go-osc52/v2 v2.0.1/go.mod h1:uYgXzlJ7ZpABp8OJ+exZzJJhRNQ2ASbcXHWsFqH8hp8= github.com/bahlo/generic-list-go v0.2.0 h1:5sz/EEAK+ls5wF+NeqDpk5+iNdMDXrh3z3nPnH1Wvgk= @@ -229,8 +224,8 @@ github.com/butuzov/mirror v1.2.0/go.mod h1:DqZZDtzm42wIAIyHXeN8W/qb1EPlb9Qn/if9i github.com/bwesterb/go-ristretto v1.2.3/go.mod h1:fUIoIZaG73pV5biE2Blr2xEzDoMj7NFEuV9ekS419A0= github.com/caarlos0/ctrlc v1.2.0 h1:AtbThhmbeYx1WW3WXdWrd94EHKi+0NPRGS4/4pzrjwk= github.com/caarlos0/ctrlc v1.2.0/go.mod h1:n3gDlSjsXZ7rbD9/RprIR040b7oaLfNStikPd4gFago= -github.com/caarlos0/env/v11 v11.0.0 h1:ZIlkOjuL3xoZS0kmUJlF74j2Qj8GMOq3CDLX/Viak8Q= -github.com/caarlos0/env/v11 v11.0.0/go.mod h1:2RC3HQu8BQqtEK3V4iHPxj0jOdWdbPpWJ6pOueeU1xM= +github.com/caarlos0/env/v11 v11.0.1 h1:A8dDt9Ub9ybqRSUF3fQc/TA/gTam2bKT4Pit+cwrsPs= +github.com/caarlos0/env/v11 v11.0.1/go.mod h1:2RC3HQu8BQqtEK3V4iHPxj0jOdWdbPpWJ6pOueeU1xM= github.com/caarlos0/go-reddit/v3 v3.0.1 h1:w8ugvsrHhaE/m4ez0BO/sTBOBWI9WZTjG7VTecHnql4= github.com/caarlos0/go-reddit/v3 v3.0.1/go.mod h1:QlwgmG5SAqxMeQvg/A2dD1x9cIZCO56BMnMdjXLoisI= github.com/caarlos0/go-shellwords v1.0.12 h1:HWrUnu6lGbWfrDcFiHcZiwOLzHWjjrPVehULaTFgPp8= @@ -287,7 +282,6 @@ github.com/containerd/log v0.1.0/go.mod h1:VRRf09a7mHDIRezVKTRCrOq78v577GXq3bSa3 github.com/containerd/stargz-snapshotter/estargz v0.14.3 h1:OqlDCK3ZVUO6C3B/5FSkDwbkEETK84kQgEeFwDC+62k= github.com/containerd/stargz-snapshotter/estargz v0.14.3/go.mod h1:KY//uOCIkSuNAHhJogcZtrNHdKrA99/FCCRjE3HD36o= github.com/cpuguy83/go-md2man/v2 v2.0.0-20190314233015-f79a8a8ca69d/go.mod h1:maD7wRr/U5Z6m/iR4s+kqSMx2CaBsrgA7czyZG/E6dU= -github.com/cpuguy83/go-md2man/v2 v2.0.1/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46tRHOmNcaadrF8o= github.com/cpuguy83/go-md2man/v2 v2.0.3 h1:qMCsGGgs+MAzDFyp9LpAe1Lqy/fY/qCovCm0qnXZOBM= github.com/cpuguy83/go-md2man/v2 v2.0.3/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46tRHOmNcaadrF8o= github.com/curioswitch/go-reassign v0.2.0 h1:G9UZyOcpk/d7Gd6mqYgd8XYWFMw/znxwGDUstnC9DIo= @@ -322,10 +316,10 @@ github.com/docker/cli v25.0.4+incompatible h1:DatRkJ+nrFoYL2HZUzjM5Z5sAmcA5XGp+A github.com/docker/cli v25.0.4+incompatible/go.mod h1:JLrzqnKDaYBop7H2jaqPtU4hHvMKP+vjCwu2uszcLI8= github.com/docker/distribution v2.8.3+incompatible h1:AtKxIZ36LoNK51+Z6RpzLpddBirtxJnzDrHLEKxTAYk= github.com/docker/distribution v2.8.3+incompatible/go.mod h1:J2gT2udsDAN96Uj4KfcMRqY0/ypR+oyYUYmja8H+y+w= -github.com/docker/docker v25.0.5+incompatible h1:UmQydMduGkrD5nQde1mecF/YnSbTOaPeFIeP5C4W+DE= -github.com/docker/docker v25.0.5+incompatible/go.mod h1:eEKB0N0r5NX/I1kEveEz05bcu8tLC/8azJZsviup8Sk= -github.com/docker/docker-credential-helpers v0.8.0 h1:YQFtbBQb4VrpoPxhFuzEBPQ9E16qz5SpHLS+uswaCp8= -github.com/docker/docker-credential-helpers v0.8.0/go.mod h1:UGFXcuoQ5TxPiB54nHOZ32AWRqQdECoh/Mg0AlEYb40= +github.com/docker/docker v26.1.3+incompatible h1:lLCzRbrVZrljpVNobJu1J2FHk8V0s4BawoZippkc+xo= +github.com/docker/docker v26.1.3+incompatible/go.mod h1:eEKB0N0r5NX/I1kEveEz05bcu8tLC/8azJZsviup8Sk= +github.com/docker/docker-credential-helpers v0.8.1 h1:j/eKUktUltBtMzKqmfLB0PAgqYyMHOp5vfsD1807oKo= +github.com/docker/docker-credential-helpers v0.8.1/go.mod h1:P3ci7E3lwkZg6XiHdRKft1KckHiO9a2rNtyFbZ/ry9M= github.com/docker/go-connections v0.4.0 h1:El9xVISelRB7BuFusrZozjnkIM5YnzCViNKohAFqRJQ= github.com/docker/go-connections v0.4.0/go.mod h1:Gbd7IOopHjR8Iph03tsViu4nIes5XhDvyHbTtUxmeec= github.com/docker/go-metrics v0.0.1 h1:AgB/0SvBxihN0X8OR4SjsblXkbMvalQ8cjmtKQ2rQV8= @@ -527,8 +521,8 @@ github.com/google/go-replayers/httpreplay v1.2.0/go.mod h1:WahEFFZZ7a1P4VM1qEeHy github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= github.com/google/gofuzz v1.2.0 h1:xRy4A+RhZaiKjJ1bPfwQ8sedCA+YS2YcCHW6ec7JMi0= github.com/google/gofuzz v1.2.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= -github.com/google/ko v0.15.2 h1:+M1yxpUGPaynwHn26BELF57eDGyt8MUHM7iV/W28kss= -github.com/google/ko v0.15.2/go.mod h1:7a7U0AvWS9MbZdEHcrN8QjJgbafoRqU29WS/azE8cw8= +github.com/google/ko v0.15.4 h1:0blRbIdPmSy6v4LvedGxbI/8krdJYQgbSih3v6Y8V1c= +github.com/google/ko v0.15.4/go.mod h1:ZkcmfV91Xt6ZzOBHc/cXXGYnqWdNWDVy/gHoUU9sjag= github.com/google/martian/v3 v3.3.2 h1:IqNFLAmvJOgVlpdEBiQbDc2EwKW77amAycfTuWKdfvw= github.com/google/martian/v3 v3.3.2/go.mod h1:oBOf6HBosgwRXnUGWUB05QECsc6uvmMiJ3+6W4l/CUk= github.com/google/pprof v0.0.0-20240424215950-a892ee059fd6 h1:k7nVchz72niMH6YLQNvHSdIE7iqsQxK1P41mySCvssg= @@ -563,14 +557,13 @@ github.com/goreleaser/chglog v0.6.1 h1:NZKiX8l0FTQPRzBgKST7knvNZmZ04f7PEGkN2wInf github.com/goreleaser/chglog v0.6.1/go.mod h1:Bnnfo07jMZkaAb0uRNASMZyOsX6ROW6X1qbXqN3guUo= github.com/goreleaser/fileglob v1.3.0 h1:/X6J7U8lbDpQtBvGcwwPS6OpzkNVlVEsFUVRx9+k+7I= github.com/goreleaser/fileglob v1.3.0/go.mod h1:Jx6BoXv3mbYkEzwm9THo7xbr5egkAraxkGorbJb4RxU= -github.com/goreleaser/goreleaser v1.26.1 h1:ELoLHf6Sb8X7pCj8Cy0g+jBhaTYZMNUdk1dhUiHebtI= -github.com/goreleaser/goreleaser v1.26.1/go.mod h1:ZMSJ2IaYmwx1/69ZErolb51Yta7dwxWyJYZ0SItBCLQ= +github.com/goreleaser/goreleaser v1.26.2 h1:1iY1HaXtRiMTrwy6KE1sNjkRjsjMi+9l0k6WUX8GpWw= +github.com/goreleaser/goreleaser v1.26.2/go.mod h1:mHi6zr6fuuOh5eHdWWgyo/N8BWED5WEVtb/4GETc9jQ= github.com/goreleaser/nfpm/v2 v2.37.1 h1:RUmeEt8OlEVeSzKRrO5Vl5qVWCtUwx4j9uivGuRo5fw= github.com/goreleaser/nfpm/v2 v2.37.1/go.mod h1:q8+sZXFqn106/eGw+9V+I8+izFxZ/sJjrhwmEUxXhUg= github.com/gorilla/mux v1.8.1 h1:TuBL49tXwgrFYWhqrNgrUNEY92u81SPhu7sTdzQEiWY= github.com/gorilla/mux v1.8.1/go.mod h1:AKf9I4AEqPTmMytcMc0KkNouC66V3BtZ4qD5fmWSiMQ= github.com/gorilla/websocket v1.4.2/go.mod h1:YR8l580nyteQvAITg2hZ9XVh4b55+EU/adAjf1fMHhE= -github.com/gorilla/websocket v1.5.0/go.mod h1:YR8l580nyteQvAITg2hZ9XVh4b55+EU/adAjf1fMHhE= github.com/gorilla/websocket v1.5.1 h1:gmztn0JnHVt9JZquRuzLw3g4wouNVzKL15iLr/zn/QY= github.com/gorilla/websocket v1.5.1/go.mod h1:x3kM2JMyaluk02fnUJpQuwD2dCS5NDG2ZHL0uE0tcaY= github.com/gostaticanalysis/analysisutil v0.7.1 h1:ZMCjoue3DtDWQ5WyU16YbjbQEQ3VuzwxALrpYd+HeKk= @@ -616,7 +609,6 @@ github.com/huandu/xstrings v1.3.3/go.mod h1:y5/lhBue+AyNmUVz9RLU9xbLR0o4KIIExikq github.com/imdario/mergo v0.3.11/go.mod h1:jmQim1M+e3UYxmgPu/WyfjB3N3VflVyUjjjwH0dnCYA= github.com/imdario/mergo v0.3.16 h1:wwQJbIsHYGMUyLSPrEq1CT16AhnhNJQ51+4fdHUnCl4= github.com/imdario/mergo v0.3.16/go.mod h1:WBLT9ZmE3lPoWsEzCh9LPo3TiwVN+ZKEjmz+hD27ysY= -github.com/inconshreveable/mousetrap v1.0.0/go.mod h1:PxqpIevigyE2G7u3NXJIT2ANytuPF1OarO4DADm73n8= github.com/inconshreveable/mousetrap v1.1.0 h1:wN+x4NVGpMsO7ErUn/mUI3vEoE6Jt13X2s0bqwp9tc8= github.com/inconshreveable/mousetrap v1.1.0/go.mod h1:vpF70FUmC8bwa3OWnCshd2FqLfsEA9PFc4w1p2J65bw= github.com/invopop/jsonschema v0.12.0 h1:6ovsNSuvn9wEQVOyc72aycBMVQFKz7cPdMJn10CvzRI= @@ -746,8 +738,8 @@ github.com/mattn/go-isatty v0.0.20 h1:xfD0iDuEKnDkl03q4limB+vH+GxLEtL/jb4xVJSWWE github.com/mattn/go-isatty v0.0.20/go.mod h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D7dTCTo3Y= github.com/mattn/go-localereader v0.0.1 h1:ygSAOl7ZXTx4RdPYinUpg6W99U8jWvWi9Ye2JC/oIi4= github.com/mattn/go-localereader v0.0.1/go.mod h1:8fBrzywKY7BI3czFoHkuzRoWE9C+EiG4R1k4Cjx5p88= -github.com/mattn/go-mastodon v0.0.6 h1:lqU1sOeeIapaDsDUL6udDZIzMb2Wqapo347VZlaOzf0= -github.com/mattn/go-mastodon v0.0.6/go.mod h1:cg7RFk2pcUfHZw/IvKe1FUzmlq5KnLFqs7eV2PHplV8= +github.com/mattn/go-mastodon v0.0.8 h1:UgKs4SmQ5JeawxMIPP7NQ9xncmOXA+5q6jYk4erR7vk= +github.com/mattn/go-mastodon v0.0.8/go.mod h1:8YkqetHoAVEktRkK15qeiv/aaIMfJ/Gc89etisPZtHU= github.com/mattn/go-runewidth v0.0.9/go.mod h1:H031xJmbD/WCDINGzjvQ9THkh0rPKHF+m2gUSrubnMI= github.com/mattn/go-runewidth v0.0.12/go.mod h1:RAqKPSqVFrSLVXbA8x7dzmKdmGzieGRCM46jaSJTDAk= github.com/mattn/go-runewidth v0.0.13/go.mod h1:Jdepj2loyihRzMpdS35Xk/zdY8IAYHsh153qUoGf23w= @@ -769,6 +761,8 @@ github.com/mitchellh/mapstructure v1.5.0/go.mod h1:bFUtVrKA4DC2yAKiSyO/QUcy7e+RR github.com/mitchellh/reflectwalk v1.0.0/go.mod h1:mSTlrgnPZtwu0c4WaC2kGObEpuNDbx0jmZXqmk4esnw= github.com/mitchellh/reflectwalk v1.0.2 h1:G2LzWKi524PWgd3mLHV8Y5k7s6XUvT0Gef6zxSIeXaQ= github.com/mitchellh/reflectwalk v1.0.2/go.mod h1:mSTlrgnPZtwu0c4WaC2kGObEpuNDbx0jmZXqmk4esnw= +github.com/moby/docker-image-spec v1.3.1 h1:jMKff3w6PgbfSa69GfNg+zN/XLhfXJGnEx3Nl2EsFP0= +github.com/moby/docker-image-spec v1.3.1/go.mod h1:eKmb5VW8vQEh/BAr2yvVNvuiJuY6UIocYsFu/DxxRpo= github.com/moby/sys/user v0.1.0 h1:WmZ93f5Ux6het5iituh9x2zAG7NFY9Aqi49jjE1PaQg= github.com/moby/sys/user v0.1.0/go.mod h1:fKJhFOnsCN6xZ5gSfbM6zaHGgDJMrqt9/reuj4T7MmU= github.com/moby/term v0.5.0 h1:xt8Q1nalod/v7BqbG21f8mQPqH+xAaC9C3N3wfWbVP0= @@ -814,7 +808,6 @@ github.com/multiformats/go-varint v0.0.7 h1:sWSGR+f/eu5ABZA2ZpYKBILXTTs9JWpdEM/n github.com/multiformats/go-varint v0.0.7/go.mod h1:r8PUYw/fD/SjBCiKOoDlGF6QawOELpZAu9eioSos/OU= github.com/nakabonne/nestif v0.3.1 h1:wm28nZjhQY5HyYPx+weN3Q65k6ilSBxDb8v5S81B81U= github.com/nakabonne/nestif v0.3.1/go.mod h1:9EtoZochLn5iUprVDmDjqGKPofoUEBL8U4Ngq6aY7OE= -github.com/niemeyer/pretty v0.0.0-20200227124842-a10e7caefd8e/go.mod h1:zD1mROLANZcx1PVRCS0qkT7pwLkGfwJo4zjcN/Tysno= github.com/nishanths/exhaustive v0.12.0 h1:vIY9sALmw6T/yxiASewa4TQcFsVYZQQRUQJhKRf3Swg= github.com/nishanths/exhaustive v0.12.0/go.mod h1:mEZ95wPIZW+x8kC4TgC+9YCUgiST7ecevsVDTgc2obs= github.com/nishanths/predeclared v0.2.2 h1:V2EPdZPliZymNAn79T8RkNApBjMmVKh5XRpLm/w98Vk= @@ -858,7 +851,6 @@ github.com/otiai10/curr v1.0.0/go.mod h1:LskTG5wDwr8Rs+nNQ+1LlxRjAtTZZjtJW4rMXl6 github.com/otiai10/mint v1.3.0/go.mod h1:F5AjcsTsWUqX+Na9fpHb52P8pcRX2CI6A3ctIT91xUo= github.com/otiai10/mint v1.3.1/go.mod h1:/yxELlJQ0ufhjUwhshSj+wFjZ78CnZ48/1wtmBH1OTc= github.com/pborman/getopt v0.0.0-20180811024354-2b5b3bfb099b/go.mod h1:85jBQOZwpVEaDAr341tbn15RS4fCAsIst0qp7i8ex1o= -github.com/pelletier/go-toml v1.9.4/go.mod h1:u1nR/EPcESfeI/szUZKdtJ0xRNbUoANCkoOuaOx1Y+c= github.com/pelletier/go-toml v1.9.5 h1:4yBQzkHv+7BHq2PQUZF3Mx0IYxG7LsP222s7Agd3ve8= github.com/pelletier/go-toml v1.9.5/go.mod h1:u1nR/EPcESfeI/szUZKdtJ0xRNbUoANCkoOuaOx1Y+c= github.com/pelletier/go-toml/v2 v2.2.2 h1:aYUidT7k73Pcl9nb2gScu7NSrKCSHIDE89b3+6Wq+LM= @@ -958,8 +950,8 @@ github.com/sivchari/tenv v1.7.1 h1:PSpuD4bu6fSmtWMxSGWcvqUUgIn7k3yOJhOIzVWn8Ak= github.com/sivchari/tenv v1.7.1/go.mod h1:64yStXKSOxDfX47NlhVwND4dHwfZDdbp2Lyl018Icvg= github.com/skeema/knownhosts v1.2.2 h1:Iug2P4fLmDw9f41PB6thxUkNUkJzB5i+1/exaj40L3A= github.com/skeema/knownhosts v1.2.2/go.mod h1:xYbVRSPxqBZFrdmDyMmsOs+uX1UZC3nTN3ThzgDxUwo= -github.com/slack-go/slack v0.12.5 h1:ddZ6uz6XVaB+3MTDhoW04gG+Vc/M/X1ctC+wssy2cqs= -github.com/slack-go/slack v0.12.5/go.mod h1:hlGi5oXA+Gt+yWTPP0plCdRKmjsDxecdHxYQdlMQKOw= +github.com/slack-go/slack v0.13.0 h1:7my/pR2ubZJ9912p9FtvALYpbt0cQPAqkRy2jaSI1PQ= +github.com/slack-go/slack v0.13.0/go.mod h1:hlGi5oXA+Gt+yWTPP0plCdRKmjsDxecdHxYQdlMQKOw= github.com/smarty/assertions v1.15.0 h1:cR//PqUBUiQRakZWqBiFFQ9wb8emQGDb0HeGdqGByCY= github.com/smarty/assertions v1.15.0/go.mod h1:yABtdzeQs6l1brC900WlRNwj6ZR55d7B+E8C6HtKdec= github.com/smartystreets/assertions v1.2.0/go.mod h1:tcbTF8ujkAEcZ8TElKY+i30BzYlVhC/LOxJk7iOWnoo= @@ -980,7 +972,6 @@ github.com/spf13/afero v1.11.0/go.mod h1:GH9Y3pIexgf1MTIWtNGyogA5MwRIDXGUr+hbWNo github.com/spf13/cast v1.3.1/go.mod h1:Qx5cxh0v+4UWYiBimWS+eyWzqEqokIECu5etghLkUJE= github.com/spf13/cast v1.6.0 h1:GEiTHELF+vaR5dhz3VqZfFSzZjYbgeKDpBxQVS4GYJ0= github.com/spf13/cast v1.6.0/go.mod h1:ancEpBxwJDODSW/UG4rDrAqiKolqNNh2DX3mk86cAdo= -github.com/spf13/cobra v1.4.0/go.mod h1:Wo4iy3BUC+X2Fybo0PDqwJIv3dNRiZLHQymsfxlB84g= github.com/spf13/cobra v1.8.0 h1:7aJaZx1B85qltLMc546zn58BxxfZdR/W22ej9CFoEf0= github.com/spf13/cobra v1.8.0/go.mod h1:WXLWApfZ71AjXPya3WOlMsY9yMs7YeiHhFVlvLyhcho= github.com/spf13/pflag v1.0.5 h1:iy+VFUOCP1a+8yFto/drg2CJ5u0yRoB7fZw3DKv/JXA= @@ -1374,7 +1365,6 @@ gopkg.in/alexcesaro/quotedprintable.v3 v3.0.0-20150716171945-2caba252f4dc/go.mod gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= -gopkg.in/check.v1 v1.0.0-20200902074654-038fdea0a05b/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk= gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c/go.mod h1:JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q= gopkg.in/errgo.v2 v2.1.0/go.mod h1:hNsd1EY+bozCKY1Ytp96fpM3vjJbqLJn88ws8XvfDNI= @@ -1412,8 +1402,8 @@ k8s.io/api v0.29.3 h1:2ORfZ7+bGC3YJqGpV0KSDDEVf8hdGQ6A03/50vj8pmw= k8s.io/api v0.29.3/go.mod h1:y2yg2NTyHUUkIoTC+phinTnEa3KFM6RZ3szxt014a80= k8s.io/apiextensions-apiserver v0.29.0 h1:0VuspFG7Hj+SxyF/Z/2T0uFbI5gb5LRgEyUVE3Q4lV0= k8s.io/apiextensions-apiserver v0.29.0/go.mod h1:TKmpy3bTS0mr9pylH0nOt/QzQRrW7/h7yLdRForMZwc= -k8s.io/apimachinery v0.29.3 h1:2tbx+5L7RNvqJjn7RIuIKu9XTsIZ9Z5wX2G22XAa5EU= -k8s.io/apimachinery v0.29.3/go.mod h1:hx/S4V2PNW4OMg3WizRrHutyB5la0iCUbZym+W0EQIU= +k8s.io/apimachinery v0.29.4 h1:RaFdJiDmuKs/8cm1M6Dh1Kvyh59YQFDcFuFTSmXes6Q= +k8s.io/apimachinery v0.29.4/go.mod h1:i3FJVwhvSp/6n8Fl4K97PJEP8C+MM+aoDq4+ZJBf70Y= k8s.io/klog/v2 v2.120.1 h1:QXU6cPEOIslTGvZaXvFWiP9VKyeet3sawzTOvdXb4Vw= k8s.io/klog/v2 v2.120.1/go.mod h1:3Jpz1GvMt720eyJH1ckRHK1EDfpxISzJ7I9OYgaDtPE= k8s.io/utils v0.0.0-20230726121419-3b25d923346b h1:sgn3ZU783SCgtaSJjpcVVlRqd6GSnlTLKgpAAttJvpI= @@ -1430,11 +1420,10 @@ sigs.k8s.io/controller-tools v0.14.0 h1:rnNoCC5wSXlrNoBKKzL70LNJKIQKEzT6lloG6/LF sigs.k8s.io/controller-tools v0.14.0/go.mod h1:TV7uOtNNnnR72SpzhStvPkoS/U5ir0nMudrkrC4M9Sc= sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd h1:EDPBXCAspyGV4jQlpZSudPeMmr1bNJefnuqLsRAsHZo= sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd/go.mod h1:B8JuhiUyNFVKdsE8h686QcCxMaH6HrOAZj4vswFpcB0= -sigs.k8s.io/kind v0.22.0 h1:z/+yr/azoOfzsfooqRsPw1wjJlqT/ukXP0ShkHwNlsI= -sigs.k8s.io/kind v0.22.0/go.mod h1:aBlbxg08cauDgZ612shr017/rZwqd7AS563FvpWKPVs= +sigs.k8s.io/kind v0.23.0 h1:8fyDGWbWTeCcCTwA04v4Nfr45KKxbSPH1WO9K+jVrBg= +sigs.k8s.io/kind v0.23.0/go.mod h1:ZQ1iZuJLh3T+O8fzhdi3VWcFTzsdXtNv2ppsHc8JQ7s= sigs.k8s.io/structured-merge-diff/v4 v4.4.1 h1:150L+0vs/8DA78h1u02ooW1/fFq/Lwr+sGiqlzvrtq4= sigs.k8s.io/structured-merge-diff/v4 v4.4.1/go.mod h1:N8hJocpFajUSSeSJ9bOZ77VzejKZaXsTtZo4/u7Io08= -sigs.k8s.io/yaml v1.3.0/go.mod h1:GeOyir5tyXNByN85N/dRIT9es5UQNerPYEKK56eTBm8= sigs.k8s.io/yaml v1.4.0 h1:Mk1wCc2gy/F0THH0TAp1QYyJNzRm2KCLy3o5ASXVI5E= sigs.k8s.io/yaml v1.4.0/go.mod h1:Ejl7/uTz7PSA4eKMyQCUTnhZYNmLIl+5c2lQPGR2BPY= software.sslmate.com/src/go-pkcs12 v0.4.0 h1:H2g08FrTvSFKUj+D309j1DPfk5APnIdAQAB8aEykJ5k= From cc351eba5095872fc5b27316d8522c24c14544c7 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 24 May 2024 16:35:04 -0700 Subject: [PATCH 07/15] deps: bump github.com/aws/aws-sdk-go-v2/service/s3 from 1.54.2 to 1.54.3 (#405) Bumps [github.com/aws/aws-sdk-go-v2/service/s3](https://github.com/aws/aws-sdk-go-v2) from 1.54.2 to 1.54.3.
Commits

[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=github.com/aws/aws-sdk-go-v2/service/s3&package-manager=go_modules&previous-version=1.54.2&new-version=1.54.3)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) ---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- go.mod | 2 +- go.sum | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/go.mod b/go.mod index 5421134e13..c9c501c60e 100644 --- a/go.mod +++ b/go.mod @@ -275,7 +275,7 @@ require ( github.com/aws/aws-sdk-go-v2 v1.27.0 github.com/aws/aws-sdk-go-v2/config v1.27.15 github.com/aws/aws-sdk-go-v2/credentials v1.17.16 - github.com/aws/aws-sdk-go-v2/service/s3 v1.54.2 + github.com/aws/aws-sdk-go-v2/service/s3 v1.54.3 github.com/cakturk/go-netstat v0.0.0-20200220111822-e5b49efee7a5 github.com/cilium/cilium v1.15.5 github.com/cilium/ebpf v0.15.0 diff --git a/go.sum b/go.sum index 1018af0331..4270f8cd76 100644 --- a/go.sum +++ b/go.sum @@ -120,8 +120,8 @@ github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.11.9 h1:Wx0rlZoEJ github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.11.9/go.mod h1:aVMHdE0aHO3v+f/iw01fmXV/5DbfQ3Bi9nN7nd9bE9Y= github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.17.7 h1:uO5XR6QGBcmPyo2gxofYJLFkcVQ4izOoGDNenlZhTEk= github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.17.7/go.mod h1:feeeAYfAcwTReM6vbwjEyDmiGho+YgBhaFULuXDW8kc= -github.com/aws/aws-sdk-go-v2/service/s3 v1.54.2 h1:gYSJhNiOF6J9xaYxu2NFNstoiNELwt0T9w29FxSfN+Y= -github.com/aws/aws-sdk-go-v2/service/s3 v1.54.2/go.mod h1:739CllldowZiPPsDFcJHNF4FXrVxaSGVnZ9Ez9Iz9hc= +github.com/aws/aws-sdk-go-v2/service/s3 v1.54.3 h1:57NtjG+WLims0TxIQbjTqebZUKDM03DfM11ANAekW0s= +github.com/aws/aws-sdk-go-v2/service/s3 v1.54.3/go.mod h1:739CllldowZiPPsDFcJHNF4FXrVxaSGVnZ9Ez9Iz9hc= github.com/aws/aws-sdk-go-v2/service/sso v1.20.9 h1:aD7AGQhvPuAxlSUfo0CWU7s6FpkbyykMhGYMvlqTjVs= github.com/aws/aws-sdk-go-v2/service/sso v1.20.9/go.mod h1:c1qtZUWtygI6ZdvKppzCSXsDOq5I4luJPZ0Ud3juFCA= github.com/aws/aws-sdk-go-v2/service/ssooidc v1.24.3 h1:Pav5q3cA260Zqez42T9UhIlsd9QeypszRPwC9LdSSsQ= From aae93ade532c2228ef39b152acc5374e8eef3fab Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 27 May 2024 10:17:14 -0400 Subject: [PATCH 08/15] deps: bump github.com/onsi/ginkgo/v2 from 2.18.0 to 2.19.0 (#409) Bumps [github.com/onsi/ginkgo/v2](https://github.com/onsi/ginkgo) from 2.18.0 to 2.19.0.
Release notes

Sourced from github.com/onsi/ginkgo/v2's releases.

v2.19.0

2.19.0

Features

Label Sets allow for more expressive and flexible label filtering.

Changelog

Sourced from github.com/onsi/ginkgo/v2's changelog.

2.19.0

Features

Label Sets allow for more expressive and flexible label filtering.

Commits

[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=github.com/onsi/ginkgo/v2&package-manager=go_modules&previous-version=2.18.0&new-version=2.19.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) ---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- go.mod | 2 +- go.sum | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/go.mod b/go.mod index c9c501c60e..f0469ac306 100644 --- a/go.mod +++ b/go.mod @@ -285,7 +285,7 @@ require ( github.com/jellydator/ttlcache/v3 v3.1.1 github.com/jsternberg/zap-logfmt v1.3.0 github.com/microsoft/ApplicationInsights-Go v0.4.4 - github.com/onsi/ginkgo/v2 v2.18.0 + github.com/onsi/ginkgo/v2 v2.19.0 github.com/onsi/gomega v1.33.1 github.com/pkg/errors v0.9.1 github.com/prometheus/client_model v0.6.0 diff --git a/go.sum b/go.sum index 4270f8cd76..9c044245ba 100644 --- a/go.sum +++ b/go.sum @@ -648,8 +648,8 @@ github.com/oklog/ulid v1.3.1 h1:EGfNDEx6MqHz8B3uNV6QAib1UR2Lm97sHi3ocA6ESJ4= github.com/oklog/ulid v1.3.1/go.mod h1:CirwcVhetQ6Lv90oh/F+FBtV6XMibvdAFo93nm5qn4U= github.com/onsi/ginkgo v1.6.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= github.com/onsi/ginkgo v1.8.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= -github.com/onsi/ginkgo/v2 v2.18.0 h1:W9Y7IWXxPUpAit9ieMOLI7PJZGaW22DTKgiVAuhDTLc= -github.com/onsi/ginkgo/v2 v2.18.0/go.mod h1:rlwLi9PilAFJ8jCg9UE1QP6VBpd6/xj3SRC0d6TU0To= +github.com/onsi/ginkgo/v2 v2.19.0 h1:9Cnnf7UHo57Hy3k6/m5k3dRfGTMXGvxhHFvkDTCTpvA= +github.com/onsi/ginkgo/v2 v2.19.0/go.mod h1:rlwLi9PilAFJ8jCg9UE1QP6VBpd6/xj3SRC0d6TU0To= github.com/onsi/gomega v1.5.0/go.mod h1:ex+gbHU/CVuBBDIJjb2X0qEXbFg53c61hWP/1CpauHY= github.com/onsi/gomega v1.33.1 h1:dsYjIxxSR755MDmKVsaFQTE22ChNBcuuTWgkUDSubOk= github.com/onsi/gomega v1.33.1/go.mod h1:U4R44UsT+9eLIaYRB2a5qajjtQYn0hauxvRm16AVYg0= From 4e4ade9163d3fb2204f7ea4554afb624c4103e9e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 27 May 2024 10:17:29 -0400 Subject: [PATCH 09/15] deps: bump github.com/golangci/golangci-lint from 1.58.2 to 1.59.0 in /hack/tools (#408) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Bumps [github.com/golangci/golangci-lint](https://github.com/golangci/golangci-lint) from 1.58.2 to 1.59.0.
Release notes

Sourced from github.com/golangci/golangci-lint's releases.

v1.59.0

golangci-lint is a free and open-source project built by volunteers.

If you value it, consider supporting us, the maintainers and linter authors.

We appreciate it! :heart:

For key updates, see the changelog.

Changelog

  • 4f5251d3 Support Sarif output (#4723)
  • 73110df2 build(deps): bump github.com/Antonboom/testifylint from 1.2.0 to 1.3.0 (#4729)
  • 62c83ccd build(deps): bump github.com/BurntSushi/toml from 1.3.2 to 1.4.0 (#4746)
  • 0cb14183 build(deps): bump github.com/go-critic/go-critic from 0.11.3 to 0.11.4 (#4738)
  • e14ae4b7 build(deps): bump github.com/hashicorp/go-version from 1.6.0 to 1.7.0 (#4745)
  • 2059b18a build(deps): bump github.com/securego/gosec/v2 from 2.20.0 to 5f0084eb01a9 (#4748)
  • be1bb6db build(deps): bump go-simpler.org/sloglint from 0.6.0 to 0.7.0 (#4718)
  • 08deff42 feat: add warning about disabled and deprecated linters (level 2) (#4742)
  • b99d5295 feat: allow the analysis of generated files (#4740)
  • 867adaf9 feat: deprecate github-actions format (#4726)
  • 4beae6a9 fix: remove errcheck defaults (#4734)
Changelog

Sourced from github.com/golangci/golangci-lint's changelog.

v1.59.0

  1. Enhancements
    • Add SARIF output format
    • Allow the analysis of generated files (issues.exclude-generated: disable)
  2. Updated linters
    • errcheck: fix deprecation warning
    • go-critic: from 0.11.3 to 0.11.4
    • gosec: from 2.20.0 to 5f0084eb01a9 (fix G601 and G113 performance issues)
    • sloglint: from 0.6.0 to 0.7.0 (new option forbidden-keys)
    • testifylint: from 1.2.0 to 1.3.0 (new checker negative-positive and new option go-require.ignore-http-handlers)
  3. Misc.
    • ️️⚠️ Deprecate github-action output format
    • ️️⚠️ Deprecate issues.exclude-generated-strict option (replaced by issues.exclude-generated: strict)
    • ️️⚠️ Add warning about disabled and deprecated linters (level 2)
Commits
  • 2059b18 build(deps): bump github.com/securego/gosec/v2 from 2.20.0 to 5f0084eb01a9 (#...
  • 95ca3c3 dev: fix badges
  • 495321c dev: improve issue chooser (#4747)
  • 62c83cc build(deps): bump github.com/BurntSushi/toml from 1.3.2 to 1.4.0 (#4746)
  • e14ae4b build(deps): bump github.com/hashicorp/go-version from 1.6.0 to 1.7.0 (#4745)
  • 010b4f8 chore: use global security policy
  • b99d529 feat: allow the analysis of generated files (#4740)
  • 08deff4 feat: add warning about disabled and deprecated linters (level 2) (#4742)
  • b9868e1 chore: add html to the JSONSchema (#4737)
  • 0cb1418 build(deps): bump github.com/go-critic/go-critic from 0.11.3 to 0.11.4 (#4738)
  • Additional commits viewable in compare view

[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=github.com/golangci/golangci-lint&package-manager=go_modules&previous-version=1.58.2&new-version=1.59.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) ---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- hack/tools/go.mod | 14 +++++++------- hack/tools/go.sum | 32 ++++++++++++++++---------------- 2 files changed, 23 insertions(+), 23 deletions(-) diff --git a/hack/tools/go.mod b/hack/tools/go.mod index 257be94b24..5ca396a415 100644 --- a/hack/tools/go.mod +++ b/hack/tools/go.mod @@ -3,7 +3,7 @@ module github.com/microsoft/retina/hack/tools go 1.22 require ( - github.com/golangci/golangci-lint v1.58.2 + github.com/golangci/golangci-lint v1.59.0 github.com/goreleaser/goreleaser v1.26.2 github.com/onsi/ginkgo v1.16.5 go.uber.org/mock v0.4.0 @@ -27,7 +27,7 @@ require ( github.com/AlekSi/pointer v1.2.0 // indirect github.com/Antonboom/errname v0.1.13 // indirect github.com/Antonboom/nilnil v0.1.9 // indirect - github.com/Antonboom/testifylint v1.2.0 // indirect + github.com/Antonboom/testifylint v1.3.0 // indirect github.com/Azure/azure-sdk-for-go v68.0.0+incompatible // indirect github.com/Azure/azure-sdk-for-go/sdk/azcore v1.10.0 // indirect github.com/Azure/azure-sdk-for-go/sdk/azidentity v1.5.1 // indirect @@ -45,7 +45,7 @@ require ( github.com/Azure/go-autorest/logger v0.2.1 // indirect github.com/Azure/go-autorest/tracing v0.6.0 // indirect github.com/AzureAD/microsoft-authentication-library-for-go v1.2.2 // indirect - github.com/BurntSushi/toml v1.3.2 // indirect + github.com/BurntSushi/toml v1.4.0 // indirect github.com/Crocmagnon/fatcontext v0.2.2 // indirect github.com/Djarvur/go-err113 v0.0.0-20210108212216-aea10b59be24 // indirect github.com/GaijinEntertainment/go-exhaustruct/v3 v3.2.0 // indirect @@ -161,7 +161,7 @@ require ( github.com/gabriel-vasile/mimetype v1.4.2 // indirect github.com/ghostiam/protogetter v0.3.6 // indirect github.com/github/smimesign v0.2.0 // indirect - github.com/go-critic/go-critic v0.11.3 // indirect + github.com/go-critic/go-critic v0.11.4 // indirect github.com/go-fed/httpsig v1.1.0 // indirect github.com/go-git/gcfg v1.5.1-0.20230307220236-3a3c6141e376 // indirect github.com/go-git/go-billy/v5 v5.5.0 // indirect @@ -231,7 +231,7 @@ require ( github.com/hashicorp/go-cleanhttp v0.5.2 // indirect github.com/hashicorp/go-multierror v1.1.1 // indirect github.com/hashicorp/go-retryablehttp v0.7.5 // indirect - github.com/hashicorp/go-version v1.6.0 // indirect + github.com/hashicorp/go-version v1.7.0 // indirect github.com/hashicorp/golang-lru v1.0.2 // indirect github.com/hashicorp/hcl v1.0.1-vault-5 // indirect github.com/hexops/gotextdiff v1.0.3 // indirect @@ -353,7 +353,7 @@ require ( github.com/sashamelentyev/usestdlibvars v1.25.0 // indirect github.com/scylladb/go-set v1.0.3-0.20200225121959-cc7b2070d91e // indirect github.com/secure-systems-lab/go-securesystemslib v0.8.0 // indirect - github.com/securego/gosec/v2 v2.20.0 // indirect + github.com/securego/gosec/v2 v2.20.1-0.20240525090044-5f0084eb01a9 // indirect github.com/sergi/go-diff v1.3.2-0.20230802210424-5b0b94c5c0d3 // indirect github.com/shazow/go-diff v0.0.0-20160112020656-b6b7b6733b8c // indirect github.com/shopspring/decimal v1.2.0 // indirect @@ -406,7 +406,7 @@ require ( gitlab.com/bosi/decorder v0.4.2 // indirect gitlab.com/digitalxero/go-conventional-commit v1.0.7 // indirect go-simpler.org/musttag v0.12.2 // indirect - go-simpler.org/sloglint v0.6.0 // indirect + go-simpler.org/sloglint v0.7.0 // indirect go.mongodb.org/mongo-driver v1.14.0 // indirect go.opencensus.io v0.24.0 // indirect go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.49.0 // indirect diff --git a/hack/tools/go.sum b/hack/tools/go.sum index b254f79b4a..daaf433e10 100644 --- a/hack/tools/go.sum +++ b/hack/tools/go.sum @@ -27,8 +27,8 @@ github.com/Antonboom/errname v0.1.13 h1:JHICqsewj/fNckzrfVSe+T33svwQxmjC+1ntDsHO github.com/Antonboom/errname v0.1.13/go.mod h1:uWyefRYRN54lBg6HseYCFhs6Qjcy41Y3Jl/dVhA87Ns= github.com/Antonboom/nilnil v0.1.9 h1:eKFMejSxPSA9eLSensFmjW2XTgTwJMjZ8hUHtV4s/SQ= github.com/Antonboom/nilnil v0.1.9/go.mod h1:iGe2rYwCq5/Me1khrysB4nwI7swQvjclR8/YRPl5ihQ= -github.com/Antonboom/testifylint v1.2.0 h1:015bxD8zc5iY8QwTp4+RG9I4kIbqwvGX9TrBbb7jGdM= -github.com/Antonboom/testifylint v1.2.0/go.mod h1:rkmEqjqVnHDRNsinyN6fPSLnoajzFwsCcguJgwADBkw= +github.com/Antonboom/testifylint v1.3.0 h1:UiqrddKs1W3YK8R0TUuWwrVKlVAnS07DTUVWWs9c+y4= +github.com/Antonboom/testifylint v1.3.0/go.mod h1:NV0hTlteCkViPW9mSR4wEMfwp+Hs1T3dY60bkvSfhpM= github.com/Azure/azure-sdk-for-go v68.0.0+incompatible h1:fcYLmCpyNYRnvJbPerq7U0hS+6+I79yEDJBqVNcqUzU= github.com/Azure/azure-sdk-for-go v68.0.0+incompatible/go.mod h1:9XXNKU+eRnpl9moKnB4QOLf1HestfXbmab5FXxiDBjc= github.com/Azure/azure-sdk-for-go/sdk/azcore v1.10.0 h1:n1DH8TPV4qqPTje2RcUBYwtrTWlabVp4n46+74X2pn4= @@ -75,8 +75,8 @@ github.com/Azure/go-autorest/tracing v0.6.0/go.mod h1:+vhtPC754Xsa23ID7GlGsrdKBp github.com/AzureAD/microsoft-authentication-library-for-go v1.2.2 h1:XHOnouVk1mxXfQidrMEnLlPk9UMeRtyBTnEFtxkV0kU= github.com/AzureAD/microsoft-authentication-library-for-go v1.2.2/go.mod h1:wP83P5OoQ5p6ip3ScPr0BAq0BvuPAvacpEuSzyouqAI= github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU= -github.com/BurntSushi/toml v1.3.2 h1:o7IhLm0Msx3BaB+n3Ag7L8EVlByGnpq14C4YWiu/gL8= -github.com/BurntSushi/toml v1.3.2/go.mod h1:CxXYINrC8qIiEnFrOxCa7Jy5BFHlXnUU2pbicEuybxQ= +github.com/BurntSushi/toml v1.4.0 h1:kuoIxZQy2WRRk1pttg9asf+WVv6tWQuBNVmK8+nqPr0= +github.com/BurntSushi/toml v1.4.0/go.mod h1:ukJfTF/6rtPPRCnwkur4qwRxa8vTRFBF0uk2lLoLwho= github.com/Crocmagnon/fatcontext v0.2.2 h1:OrFlsDdOj9hW/oBEJBNSuH7QWf+E9WPVHw+x52bXVbk= github.com/Crocmagnon/fatcontext v0.2.2/go.mod h1:WSn/c/+MMNiD8Pri0ahRj0o9jVpeowzavOQplBJw6u0= github.com/DataDog/zstd v1.5.5 h1:oWf5W7GtOLgp6bciQYDmhHHjdhYkALu6S/5Ni9ZgSvQ= @@ -368,8 +368,8 @@ github.com/github/smimesign v0.2.0 h1:Hho4YcX5N1I9XNqhq0fNx0Sts8MhLonHd+HRXVGNjv github.com/github/smimesign v0.2.0/go.mod h1:iZiiwNT4HbtGRVqCQu7uJPEZCuEE5sfSSttcnePkDl4= github.com/gliderlabs/ssh v0.3.7 h1:iV3Bqi942d9huXnzEF2Mt+CY9gLu8DNM4Obd+8bODRE= github.com/gliderlabs/ssh v0.3.7/go.mod h1:zpHEXBstFnQYtGnB8k8kQLol82umzn/2/snG7alWVD8= -github.com/go-critic/go-critic v0.11.3 h1:SJbYD/egY1noYjTMNTlhGaYlfQ77rQmrNH7h+gtn0N0= -github.com/go-critic/go-critic v0.11.3/go.mod h1:Je0h5Obm1rR5hAGA9mP2PDiOOk53W+n7pyvXErFKIgI= +github.com/go-critic/go-critic v0.11.4 h1:O7kGOCx0NDIni4czrkRIXTnit0mkyKOCePh3My6OyEU= +github.com/go-critic/go-critic v0.11.4/go.mod h1:2QAdo4iuLik5S9YG0rT4wcZ8QxwHYkrr6/2MWAiv/vc= github.com/go-fed/httpsig v1.1.0 h1:9M+hb0jkEICD8/cAiNqEB66R87tTINszBRTjwjQzWcI= github.com/go-fed/httpsig v1.1.0/go.mod h1:RCMrTZvN1bJYtofsG4rd5NaO5obxQ5xBkdiS7xsT7bM= github.com/go-git/gcfg v1.5.1-0.20230307220236-3a3c6141e376 h1:+zs/tPmkDkHx3U66DAb0lQFJrpS6731Oaa12ikc+DiI= @@ -480,8 +480,8 @@ github.com/golangci/dupl v0.0.0-20180902072040-3e9179ac440a h1:w8hkcTqaFpzKqonE9 github.com/golangci/dupl v0.0.0-20180902072040-3e9179ac440a/go.mod h1:ryS0uhF+x9jgbj/N71xsEqODy9BN81/GonCZiOzirOk= github.com/golangci/gofmt v0.0.0-20231018234816-f50ced29576e h1:ULcKCDV1LOZPFxGZaA6TlQbiM3J2GCPnkx/bGF6sX/g= github.com/golangci/gofmt v0.0.0-20231018234816-f50ced29576e/go.mod h1:Pm5KhLPA8gSnQwrQ6ukebRcapGb/BG9iUkdaiCcGHJM= -github.com/golangci/golangci-lint v1.58.2 h1:YHfceEW3CmHmJTPkmVNlqEa4xcjIulYIaVIiB5sNbC4= -github.com/golangci/golangci-lint v1.58.2/go.mod h1:QH/aRLQIdNuOqEiki+4En6/k2SmeOsRJU/oiYffM1Ow= +github.com/golangci/golangci-lint v1.59.0 h1:st69YDnAH/v2QXDcgUaZ0seQajHScPALBVkyitYLXEk= +github.com/golangci/golangci-lint v1.59.0/go.mod h1:QNA32UWdUdHXnu+Ap5/ZU4WVwyp2tL94UxEXrSErjg0= github.com/golangci/misspell v0.5.1 h1:/SjR1clj5uDjNLwYzCahHwIOPmQgoH04AyQIiWGbhCM= github.com/golangci/misspell v0.5.1/go.mod h1:keMNyY6R9isGaSAu+4Q8NMBwMPkh15Gtc8UCVoDtAWo= github.com/golangci/modinfo v0.3.4 h1:oU5huX3fbxqQXdfspamej74DFX0kyGLkw1ppvXoJ8GA= @@ -595,8 +595,8 @@ github.com/hashicorp/go-multierror v1.1.1/go.mod h1:iw975J/qwKPdAO1clOe2L8331t/9 github.com/hashicorp/go-retryablehttp v0.7.5 h1:bJj+Pj19UZMIweq/iie+1u5YCdGrnxCT9yvm0e+Nd5M= github.com/hashicorp/go-retryablehttp v0.7.5/go.mod h1:Jy/gPYAdjqffZ/yFGCFV2doI5wjtH1ewM9u8iYVjtX8= github.com/hashicorp/go-version v1.2.1/go.mod h1:fltr4n8CU8Ke44wwGCBoEymUuxUHl09ZGVZPK5anwXA= -github.com/hashicorp/go-version v1.6.0 h1:feTTfFNnjP967rlCxM/I9g701jU+RN74YKx2mOkIeek= -github.com/hashicorp/go-version v1.6.0/go.mod h1:fltr4n8CU8Ke44wwGCBoEymUuxUHl09ZGVZPK5anwXA= +github.com/hashicorp/go-version v1.7.0 h1:5tqGy27NaOTB8yJKUZELlFAS/LTKJkrmONwQKeRZfjY= +github.com/hashicorp/go-version v1.7.0/go.mod h1:fltr4n8CU8Ke44wwGCBoEymUuxUHl09ZGVZPK5anwXA= github.com/hashicorp/golang-lru v1.0.2 h1:dV3g9Z/unq5DpblPpw+Oqcv4dU/1omnb4Ok8iPY6p1c= github.com/hashicorp/golang-lru v1.0.2/go.mod h1:iADmTwqILo4mZ8BN3D2Q6+9jd8WM5uGBxy+E8yxSoD4= github.com/hashicorp/hcl v1.0.1-vault-5 h1:kI3hhbbyzr4dldA8UdTb7ZlVVlI2DACdCfz31RPDgJM= @@ -826,8 +826,8 @@ github.com/onsi/ginkgo v1.12.1/go.mod h1:zj2OWP4+oCPe1qIXoGWkgMRwljMUYCdkwsT2108 github.com/onsi/ginkgo v1.16.4/go.mod h1:dX+/inL/fNMqNlz0e9LfyB9TswhZpCVdJM/Z6Vvnwo0= github.com/onsi/ginkgo v1.16.5 h1:8xi0RTUf59SOSfEtZMvwTvXYMzG4gV23XVHOZiXNtnE= github.com/onsi/ginkgo v1.16.5/go.mod h1:+E8gABHa3K6zRBolWtd+ROzc/U5bkGt0FwiG042wbpU= -github.com/onsi/ginkgo/v2 v2.17.2 h1:7eMhcy3GimbsA3hEnVKdw/PQM9XN9krpKVXsZdph0/g= -github.com/onsi/ginkgo/v2 v2.17.2/go.mod h1:nP2DPOQoNsQmsVyv5rDA8JkXQoCs6goXIvr/PRJ1eCc= +github.com/onsi/ginkgo/v2 v2.17.3 h1:oJcvKpIb7/8uLpDDtnQuf18xVnwKp8DTD7DQ6gTd/MU= +github.com/onsi/ginkgo/v2 v2.17.3/go.mod h1:nP2DPOQoNsQmsVyv5rDA8JkXQoCs6goXIvr/PRJ1eCc= github.com/onsi/gomega v1.7.1/go.mod h1:XdKZgCCFLUoM/7CFJVPcG8C1xQ1AJ0vpAezJrB7JYyY= github.com/onsi/gomega v1.10.1/go.mod h1:iN09h71vgCQne3DLsj+A5owkum+a2tYe+TOCB1ybHNo= github.com/onsi/gomega v1.17.0/go.mod h1:HnhC7FXeEQY45zxNK3PPoIUhzk/80Xly9PcubAlGdZY= @@ -923,8 +923,8 @@ github.com/scylladb/go-set v1.0.3-0.20200225121959-cc7b2070d91e h1:7q6NSFZDeGfvv github.com/scylladb/go-set v1.0.3-0.20200225121959-cc7b2070d91e/go.mod h1:DkpGd78rljTxKAnTDPFqXSGxvETQnJyuSOQwsHycqfs= github.com/secure-systems-lab/go-securesystemslib v0.8.0 h1:mr5An6X45Kb2nddcFlbmfHkLguCE9laoZCUzEEpIZXA= github.com/secure-systems-lab/go-securesystemslib v0.8.0/go.mod h1:UH2VZVuJfCYR8WgMlCU1uFsOUU+KeyrTWcSS73NBOzU= -github.com/securego/gosec/v2 v2.20.0 h1:z/d5qp1niWa2avgFyUIglYTYYuGq2LrJwNj1HRVXsqc= -github.com/securego/gosec/v2 v2.20.0/go.mod h1:hkiArbBZLwK1cehBcg3oFWUlYPWTBffPwwJVWChu83o= +github.com/securego/gosec/v2 v2.20.1-0.20240525090044-5f0084eb01a9 h1:rnO6Zp1YMQwv8AyxzuwsVohljJgp4L0ZqiCgtACsPsc= +github.com/securego/gosec/v2 v2.20.1-0.20240525090044-5f0084eb01a9/go.mod h1:dg7lPlu/xK/Ut9SedURCoZbVCR4yC7fM65DtH9/CDHs= github.com/sergi/go-diff v1.1.0/go.mod h1:STckp+ISIX8hZLjrqAeVduY0gWCT9IjLuqbuNXdaHfM= github.com/sergi/go-diff v1.3.2-0.20230802210424-5b0b94c5c0d3 h1:n661drycOFuPLCN3Uc8sB6B/s6Z4t2xvBgU1htSHuq8= github.com/sergi/go-diff v1.3.2-0.20230802210424-5b0b94c5c0d3/go.mod h1:A0bzQcvG0E7Rwjx0REVgAGH58e96+X0MeOfepqsbeW4= @@ -1079,8 +1079,8 @@ go-simpler.org/assert v0.9.0 h1:PfpmcSvL7yAnWyChSjOz6Sp6m9j5lyK8Ok9pEL31YkQ= go-simpler.org/assert v0.9.0/go.mod h1:74Eqh5eI6vCK6Y5l3PI8ZYFXG4Sa+tkr70OIPJAUr28= go-simpler.org/musttag v0.12.2 h1:J7lRc2ysXOq7eM8rwaTYnNrHd5JwjppzB6mScysB2Cs= go-simpler.org/musttag v0.12.2/go.mod h1:uN1DVIasMTQKk6XSik7yrJoEysGtR2GRqvWnI9S7TYM= -go-simpler.org/sloglint v0.6.0 h1:0YcqSVG7LI9EVBfRPhgPec79BH6X6mwjFuUR5Mr7j1M= -go-simpler.org/sloglint v0.6.0/go.mod h1:+kJJtebtPePWyG5boFwY46COydAggADDOHM22zOvzBk= +go-simpler.org/sloglint v0.7.0 h1:rMZRxD9MbaGoRFobIOicMxZzum7AXNFDlez6xxJs5V4= +go-simpler.org/sloglint v0.7.0/go.mod h1:g9SXiSWY0JJh4LS39/Q0GxzP/QX2cVcbTOYhDpXrJEs= go.mongodb.org/mongo-driver v1.14.0 h1:P98w8egYRjYe3XDjxhYJagTokP/H6HzlsnojRgZRd80= go.mongodb.org/mongo-driver v1.14.0/go.mod h1:Vzb0Mk/pa7e6cWw85R4F/endUC3u0U9jGcNU603k65c= go.opencensus.io v0.24.0 h1:y73uSU6J157QMP2kn2r30vwW1A2W2WFwSCGnAVxeaD0= From 98751d6830315c6ba4a635e87552383a14d2c716 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 27 May 2024 10:17:47 -0400 Subject: [PATCH 10/15] deps: bump github.com/aws/aws-sdk-go-v2/config from 1.27.15 to 1.27.16 (#403) Bumps [github.com/aws/aws-sdk-go-v2/config](https://github.com/aws/aws-sdk-go-v2) from 1.27.15 to 1.27.16.
Commits

[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=github.com/aws/aws-sdk-go-v2/config&package-manager=go_modules&previous-version=1.27.15&new-version=1.27.16)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) ---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- go.mod | 2 +- go.sum | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/go.mod b/go.mod index f0469ac306..98220c26fa 100644 --- a/go.mod +++ b/go.mod @@ -273,7 +273,7 @@ require ( github.com/Azure/azure-sdk-for-go/sdk/storage/azblob v1.3.2 github.com/Microsoft/hcsshim v0.12.0-rc.3 github.com/aws/aws-sdk-go-v2 v1.27.0 - github.com/aws/aws-sdk-go-v2/config v1.27.15 + github.com/aws/aws-sdk-go-v2/config v1.27.16 github.com/aws/aws-sdk-go-v2/credentials v1.17.16 github.com/aws/aws-sdk-go-v2/service/s3 v1.54.3 github.com/cakturk/go-netstat v0.0.0-20200220111822-e5b49efee7a5 diff --git a/go.sum b/go.sum index 9c044245ba..5a033152f8 100644 --- a/go.sum +++ b/go.sum @@ -98,8 +98,8 @@ github.com/aws/aws-sdk-go-v2 v1.27.0 h1:7bZWKoXhzI+mMR/HjdMx8ZCC5+6fY0lS5tr0bbgi github.com/aws/aws-sdk-go-v2 v1.27.0/go.mod h1:ffIFB97e2yNsv4aTSGkqtHnppsIJzw7G7BReUZ3jCXM= github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.6.2 h1:x6xsQXGSmW6frevwDA+vi/wqhp1ct18mVXYN08/93to= github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.6.2/go.mod h1:lPprDr1e6cJdyYeGXnRaJoP4Md+cDBvi2eOj00BlGmg= -github.com/aws/aws-sdk-go-v2/config v1.27.15 h1:uNnGLZ+DutuNEkuPh6fwqK7LpEiPmzb7MIMA1mNWEUc= -github.com/aws/aws-sdk-go-v2/config v1.27.15/go.mod h1:7j7Kxx9/7kTmL7z4LlhwQe63MYEE5vkVV6nWg4ZAI8M= +github.com/aws/aws-sdk-go-v2/config v1.27.16 h1:knpCuH7laFVGYTNd99Ns5t+8PuRjDn4HnnZK48csipM= +github.com/aws/aws-sdk-go-v2/config v1.27.16/go.mod h1:vutqgRhDUktwSge3hrC3nkuirzkJ4E/mLj5GvI0BQas= github.com/aws/aws-sdk-go-v2/credentials v1.17.16 h1:7d2QxY83uYl0l58ceyiSpxg9bSbStqBC6BeEeHEchwo= github.com/aws/aws-sdk-go-v2/credentials v1.17.16/go.mod h1:Ae6li/6Yc6eMzysRL2BXlPYvnrLLBg3D11/AmOjw50k= github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.16.3 h1:dQLK4TjtnlRGb0czOht2CevZ5l6RSyRWAnKeGd7VAFE= From 1b89e04ff287dce20ade5e28d4a2ff9173e37c8a Mon Sep 17 00:00:00 2001 From: Qingchuan Hao Date: Thu, 30 May 2024 01:37:37 +0800 Subject: [PATCH 11/15] fix: add --name for capture create command examples (#412) # Description Since `--name` is required to create a capture through CLI, we need to update the capture create command examples in docs. ## Related Issue fix https://github.com/microsoft/retina/issues/410 ## Checklist - [x] I have read the [contributing documentation](https://retina.sh/docs/contributing). - [x] I signed and signed-off the commits (`git commit -S -s ...`). See [this documentation](https://docs.github.com/en/authentication/managing-commit-signature-verification/about-commit-signature-verification) on signing commits. - [x] I have correctly attributed the author(s) of the code. - [x] I have tested the changes locally. - [ ] I have followed the project's style guidelines. - [ ] I have updated the documentation, if necessary. - [ ] I have added tests, if applicable. ## Screenshots (if applicable) or Testing Completed Not required ## Additional Notes Add any additional notes or context about the pull request here. --- Please refer to the [CONTRIBUTING.md](../CONTRIBUTING.md) file for more information on how to contribute to this project. Signed-off-by: Qingchuan Hao --- docs/captures/cli.md | 38 +++++++++++++++++++------------------- docs/captures/readme.md | 2 +- 2 files changed, 20 insertions(+), 20 deletions(-) diff --git a/docs/captures/cli.md b/docs/captures/cli.md index 2fbdbfef58..235bfc46c9 100644 --- a/docs/captures/cli.md +++ b/docs/captures/cli.md @@ -17,7 +17,7 @@ By default, Retina capture CLI will exit before the jobs are completed. With `-- - do not wait for the long-running capture job to finish -`kubectl retina capture create --host-path /mnt/capture --node-selectors "kubernetes.io/os=linux" --no-wait=true` +`kubectl retina capture create --name capture-test --host-path /mnt/capture --node-selectors "kubernetes.io/os=linux" --no-wait=true` ### Namespace(default "default") @@ -27,7 +27,7 @@ Namespace to host capture job and the other k8s resources for a network capture. - deploy the capture job in namespace `capture` -`kubectl retina capture create --host-path /mnt/capture --namespace capture --node-selectors "kubernetes.io/os=linux"` +`kubectl retina capture create --name capture-test --host-path /mnt/capture --namespace capture --node-selectors "kubernetes.io/os=linux"` ### Capture Target(required) @@ -37,15 +37,15 @@ Capture target indicates the target on which the network packets capture will be - capture network packets on the node selected by node selectors -`kubectl retina capture create --host-path /mnt/capture --namespace capture --node-selectors "kubernetes.io/os=linux"` +`kubectl retina capture create --name capture-test --host-path /mnt/capture --namespace capture --node-selectors "kubernetes.io/os=linux"` - capture network packets on the node selected by node names -`kubectl retina capture create --host-path /mnt/capture --namespace capture --node-names "aks-nodepool1-41844487-vmss000000,aks-nodepool1-41844487-vmss000001"` +`kubectl retina capture create --name capture-test --host-path /mnt/capture --namespace capture --node-names "aks-nodepool1-41844487-vmss000000,aks-nodepool1-41844487-vmss000001"` - capture network packets on the pod selected by pod-selector and namespace-selector pairs -`kubectl retina capture create --host-path /mnt/capture --namespace capture --pod-selectors="k8s-app=kube-dns" --namespace-selectors="kubernetes.io/metadata.name=kube-system"` +`kubectl retina capture create --name capture-test --host-path /mnt/capture --namespace capture --pod-selectors="k8s-app=kube-dns" --namespace-selectors="kubernetes.io/metadata.name=kube-system"` ### Stop Capture(optional with default values) @@ -64,7 +64,7 @@ Duration of capturing packets(default 1m) - stop the capture in 2 minutes -`kubectl retina capture create --host-path /mnt/capture --namespace capture --node-selectors "kubernetes.io/os=linux" --duration=2m` +`kubectl retina capture create --name capture-test --host-path /mnt/capture --namespace capture --node-selectors "kubernetes.io/os=linux" --duration=2m` #### Maximum Capture Size @@ -74,7 +74,7 @@ Limit the capture file to MB in size(default 100MB) - stop the capture when the capture file size reaches 50MB -`kubectl retina capture create --host-path /mnt/capture --namespace capture --node-selectors "kubernetes.io/os=linux" --max-size=50` +`kubectl retina capture create --name capture-test --host-path /mnt/capture --namespace capture --node-selectors "kubernetes.io/os=linux" --max-size=50` #### Packet Size(optional) @@ -85,7 +85,7 @@ This is beneficial when the user wants to reduce the capture file size or hide c - limit each packet size to 96 bytes -`kubectl retina capture create --host-path /mnt/capture --namespace capture --node-selectors "kubernetes.io/os=linux" --packet-size=96` +`kubectl retina capture create --name capture-test --host-path /mnt/capture --namespace capture --node-selectors "kubernetes.io/os=linux" --packet-size=96` ### Capture Configuration(optional) @@ -97,7 +97,7 @@ Packet capture filters represent a range of filters to be included/excluded in t ##### Example -`kubectl retina capture create --host-path /mnt/capture --namespace capture --node-selectors "kubernetes.io/os=linux" --exclude-filter="10.224.0.26:80,10.224.0.33:8080" --include-filter="10.224.0.42:80,10.224.0.33:8080"` +`kubectl retina capture create --name capture-test --host-path /mnt/capture --namespace capture --node-selectors "kubernetes.io/os=linux" --exclude-filter="10.224.0.26:80,10.224.0.33:8080" --include-filter="10.224.0.42:80,10.224.0.33:8080"` #### Tcpdump Filter @@ -109,7 +109,7 @@ NOTE: this includes only tcpdump flags, for expression part, please user [Packet - filter DNS query -`kubectl retina capture create --host-path /mnt/capture --namespace capture --node-selectors "kubernetes.io/os=linux" --tcpdump-filter="udp port 53"` +`kubectl retina capture create --name capture-test --host-path /mnt/capture --namespace capture --node-selectors "kubernetes.io/os=linux" --tcpdump-filter="udp port 53"` #### Include Metadata @@ -119,7 +119,7 @@ If true, collect static network metadata into the capture file(default true) - disable collecting network metadata -`kubectl retina capture create --host-path /mnt/capture --namespace capture --node-selectors "kubernetes.io/os=linux" --include-metadata=false` +`kubectl retina capture create --name capture-test --host-path /mnt/capture --namespace capture --node-selectors "kubernetes.io/os=linux" --include-metadata=false` ### Job Number Limit(optional) @@ -130,7 +130,7 @@ When creating a job requires job number exceeds this limit, it will fail with pr #### Example -`kubectl retina capture create --job-num-limit=10 --host-path /mnt/capture --namespace capture --node-selectors "kubernetes.io/os=linux"` +`kubectl retina capture create --name capture-test --job-num-limit=10 --host-path /mnt/capture --namespace capture --node-selectors "kubernetes.io/os=linux"` ### Output Configuration(required) @@ -142,23 +142,23 @@ Blob-upload requires a Blob Shared Access Signature with the write permission to - store the capture file in the node host path `/mnt/capture` -`kubectl retina capture create --host-path /mnt/capture --namespace capture --node-selectors "kubernetes.io/os=linux"` +`kubectl retina capture create --name capture-test --host-path /mnt/capture --namespace capture --node-selectors "kubernetes.io/os=linux"` - store the capture file to a PVC `mypvc` with access mode ReadWriteMany in namespace `capture` -`kubectl retina capture create --pvc mypvc --namespace capture --node-selectors "kubernetes.io/os=linux"` +`kubectl retina capture create --name capture-test --pvc mypvc --namespace capture --node-selectors "kubernetes.io/os=linux"` - store the capture file to a storage account -`kubectl retina capture create --blob-upload --node-selectors "kubernetes.io/os=linux"` +`kubectl retina capture create --name capture-test --blob-upload --node-selectors "kubernetes.io/os=linux"` - store the capture file to AWS S3 -`kubectl retina capture create --s3-bucket "your-bucket-name" --s3-region "eu-central-1" --s3-access-key-id "your-access-key-id" --s3-secret-access-key "your-secret-access-key" --node-selectors "kubernetes.io/os=linux"` +`kubectl retina capture create --name capture-test --s3-bucket "your-bucket-name" --s3-region "eu-central-1" --s3-access-key-id "your-access-key-id" --s3-secret-access-key "your-secret-access-key" --node-selectors "kubernetes.io/os=linux"` - store the capture file to S3-compatible service (like MinIO) -`kubectl retina capture create --s3-bucket "your-bucket-name" --s3-endpoint "https://play.min.io:9000" --s3-access-key-id "your-access-key-id" --s3-secret-access-key "your-secret-access-key" --node-selectors "kubernetes.io/os=linux"` +`kubectl retina capture create --name capture-test --s3-bucket "your-bucket-name" --s3-endpoint "https://play.min.io:9000" --s3-access-key-id "your-access-key-id" --s3-secret-access-key "your-secret-access-key" --node-selectors "kubernetes.io/os=linux"` ### Debug mode @@ -168,11 +168,11 @@ With debug mode, when `--debug` is specified, we can overwrite the capture job P - use `ghcr.io` image in default debug mode -`kubectl retina capture create --host-path /mnt/test --namespace capture --node-selectors "kubernetes.io/os=linux" --debug` +`kubectl retina capture create --name capture-test --host-path /mnt/test --namespace capture --node-selectors "kubernetes.io/os=linux" --debug` - use customized retina-agent image -`RETINA_AGENT_IMAGE= kubectl retina capture create --host-path /mnt/test --namespace capture --node-selectors "kubernetes.io/os=linux" --debug` +`RETINA_AGENT_IMAGE= kubectl retina capture create --name capture-test --host-path /mnt/test --namespace capture --node-selectors "kubernetes.io/os=linux" --debug` ## Retina capture delete diff --git a/docs/captures/readme.md b/docs/captures/readme.md index 226079d9bb..1dbd3732dd 100644 --- a/docs/captures/readme.md +++ b/docs/captures/readme.md @@ -24,7 +24,7 @@ See [Capture Command](../captures/cli.md) for more details. This example captures network traffic for all Linux Nodes, storing the output in the folder */mnt/capture* on each Node. ```shell -kubectl-retina capture create --host-path /mnt/capture --node-selectors "kubernetes.io/os=linux" +kubectl-retina capture create --name capture-test --host-path /mnt/capture --node-selectors "kubernetes.io/os=linux" ``` #### Architecture From 9921eca96b41468810ccc97ed7dcb110e89be113 Mon Sep 17 00:00:00 2001 From: Qingchuan Hao Date: Thu, 30 May 2024 01:47:43 +0800 Subject: [PATCH 12/15] fix: trim blob SAS URL read from mounted secret file (#411) # Description When reading a blob SAS URL from a secret, the URL can have a new line and is surrounded by double quotes. To fix this, we need trim the URL before passing it to blob client. ## Related Issue fix https://github.com/microsoft/retina/issues/132 ## Checklist - [x] I have read the [contributing documentation](https://retina.sh/docs/contributing). - [x] I signed and signed-off the commits (`git commit -S -s ...`). See [this documentation](https://docs.github.com/en/authentication/managing-commit-signature-verification/about-commit-signature-verification) on signing commits. - [x] I have correctly attributed the author(s) of the code. - [x] I have tested the changes locally. - [x] I have followed the project's style guidelines. - [ ] I have updated the documentation, if necessary. - [x] I have added tests, if applicable. ## Screenshots (if applicable) or Testing Completed ``` ts=2024-05-29T16:34:16.092Z level=info caller=outputlocation/blob.go:46 msg="Upload capture file to blob." location=BlobUpload ts=2024-05-29T16:34:17.944Z level=info caller=outputlocation/blob.go:84 msg="Done for uploading capture file to storage account" location=BlobUpload ``` ## Additional Notes Add any additional notes or context about the pull request here. --- Please refer to the [CONTRIBUTING.md](../CONTRIBUTING.md) file for more information on how to contribute to this project. --------- Signed-off-by: Qingchuan Hao --- docs/captures/readme.md | 14 +++----- pkg/capture/outputlocation/blob.go | 31 ++++++++++++----- pkg/capture/outputlocation/blob_test.go | 44 +++++++++++++++++++++++-- 3 files changed, 68 insertions(+), 21 deletions(-) diff --git a/docs/captures/readme.md b/docs/captures/readme.md index 1dbd3732dd..bc908c6ade 100644 --- a/docs/captures/readme.md +++ b/docs/captures/readme.md @@ -49,18 +49,12 @@ This example creates a Capture and stores the Capture artifacts into a storage a Create a secret to store blob SAS URL: -```yaml -apiVersion: v1 -data: - ## Data key is required to be "blob-upload-url" - blob-upload-url: -kind: Secret -metadata: - name: blob-sas-url - namespace: default -type: Opaque +```bash +kubectl create secret generic blob-sas-url --from-file=blob-upload-url=./blob-upload-url.txt ``` +in which blob-upload-url.txt stores the Blob SAS URL + Create a Capture specifying the secret created as blobUpload, this example will also store the artifact on the node host path ```yaml diff --git a/pkg/capture/outputlocation/blob.go b/pkg/capture/outputlocation/blob.go index 0367bff4b5..1477efedfa 100644 --- a/pkg/capture/outputlocation/blob.go +++ b/pkg/capture/outputlocation/blob.go @@ -34,7 +34,7 @@ func (bu *BlobUpload) Name() string { } func (bu *BlobUpload) Enabled() bool { - _, err := readBlobURL() + _, err := readBlobSASURL() if err != nil { bu.l.Debug("Output location is not enabled", zap.String("location", bu.Name())) return false @@ -44,13 +44,13 @@ func (bu *BlobUpload) Enabled() bool { func (bu *BlobUpload) Output(srcFilePath string) error { bu.l.Info("Upload capture file to blob.", zap.String("location", bu.Name())) - blobURL, err := readBlobURL() + blobURL, err := readBlobSASURL() if err != nil { bu.l.Error("Failed to read blob url", zap.Error(err)) return err } - if err = validateBlobURL(blobURL); err != nil { + if err = validateBlobSASURL(blobURL); err != nil { bu.l.Error("Failed to validate blob url", zap.Error(err)) return err } @@ -85,7 +85,18 @@ func (bu *BlobUpload) Output(srcFilePath string) error { return nil } -func readBlobURL() (string, error) { +func trimBlobSASURL(blobSASURL string) string { + // Blob SAS URL from the secret created from a file can have a newline and is surrounded by double quotes, + // so we need to trim \" and \n and trimming spaces is for unexpected spaces in the URL by customers. + // For example: + // "\"https://$storage-account-url/$container-name?$blob-sas-token\"\n" + trimedSecret := strings.Trim(blobSASURL, "\"\n") + trimedSecret = strings.TrimSpace(trimedSecret) + + return trimedSecret +} + +func readBlobSASURL() (string, error) { secretPath := filepath.Join(captureConstants.CaptureOutputLocationBlobUploadSecretPath, captureConstants.CaptureOutputLocationBlobUploadSecretKey) if runtime.GOOS == "windows" { containerSandboxMountPoint := os.Getenv(captureConstants.ContainerSandboxMountPointEnvKey) @@ -95,11 +106,15 @@ func readBlobURL() (string, error) { secretPath = filepath.Join(containerSandboxMountPoint, captureConstants.CaptureOutputLocationBlobUploadSecretPath, captureConstants.CaptureOutputLocationBlobUploadSecretKey) } secretBytes, err := os.ReadFile(secretPath) - return string(secretBytes), err + if err != nil { + return "", fmt.Errorf("failed to read file %s: %w", secretPath, err) + } + secretStr := string(secretBytes) + return trimBlobSASURL(secretStr), nil } -func validateBlobURL(blobURL string) error { - u, err := url.Parse(blobURL) +func validateBlobSASURL(blobSASURL string) error { + u, err := url.Parse(blobSASURL) if err != nil { return err } @@ -107,7 +122,7 @@ func validateBlobURL(blobURL string) error { // Split the path into storage account container and blob path := strings.TrimPrefix(u.Path, "/") if path == "" { - return fmt.Errorf("invalid blob URL") + return fmt.Errorf("invalid blob SAS URL") //nolint:goerr113 //no specific handling expected } return nil diff --git a/pkg/capture/outputlocation/blob_test.go b/pkg/capture/outputlocation/blob_test.go index ce8f982c80..622eacf65c 100644 --- a/pkg/capture/outputlocation/blob_test.go +++ b/pkg/capture/outputlocation/blob_test.go @@ -9,7 +9,45 @@ import ( "testing" ) -func TestValidateBlobURL(t *testing.T) { +func TestTrimBlobSASURL(t *testing.T) { + tests := []struct { + name string + inputURL string + expectedTrimmedURL string + }{ + { + name: "valid input URL with sas token that have a newline and is surrounded by double quotes", + inputURL: "\"https://retina.blob.core.windows.net/container/blob?sas-token\"\n", + expectedTrimmedURL: "https://retina.blob.core.windows.net/container/blob?sas-token", + }, + { + name: "valid input URL with sas token that have a newline and is surrounded by double quotes and extra spaces", + inputURL: "\"https://retina.blob.core.windows.net/container/blob?sas-token \"\n", + expectedTrimmedURL: "https://retina.blob.core.windows.net/container/blob?sas-token", + }, + { + name: "valid input URL with sas token that has extra spaces", + inputURL: "https://retina.blob.core.windows.net/container/blob?sas-token ", + expectedTrimmedURL: "https://retina.blob.core.windows.net/container/blob?sas-token", + }, + { + name: "valid input URL with sas token", + inputURL: "\"https://retina.blob.core.windows.net/container/blob?sas-token\"\n", + expectedTrimmedURL: "https://retina.blob.core.windows.net/container/blob?sas-token", + }, + } + + for _, tt := range tests { + t.Run(tt.name, func(t *testing.T) { + actualTrimmedBlobSASURL := trimBlobSASURL(tt.inputURL) + if actualTrimmedBlobSASURL != tt.expectedTrimmedURL { + t.Errorf("Expected trimmed Blob SAS URL %s, but got %s", tt.expectedTrimmedURL, actualTrimmedBlobSASURL) + } + }) + } +} + +func TestValidateBlobSASURL(t *testing.T) { tests := []struct { name string inputURL string @@ -17,7 +55,7 @@ func TestValidateBlobURL(t *testing.T) { }{ { name: "valid input URL with sas token", - inputURL: "https://retina.blob.core.windows.net/container/blob?sp=r&st=2023-02-17T19:13:30Z&se=2023-02-18T03:13:30Z&spr=https&sv=2021-06-08&sr=c&sig=NtSxlRK5Vs4kVs1dIOfr%2FMdLKBVTA4t3uJ0gqLZ9exk%3D", + inputURL: "https://retina.blob.core.windows.net/container/blob?sas-token", expectedError: nil, }, { @@ -44,7 +82,7 @@ func TestValidateBlobURL(t *testing.T) { for _, tt := range tests { t.Run(tt.name, func(t *testing.T) { - err := validateBlobURL(tt.inputURL) + err := validateBlobSASURL(tt.inputURL) if err != nil && tt.expectedError == nil { t.Errorf("Unexpected error: %v", err) From cd0df65a08535210d2e55450c9e905b057e6c364 Mon Sep 17 00:00:00 2001 From: Evan Baker Date: Wed, 29 May 2024 15:06:29 -0700 Subject: [PATCH 13/15] refactor: pin and alias base images in the Dockerfile (#381) # Description Refactor the Dockerfile to pull all external image refs to the top and pin them to SHA refs, then use them by alias throughout the build stages. ## Related Issue If this pull request is related to any issue, please mention it here. Additionally, make sure that the issue is assigned to you before submitting this pull request. ## Checklist - [x] I have read the [contributing documentation](https://retina.sh/docs/contributing). - [x] I signed and signed-off the commits (`git commit -S -s ...`). See [this documentation](https://docs.github.com/en/authentication/managing-commit-signature-verification/about-commit-signature-verification) on signing commits. - [x] I have correctly attributed the author(s) of the code. - [x] I have tested the changes locally. - [x] I have followed the project's style guidelines. - [ ] I have updated the documentation, if necessary. - [x] I have added tests, if applicable. ## Screenshots (if applicable) or Testing Completed Please add any relevant screenshots or GIFs to showcase the changes made. ## Additional Notes Add any additional notes or context about the pull request here. --- Please refer to the [CONTRIBUTING.md](../CONTRIBUTING.md) file for more information on how to contribute to this project. Signed-off-by: Evan Baker --- controller/Dockerfile | 49 ++++++++++++++++++++++++------------------- 1 file changed, 28 insertions(+), 21 deletions(-) diff --git a/controller/Dockerfile b/controller/Dockerfile index 4df6593579..0b959492b4 100644 --- a/controller/Dockerfile +++ b/controller/Dockerfile @@ -1,9 +1,27 @@ -ARG OS_VERSION=ltsc2019 +ARG OS_VERSION + +# pinned base images + +# mcr.microsoft.com/oss/go/microsoft/golang:1.22.3-1-cbl-mariner2.0 +FROM --platform=$BUILDPLATFORM mcr.microsoft.com/oss/go/microsoft/golang@sha256:8253def0216b87b2994b7ad689aeec7440f6eb67f981e438071d8d67e36ff69f as golang + +# mcr.microsoft.com/cbl-mariner/base/core:2.0 +FROM --platform=$TARGETPLATFORM mcr.microsoft.com/cbl-mariner/base/core@sha256:77651116f2e83cf50fddd8a0316945499f8ce6521ff8e94e67539180d1e5975a as mariner-core + +# mcr.microsoft.com/cbl-mariner/distroless/minimal:2.0 +FROM --platform=$TARGETPLATFORM mcr.microsoft.com/cbl-mariner/distroless/minimal@sha256:63a0a70ceaa1320bc6eb98b81106667d43e46b674731ea8d28e4de1b87e0747f as mariner-distroless + +# mcr.microsoft.com/windows/servercore:ltsc2019 +FROM --platform=$TARGETPLATFORM mcr.microsoft.com/windows/servercore@sha256:6fdf140282a2f809dae9b13fe441635867f0a27c33a438771673b8da8f3348a4 as ltsc2019 + +# mcr.microsoft.com/windows/servercore:ltsc2022 +FROM --platform=$TARGETPLATFORM mcr.microsoft.com/windows/servercore@sha256:45952938708fbde6ec0b5b94de68bcdec3f8c838be018536b1e9e5bd95e6b943 as ltsc2022 + + +# build stages # intermediate go generate stage -# mcr.microsoft.com/oss/go/microsoft/golang:1.22.2-1-cbl-mariner2.0 -# mcr.microsoft.com/oss/go/microsoft/golang@sha256:87e7359c0b4b4e3ca0d4be7fe5099423ec3431d6c44021a84569dba71ac5463e -FROM --platform=$BUILDPLATFORM mcr.microsoft.com/oss/go/microsoft/golang@sha256:87e7359c0b4b4e3ca0d4be7fe5099423ec3431d6c44021a84569dba71ac5463e AS intermediate +FROM golang AS intermediate ARG APP_INSIGHTS_ID # set to enable AI telemetry ARG GOARCH=amd64 # default to amd64 ARG GOOS=linux # default to linux @@ -18,9 +36,7 @@ RUN if [ "$GOOS" = "linux" ] ; then \ fi # capture binary -# mcr.microsoft.com/oss/go/microsoft/golang:1.22.2-1-cbl-mariner2.0 -# mcr.microsoft.com/oss/go/microsoft/golang@sha256:87e7359c0b4b4e3ca0d4be7fe5099423ec3431d6c44021a84569dba71ac5463e -FROM --platform=$BUILDPLATFORM mcr.microsoft.com/oss/go/microsoft/golang@sha256:87e7359c0b4b4e3ca0d4be7fe5099423ec3431d6c44021a84569dba71ac5463e AS capture-bin +FROM golang AS capture-bin ARG APP_INSIGHTS_ID # set to enable AI telemetry ARG GOARCH=amd64 # default to amd64 ARG GOOS=linux # default to linux @@ -58,9 +74,7 @@ RUN --mount=type=cache,target="/root/.cache/go-build" go build -v -o /go/bin/ret # tools image -# mcr.microsoft.com/cbl-mariner/base/core:2.0 -# mcr.microsoft.com/cbl-mariner/base/core@sha256:77651116f2e83cf50fddd8a0316945499f8ce6521ff8e94e67539180d1e5975a -FROM --platform=$TARGETPLATFORM mcr.microsoft.com/cbl-mariner/base/core@sha256:77651116f2e83cf50fddd8a0316945499f8ce6521ff8e94e67539180d1e5975a AS tools +FROM mariner-core AS tools RUN tdnf install -y \ clang16 \ iproute \ @@ -75,9 +89,7 @@ RUN arr="clang tcpdump ip ss iptables-legacy iptables-legacy-save iptables-nft i # init final image -# mcr.microsoft.com/cbl-mariner/distroless/minimal:2.0 -# mcr.microsoft.com/cbl-mariner/distroless/minimal@sha256:63a0a70ceaa1320bc6eb98b81106667d43e46b674731ea8d28e4de1b87e0747f -FROM --platform=$TARGETPLATFORM mcr.microsoft.com/cbl-mariner/distroless/minimal@sha256:63a0a70ceaa1320bc6eb98b81106667d43e46b674731ea8d28e4de1b87e0747f as init +FROM mariner-distroless as init COPY --from=init-bin /go/bin/retina/initretina /retina/initretina COPY --from=tools /lib/ /lib COPY --from=tools /usr/lib/ /usr/lib @@ -87,7 +99,7 @@ ENTRYPOINT ["./retina/initretina"] # agent final image # mcr.microsoft.com/cbl-mariner/distroless/minimal:2.0 # mcr.microsoft.com/cbl-mariner/distroless/minimal@sha256:63a0a70ceaa1320bc6eb98b81106667d43e46b674731ea8d28e4de1b87e0747f -FROM --platform=$TARGETPLATFORM mcr.microsoft.com/cbl-mariner/distroless/minimal@sha256:63a0a70ceaa1320bc6eb98b81106667d43e46b674731ea8d28e4de1b87e0747f as agent +FROM mariner-distroless as agent COPY --from=tools /lib/ /lib COPY --from=tools /usr/lib/ /usr/lib COPY --from=tools /tmp/bin/ /bin @@ -96,14 +108,9 @@ COPY --from=controller-bin /go/src/github.com/microsoft/retina/pkg/plugin /go/sr COPY --from=capture-bin /go/bin/retina/captureworkload /retina/captureworkload ENTRYPOINT ["./retina/controller"] -# intermediate for win-ltsc2019 -FROM --platform=$TARGETPLATFORM mcr.microsoft.com/windows/servercore@sha256:6fdf140282a2f809dae9b13fe441635867f0a27c33a438771673b8da8f3348a4 as ltsc2019 - -# intermediate for win-ltsc2022 -FROM --platform=$TARGETPLATFORM mcr.microsoft.com/windows/servercore@sha256:45952938708fbde6ec0b5b94de68bcdec3f8c838be018536b1e9e5bd95e6b943 as ltsc2022 -# agent final image for win2019 -FROM --platform=$TARGETPLATFORM ${OS_VERSION} as agent-win +# agent final image for windows +FROM ${OS_VERSION} as agent-win COPY --from=controller-bin /go/src/github.com/microsoft/retina/windows/kubeconfigtemplate.yaml kubeconfigtemplate.yaml COPY --from=controller-bin /go/src/github.com/microsoft/retina/windows/setkubeconfigpath.ps1 setkubeconfigpath.ps1 COPY --from=controller-bin /go/bin/retina/controller controller.exe From 300bbcbb730b25643f0bd9ab4c2625dec74ed081 Mon Sep 17 00:00:00 2001 From: Quang Nguyen Date: Thu, 30 May 2024 13:58:15 -0400 Subject: [PATCH 14/15] test: add DNS basic and advance metrics e2e (#353) # Description Adding DNS basic and advance metrics e2e tests ## Related Issue If this pull request is related to any issue, please mention it here. Additionally, make sure that the issue is assigned to you before submitting this pull request. ## Checklist - [ ] I have read the [contributing documentation](https://retina.sh/docs/contributing). - [ ] I signed and signed-off the commits (`git commit -S -s ...`). See [this documentation](https://docs.github.com/en/authentication/managing-commit-signature-verification/about-commit-signature-verification) on signing commits. - [ ] I have correctly attributed the author(s) of the code. - [ ] I have tested the changes locally. - [ ] I have followed the project's style guidelines. - [ ] I have updated the documentation, if necessary. - [ ] I have added tests, if applicable. ## Screenshots (if applicable) or Testing Completed Please add any relevant screenshots or GIFs to showcase the changes made. ## Additional Notes Add any additional notes or context about the pull request here. --- Please refer to the [CONTRIBUTING.md](../CONTRIBUTING.md) file for more information on how to contribute to this project. --- .github/workflows/e2e.yaml | 2 +- .github/workflows/images.yaml | 2 +- .../helm/retina/templates/daemonset.yaml | 1 + pkg/module/metrics/dns_test.go | 2 +- pkg/module/metrics/drops_test.go | 28 +-- pkg/module/metrics/forward_test.go | 32 +-- pkg/module/metrics/tcpflags_test.go | 48 ++-- pkg/module/metrics/types.go | 4 +- pkg/module/metrics/types_test.go | 8 +- test/e2e/common/common.go | 11 + test/e2e/framework/kubernetes/get-pod-ip.go | 31 +++ .../kubernetes/install-retina-helm.go | 1 - test/e2e/framework/kubernetes/port-forward.go | 3 +- .../kubernetes/upgrade-retina-helm.go | 85 +++++++ test/e2e/framework/prometheus/prometheus.go | 2 +- test/e2e/framework/types/job.go | 2 +- test/e2e/jobs/jobs.go | 185 +++++++++++++++ test/e2e/retina_e2e_test.go | 61 +++++ test/e2e/scenarios/dns/advance.go | 124 ++++++++++ test/e2e/scenarios/dns/basic.go | 91 +++++++ test/e2e/scenarios/dns/scenarios.go | 222 ++++++++++++++++++ .../scenarios/{retina => }/drop/scenario.go | 1 + .../{retina => }/drop/validate-drop-metric.go | 0 .../scenarios/retina/retina_scenarios_test.go | 86 ------- .../scenarios/{retina => }/tcp/scenario.go | 22 +- .../{retina => }/tcp/validate-flow-metric.go | 0 .../tcp/validate-tcp-connection-remote.go | 0 test/profiles/advanced/values.yaml | 5 +- 28 files changed, 897 insertions(+), 162 deletions(-) create mode 100644 test/e2e/common/common.go create mode 100644 test/e2e/framework/kubernetes/get-pod-ip.go create mode 100644 test/e2e/framework/kubernetes/upgrade-retina-helm.go create mode 100644 test/e2e/jobs/jobs.go create mode 100644 test/e2e/retina_e2e_test.go create mode 100644 test/e2e/scenarios/dns/advance.go create mode 100644 test/e2e/scenarios/dns/basic.go create mode 100644 test/e2e/scenarios/dns/scenarios.go rename test/e2e/scenarios/{retina => }/drop/scenario.go (98%) rename test/e2e/scenarios/{retina => }/drop/validate-drop-metric.go (100%) delete mode 100644 test/e2e/scenarios/retina/retina_scenarios_test.go rename test/e2e/scenarios/{retina => }/tcp/scenario.go (76%) rename test/e2e/scenarios/{retina => }/tcp/validate-flow-metric.go (100%) rename test/e2e/scenarios/{retina => }/tcp/validate-tcp-connection-remote.go (100%) diff --git a/.github/workflows/e2e.yaml b/.github/workflows/e2e.yaml index 9de5729a55..9bcec18007 100644 --- a/.github/workflows/e2e.yaml +++ b/.github/workflows/e2e.yaml @@ -43,4 +43,4 @@ jobs: shell: bash run: | set -euo pipefail - go test -v ./test/e2e/scenarios/retina/*.go -timeout 30m -tags=e2e -count=1 -args -image-tag=$(make version) -image-registry=${{ vars.ACR_NAME }} -image-namespace=${{ github.repository}} + go test -v ./test/e2e/*.go -timeout 30m -tags=e2e -count=1 -args -image-tag=$(make version) -image-registry=${{vars.ACR_NAME}} -image-namespace=${{github.repository}} diff --git a/.github/workflows/images.yaml b/.github/workflows/images.yaml index 64cc5ae424..38b3e8d6f4 100644 --- a/.github/workflows/images.yaml +++ b/.github/workflows/images.yaml @@ -215,4 +215,4 @@ jobs: shell: bash run: | set -euo pipefail - go test -v ./test/e2e/scenarios/retina/*.go -timeout 30m -tags=e2e -count=1 -args -image-tag=$(make version) -image-registry=${{ vars.ACR_NAME }} -image-namespace=${{ github.repository}} + go test -v ./test/e2e/*.go -timeout 30m -tags=e2e -count=1 -args -image-tag=$(make version) -image-registry=${{ vars.ACR_NAME }} -image-namespace=${{ github.repository}} diff --git a/deploy/manifests/controller/helm/retina/templates/daemonset.yaml b/deploy/manifests/controller/helm/retina/templates/daemonset.yaml index eddab7942b..9930a52d7a 100644 --- a/deploy/manifests/controller/helm/retina/templates/daemonset.yaml +++ b/deploy/manifests/controller/helm/retina/templates/daemonset.yaml @@ -161,6 +161,7 @@ spec: ports: - name: retina containerPort: {{ .Values.retinaPort }} + workingDir: $env:CONTAINER_SANDBOX_MOUNT_POINT command: - powershell.exe - -command diff --git a/pkg/module/metrics/dns_test.go b/pkg/module/metrics/dns_test.go index d7ce4fc2bc..3dfe727b6a 100644 --- a/pkg/module/metrics/dns_test.go +++ b/pkg/module/metrics/dns_test.go @@ -37,7 +37,7 @@ func TestGetLabels(t *testing.T) { }, { name: "local context", - want: append(utils.DNSLabels, "ip", "namespace", "podname", "workloadKind", "workloadName", "service", "port"), + want: append(utils.DNSLabels, "ip", "namespace", "podname", "workload_kind", "workload_name", "service", "port"), d: &DNSMetrics{ baseMetricObject: baseMetricObject{ srcCtx: &ContextOptions{ diff --git a/pkg/module/metrics/drops_test.go b/pkg/module/metrics/drops_test.go index 45747af92c..4b9ecddaa6 100644 --- a/pkg/module/metrics/drops_test.go +++ b/pkg/module/metrics/drops_test.go @@ -106,8 +106,8 @@ func TestNewDrop(t *testing.T) { "source_ip", "source_namespace", "source_podname", - "source_workloadKind", - "source_workloadName", + "source_workload_kind", + "source_workload_name", "source_service", "source_port", }, @@ -129,8 +129,8 @@ func TestNewDrop(t *testing.T) { "destination_ip", "destination_namespace", "destination_podname", - "destination_workloadKind", - "destination_workloadName", + "destination_workload_kind", + "destination_workload_name", "destination_service", "destination_port", }, @@ -153,8 +153,8 @@ func TestNewDrop(t *testing.T) { "source_ip", "source_namespace", "source_podname", - "source_workloadKind", - "source_workloadName", + "source_workload_kind", + "source_workload_name", "source_service", "source_port", }, @@ -177,8 +177,8 @@ func TestNewDrop(t *testing.T) { "source_ip", "source_namespace", "source_podname", - "source_workloadKind", - "source_workloadName", + "source_workload_kind", + "source_workload_name", "source_service", "source_port", }, @@ -202,8 +202,8 @@ func TestNewDrop(t *testing.T) { "ip", "namespace", "podname", - "workloadKind", - "workloadName", + "workload_kind", + "workload_name", "service", "port", }, @@ -228,8 +228,8 @@ func TestNewDrop(t *testing.T) { "ip", "namespace", "podname", - "workloadKind", - "workloadName", + "workload_kind", + "workload_name", "service", "port", }, @@ -255,8 +255,8 @@ func TestNewDrop(t *testing.T) { "ip", "namespace", "podname", - "workloadKind", - "workloadName", + "workload_kind", + "workload_name", "service", "port", }, diff --git a/pkg/module/metrics/forward_test.go b/pkg/module/metrics/forward_test.go index e93e571cef..ff23c78239 100644 --- a/pkg/module/metrics/forward_test.go +++ b/pkg/module/metrics/forward_test.go @@ -103,8 +103,8 @@ func TestNewForward(t *testing.T) { "source_ip", "source_namespace", "source_podname", - "source_workloadKind", - "source_workloadName", + "source_workload_kind", + "source_workload_name", "source_service", "source_port", }, @@ -125,8 +125,8 @@ func TestNewForward(t *testing.T) { "destination_ip", "destination_namespace", "destination_podname", - "destination_workloadKind", - "destination_workloadName", + "destination_workload_kind", + "destination_workload_name", "destination_service", "destination_port", }, @@ -148,8 +148,8 @@ func TestNewForward(t *testing.T) { "source_ip", "source_namespace", "source_podname", - "source_workloadKind", - "source_workloadName", + "source_workload_kind", + "source_workload_name", "source_service", "source_port", }, @@ -172,8 +172,8 @@ func TestNewForward(t *testing.T) { "source_ip", "source_namespace", "source_podname", - "source_workloadKind", - "source_workloadName", + "source_workload_kind", + "source_workload_name", "source_service", "source_port", }, @@ -195,8 +195,8 @@ func TestNewForward(t *testing.T) { "source_ip", "source_namespace", "source_podname", - "source_workloadKind", - "source_workloadName", + "source_workload_kind", + "source_workload_name", "source_service", "source_port", }, @@ -218,8 +218,8 @@ func TestNewForward(t *testing.T) { "ip", "namespace", "podname", - "workloadKind", - "workloadName", + "workload_kind", + "workload_name", "service", "port", }, @@ -242,8 +242,8 @@ func TestNewForward(t *testing.T) { "ip", "namespace", "podname", - "workloadKind", - "workloadName", + "workload_kind", + "workload_name", "service", "port", }, @@ -267,8 +267,8 @@ func TestNewForward(t *testing.T) { "ip", "namespace", "podname", - "workloadKind", - "workloadName", + "workload_kind", + "workload_name", "service", "port", }, diff --git a/pkg/module/metrics/tcpflags_test.go b/pkg/module/metrics/tcpflags_test.go index 2e2af3d5bb..2ea452d1db 100644 --- a/pkg/module/metrics/tcpflags_test.go +++ b/pkg/module/metrics/tcpflags_test.go @@ -77,8 +77,8 @@ func TestNewTCPMetrics(t *testing.T) { "source_ip", "source_namespace", "source_podname", - "source_workloadKind", - "source_workloadName", + "source_workload_kind", + "source_workload_name", "source_service", "source_port", }, @@ -99,8 +99,8 @@ func TestNewTCPMetrics(t *testing.T) { "destination_ip", "destination_namespace", "destination_podname", - "destination_workloadKind", - "destination_workloadName", + "destination_workload_kind", + "destination_workload_name", "destination_service", "destination_port", }, @@ -122,8 +122,8 @@ func TestNewTCPMetrics(t *testing.T) { "source_ip", "source_namespace", "source_podname", - "source_workloadKind", - "source_workloadName", + "source_workload_kind", + "source_workload_name", "source_service", "source_port", }, @@ -154,8 +154,8 @@ func TestNewTCPMetrics(t *testing.T) { "source_ip", "source_namespace", "source_podname", - "source_workloadKind", - "source_workloadName", + "source_workload_kind", + "source_workload_name", "source_service", "source_port", }, @@ -184,8 +184,8 @@ func TestNewTCPMetrics(t *testing.T) { "source_ip", "source_namespace", "source_podname", - "source_workloadKind", - "source_workloadName", + "source_workload_kind", + "source_workload_name", "source_service", "source_port", }, @@ -222,8 +222,8 @@ func TestNewTCPMetrics(t *testing.T) { "source_ip", "source_namespace", "source_podname", - "source_workloadKind", - "source_workloadName", + "source_workload_kind", + "source_workload_name", "source_service", "source_port", }, @@ -261,8 +261,8 @@ func TestNewTCPMetrics(t *testing.T) { "destination_ip", "destination_namespace", "destination_podname", - "destination_workloadKind", - "destination_workloadName", + "destination_workload_kind", + "destination_workload_name", "destination_service", "destination_port", }, @@ -299,8 +299,8 @@ func TestNewTCPMetrics(t *testing.T) { "destination_ip", "destination_namespace", "destination_podname", - "destination_workloadKind", - "destination_workloadName", + "destination_workload_kind", + "destination_workload_name", "destination_service", "destination_port", }, @@ -338,8 +338,8 @@ func TestNewTCPMetrics(t *testing.T) { "destination_ip", "destination_namespace", "destination_podname", - "destination_workloadKind", - "destination_workloadName", + "destination_workload_kind", + "destination_workload_name", "destination_service", "destination_port", }, @@ -377,8 +377,8 @@ func TestNewTCPMetrics(t *testing.T) { "ip", "namespace", "podname", - "workloadKind", - "workloadName", + "workload_kind", + "workload_name", "service", "port", }, @@ -416,8 +416,8 @@ func TestNewTCPMetrics(t *testing.T) { "ip", "namespace", "podname", - "workloadKind", - "workloadName", + "workload_kind", + "workload_name", "service", "port", }, @@ -457,8 +457,8 @@ func TestNewTCPMetrics(t *testing.T) { "ip", "namespace", "podname", - "workloadKind", - "workloadName", + "workload_kind", + "workload_name", "service", "port", }, diff --git a/pkg/module/metrics/types.go b/pkg/module/metrics/types.go index 74764b4f74..7784ef4219 100644 --- a/pkg/module/metrics/types.go +++ b/pkg/module/metrics/types.go @@ -36,10 +36,10 @@ const ( portCtxOption = "port" // workloads context option - workloadKindCtxOption = "workloadKind" + workloadKindCtxOption = "workload_kind" // workload context option - workloadNameCtxOption = "workloadName" + workloadNameCtxOption = "workload_name" // workload context option workloadCtxOption = "workload" diff --git a/pkg/module/metrics/types_test.go b/pkg/module/metrics/types_test.go index db1730eda3..d488bbd358 100644 --- a/pkg/module/metrics/types_test.go +++ b/pkg/module/metrics/types_test.go @@ -34,7 +34,7 @@ func TestNewCtxOps(t *testing.T) { ctxType: source, expected: []string{ "source_ip", "source_namespace", "source_podname", - "source_workloadKind", "source_workloadName", "source_service", "source_port", + "source_workload_kind", "source_workload_name", "source_service", "source_port", }, f: &flow.Flow{}, expectedVals: []string{"unknown", "unknown", "unknown", "unknown", "unknown", "unknown", "unknown"}, @@ -45,7 +45,7 @@ func TestNewCtxOps(t *testing.T) { ctxType: destination, expected: []string{ "destination_ip", "destination_namespace", "destination_podname", - "destination_workloadKind", "destination_workloadName", "destination_service", "destination_port", + "destination_workload_kind", "destination_workload_name", "destination_service", "destination_port", }, f: &flow.Flow{}, expectedVals: []string{"unknown", "unknown", "unknown", "unknown", "unknown", "unknown", "unknown"}, @@ -56,7 +56,7 @@ func TestNewCtxOps(t *testing.T) { ctxType: source, expected: []string{ "source_ip", "source_namespace", "source_podname", - "source_workloadKind", "source_workloadName", "source_service", "source_port", + "source_workload_kind", "source_workload_name", "source_service", "source_port", }, f: &flow.Flow{ Source: &flow.Endpoint{ @@ -72,7 +72,7 @@ func TestNewCtxOps(t *testing.T) { ctxType: destination, expected: []string{ "destination_ip", "destination_namespace", "destination_podname", - "destination_workloadKind", "destination_workloadName", "destination_service", "destination_port", + "destination_workload_kind", "destination_workload_name", "destination_service", "destination_port", }, f: &flow.Flow{ Destination: &flow.Endpoint{ diff --git a/test/e2e/common/common.go b/test/e2e/common/common.go new file mode 100644 index 0000000000..85f394f8b1 --- /dev/null +++ b/test/e2e/common/common.go @@ -0,0 +1,11 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. + +// package common contains common functions and values that are used across multiple e2e tests. +package common + +const ( + RetinaPort int = 10093 + // netObsRGtag is used to tag resources created by this test suite + NetObsRGtag = "-e2e-netobs-" +) diff --git a/test/e2e/framework/kubernetes/get-pod-ip.go b/test/e2e/framework/kubernetes/get-pod-ip.go new file mode 100644 index 0000000000..fa8a882b74 --- /dev/null +++ b/test/e2e/framework/kubernetes/get-pod-ip.go @@ -0,0 +1,31 @@ +package kubernetes + +import ( + "context" + + "github.com/pkg/errors" + metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" + "k8s.io/client-go/kubernetes" + "k8s.io/client-go/tools/clientcmd" +) + +func GetPodIP(kubeConfigFilePath, namespace, podName string) (string, error) { + config, err := clientcmd.BuildConfigFromFlags("", kubeConfigFilePath) + if err != nil { + return "", errors.Wrapf(err, "error building kubeconfig") + } + + clientset, err := kubernetes.NewForConfig(config) + if err != nil { + return "", errors.Wrapf(err, "error creating Kubernetes clientset") + } + + pod, err := clientset.CoreV1().Pods(namespace).Get(context.Background(), podName, metav1.GetOptions{}) + if err != nil { + return "", errors.Wrapf(err, "error getting pod %s in namespace %s", podName, namespace) + } + if pod.Status.PodIP == "" { + return "", errors.Errorf("pod %s in namespace %s has no IP", podName, namespace) + } + return pod.Status.PodIP, nil +} diff --git a/test/e2e/framework/kubernetes/install-retina-helm.go b/test/e2e/framework/kubernetes/install-retina-helm.go index e986a2ae50..82f10745de 100644 --- a/test/e2e/framework/kubernetes/install-retina-helm.go +++ b/test/e2e/framework/kubernetes/install-retina-helm.go @@ -99,7 +99,6 @@ func (i *InstallHelmChart) Run() error { // install the chart here rel, err := client.Run(chart, chart.Values) if err != nil { - PrintPodLogs(i.KubeConfigFilePath, i.Namespace, "k8s-app=retina") return fmt.Errorf("failed to install chart: %w", err) } diff --git a/test/e2e/framework/kubernetes/port-forward.go b/test/e2e/framework/kubernetes/port-forward.go index 8e0edc285b..5237109867 100644 --- a/test/e2e/framework/kubernetes/port-forward.go +++ b/test/e2e/framework/kubernetes/port-forward.go @@ -34,6 +34,7 @@ type PortForward struct { LabelSelector string LocalPort string RemotePort string + Endpoint string KubeConfigFilePath string OptionalLabelAffinity string @@ -98,7 +99,7 @@ func (p *PortForward) Run() error { client := http.Client{ Timeout: defaultHTTPClientTimeout, } - resp, err := client.Get(p.pf.Address()) //nolint + resp, err := client.Get(p.pf.Address() + "/" + p.Endpoint) //nolint if err != nil { log.Printf("port forward validation HTTP request to %s failed: %v\n", p.pf.Address(), err) p.pf.Stop() diff --git a/test/e2e/framework/kubernetes/upgrade-retina-helm.go b/test/e2e/framework/kubernetes/upgrade-retina-helm.go new file mode 100644 index 0000000000..fdb5d19be3 --- /dev/null +++ b/test/e2e/framework/kubernetes/upgrade-retina-helm.go @@ -0,0 +1,85 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. +package kubernetes + +import ( + "fmt" + "log" + "os" + "time" + + "helm.sh/helm/v3/pkg/action" + "helm.sh/helm/v3/pkg/cli" + helmValues "helm.sh/helm/v3/pkg/cli/values" + "helm.sh/helm/v3/pkg/getter" +) + +const upgradeTimeout = 300 * time.Second // longer timeout to accommodate slow windows node terminating and restarting. + +type UpgradeRetinaHelmChart struct { + Namespace string + ReleaseName string + KubeConfigFilePath string + ChartPath string + TagEnv string + ValuesFile string +} + +func (u *UpgradeRetinaHelmChart) Run() error { + settings := cli.New() + settings.KubeConfig = u.KubeConfigFilePath + actionConfig := new(action.Configuration) + + err := actionConfig.Init(settings.RESTClientGetter(), u.Namespace, os.Getenv("HELM_DRIVER"), log.Printf) + if err != nil { + return fmt.Errorf("failed to initialize helm action config: %w", err) + } + + client := action.NewUpgrade(actionConfig) + client.Wait = true + client.WaitForJobs = true + client.Timeout = upgradeTimeout + + // Create a new Get action + get := action.NewGet(actionConfig) + + // Get the current release + rel, err := get.Run(u.ReleaseName) + if err != nil { + return fmt.Errorf("failed to get release: %w", err) + } + + // Get the chart from the current release + chart := rel.Chart + + // enable advanced metrics profile + options := helmValues.Options{ + ValueFiles: []string{u.ValuesFile}, + } + provider := getter.All(settings) + values, err := options.MergeValues(provider) + if err != nil { + return fmt.Errorf("failed to merge values: %w", err) + } + // logs values to be set during upgrade + log.Printf("values to be set during upgrade: %v\n", values) + + rel, err = client.Run(u.ReleaseName, chart, values) + if err != nil { + return fmt.Errorf("failed to upgrade chart: %w", err) + } + + log.Printf("upgraded chart from path: %s in namespace: %s\n", rel.Name, rel.Namespace) + // this will confirm the values set during installation + log.Printf("chart values: %v\n", rel.Config) + + return nil +} + +func (u *UpgradeRetinaHelmChart) Prevalidate() error { + return nil +} + +func (u *UpgradeRetinaHelmChart) Stop() error { + return nil +} diff --git a/test/e2e/framework/prometheus/prometheus.go b/test/e2e/framework/prometheus/prometheus.go index 603f0d96ac..4cdaab1614 100644 --- a/test/e2e/framework/prometheus/prometheus.go +++ b/test/e2e/framework/prometheus/prometheus.go @@ -30,7 +30,7 @@ func CheckMetric(promAddress, metricName string, validMetric map[string]string) metrics := map[string]*promclient.MetricFamily{} scrapeMetricsFn := func() error { - log.Printf("checking for drop metrics on %s", promAddress) + log.Printf("checking for metrics on %s", promAddress) var err error // obtain a full dump of all metrics on the endpoint diff --git a/test/e2e/framework/types/job.go b/test/e2e/framework/types/job.go index aefb96fae8..5bae546dd0 100644 --- a/test/e2e/framework/types/job.go +++ b/test/e2e/framework/types/job.go @@ -296,7 +296,7 @@ func (j *Job) validateStep(step *StepWrapper) error { if passedvalue == "" { if retrievedvalue == "" { - return fmt.Errorf("parameter \"%s\" is empty in step \"%s\"; %w", parameter, j.GetPrettyStepName(step), ErrNoValue) + return fmt.Errorf("parameter \"%s\" is empty in step \"%s\" and no existing value was saved in job; %w", parameter, j.GetPrettyStepName(step), ErrNoValue) } value = retrievedvalue } else { diff --git a/test/e2e/jobs/jobs.go b/test/e2e/jobs/jobs.go new file mode 100644 index 0000000000..eebe9e7daa --- /dev/null +++ b/test/e2e/jobs/jobs.go @@ -0,0 +1,185 @@ +package retina + +import ( + "github.com/microsoft/retina/test/e2e/framework/azure" + "github.com/microsoft/retina/test/e2e/framework/generic" + "github.com/microsoft/retina/test/e2e/framework/kubernetes" + "github.com/microsoft/retina/test/e2e/framework/types" + "github.com/microsoft/retina/test/e2e/scenarios/dns" + "github.com/microsoft/retina/test/e2e/scenarios/drop" + tcp "github.com/microsoft/retina/test/e2e/scenarios/tcp" +) + +func CreateTestInfra(subID, clusterName, location, kubeConfigFilePath string) *types.Job { + job := types.NewJob("Create e2e test infrastructure") + + job.AddStep(&azure.CreateResourceGroup{ + SubscriptionID: subID, + ResourceGroupName: clusterName, + Location: location, + }, nil) + + job.AddStep(&azure.CreateVNet{ + VnetName: "testvnet", + VnetAddressSpace: "10.0.0.0/9", + }, nil) + + job.AddStep(&azure.CreateSubnet{ + SubnetName: "testsubnet", + SubnetAddressSpace: "10.0.0.0/12", + }, nil) + + job.AddStep(&azure.CreateNPMCluster{ + ClusterName: clusterName, + PodCidr: "10.128.0.0/9", + DNSServiceIP: "192.168.0.10", + ServiceCidr: "192.168.0.0/28", + }, nil) + + job.AddStep(&azure.GetAKSKubeConfig{ + KubeConfigFilePath: kubeConfigFilePath, + }, nil) + + job.AddStep(&generic.LoadFlags{ + TagEnv: generic.DefaultTagEnv, + ImageNamespaceEnv: generic.DefaultImageNamespace, + ImageRegistryEnv: generic.DefaultImageRegistry, + }, nil) + + return job +} + +func DeleteTestInfra(subID, clusterName, location string) *types.Job { + job := types.NewJob("Delete e2e test infrastructure") + + job.AddStep(&azure.DeleteResourceGroup{ + SubscriptionID: subID, + ResourceGroupName: clusterName, + Location: location, + }, nil) + + return job +} + +func InstallAndTestRetinaBasicMetrics(kubeConfigFilePath, chartPath string) *types.Job { + job := types.NewJob("Install and test Retina with basic metrics") + + job.AddStep(&kubernetes.InstallHelmChart{ + Namespace: "kube-system", + ReleaseName: "retina", + KubeConfigFilePath: kubeConfigFilePath, + ChartPath: chartPath, + TagEnv: generic.DefaultTagEnv, + }, nil) + + job.AddScenario(drop.ValidateDropMetric()) + + job.AddScenario(tcp.ValidateTCPMetrics()) + + dnsScenarios := []struct { + name string + req *dns.RequestValidationParams + resp *dns.ResponseValidationParams + }{ + { + name: "Validate basic DNS request and response metrics for a valid domain", + req: &dns.RequestValidationParams{ + NumResponse: "0", + Query: "kubernetes.default.svc.cluster.local.", + QueryType: "A", + Command: "nslookup kubernetes.default", + ExpectError: false, + }, + resp: &dns.ResponseValidationParams{ + NumResponse: "1", + Query: "kubernetes.default.svc.cluster.local.", + QueryType: "A", + ReturnCode: "No Error", + Response: "10.0.0.1", + }, + }, + { + name: "Validate basic DNS request and response metrics for a non-existent domain", + req: &dns.RequestValidationParams{ + NumResponse: "0", + Query: "some.non.existent.domain.", + QueryType: "A", + Command: "nslookup some.non.existent.domain", + ExpectError: true, + }, + resp: &dns.ResponseValidationParams{ + NumResponse: "0", + Query: "some.non.existent.domain.", + QueryType: "A", + Response: dns.EmptyResponse, // hacky way to bypass the framework for now + ReturnCode: "Non-Existent Domain", + }, + }, + } + + for _, scenario := range dnsScenarios { + job.AddScenario(dns.ValidateBasicDNSMetrics(scenario.name, scenario.req, scenario.resp)) + } + + return job +} + +func UpgradeAndTestRetinaAdvancedMetrics(kubeConfigFilePath, chartPath, valuesFilePath string) *types.Job { + job := types.NewJob("Upgrade and test Retina with advanced metrics") + // enable advanced metrics + job.AddStep(&kubernetes.UpgradeRetinaHelmChart{ + Namespace: "kube-system", + ReleaseName: "retina", + KubeConfigFilePath: kubeConfigFilePath, + ChartPath: chartPath, + TagEnv: generic.DefaultTagEnv, + ValuesFile: valuesFilePath, + }, nil) + + dnsScenarios := []struct { + name string + req *dns.RequestValidationParams + resp *dns.ResponseValidationParams + }{ + { + name: "Validate advanced DNS request and response metrics for a valid domain", + req: &dns.RequestValidationParams{ + NumResponse: "0", + Query: "kubernetes.default.svc.cluster.local.", + QueryType: "A", + Command: "nslookup kubernetes.default", + ExpectError: false, + }, + resp: &dns.ResponseValidationParams{ + NumResponse: "1", + Query: "kubernetes.default.svc.cluster.local.", + QueryType: "A", + ReturnCode: "NOERROR", + Response: "10.0.0.1", + }, + }, + { + name: "Validate advanced DNS request and response metrics for a non-existent domain", + req: &dns.RequestValidationParams{ + NumResponse: "0", + Query: "some.non.existent.domain.", + QueryType: "A", + Command: "nslookup some.non.existent.domain.", + ExpectError: true, + }, + resp: &dns.ResponseValidationParams{ + NumResponse: "0", + Query: "some.non.existent.domain.", + QueryType: "A", + Response: dns.EmptyResponse, // hacky way to bypass the framework for now + ReturnCode: "NXDOMAIN", + }, + }, + } + + for _, scenario := range dnsScenarios { + job.AddScenario(dns.ValidateAdvancedDNSMetrics(scenario.name, scenario.req, scenario.resp, kubeConfigFilePath)) + } + + return job +} diff --git a/test/e2e/retina_e2e_test.go b/test/e2e/retina_e2e_test.go new file mode 100644 index 0000000000..1c2c2e76d2 --- /dev/null +++ b/test/e2e/retina_e2e_test.go @@ -0,0 +1,61 @@ +package retina + +import ( + "os" + "os/user" + "path/filepath" + "strconv" + "testing" + "time" + + "github.com/microsoft/retina/test/e2e/common" + "github.com/microsoft/retina/test/e2e/framework/types" + jobs "github.com/microsoft/retina/test/e2e/jobs" + "github.com/stretchr/testify/require" +) + +// TestE2ERetina tests all e2e scenarios for retina +func TestE2ERetina(t *testing.T) { + curuser, err := user.Current() + require.NoError(t, err) + + clusterName := curuser.Username + common.NetObsRGtag + strconv.FormatInt(time.Now().Unix(), 10) + + subID := os.Getenv("AZURE_SUBSCRIPTION_ID") + require.NotEmpty(t, subID) + + location := os.Getenv("AZURE_LOCATION") + if location == "" { + location = "eastus" + } + + cwd, err := os.Getwd() + require.NoError(t, err) + + // Get to root of the repo by going up two directories + rootDir := filepath.Dir(filepath.Dir(cwd)) + + chartPath := filepath.Join(rootDir, "deploy", "manifests", "controller", "helm", "retina") + profilePath := filepath.Join(rootDir, "test", "profiles", "advanced", "values.yaml") + kubeConfigFilePath := filepath.Join(rootDir, "test", "e2e", "test.pem") + + // CreateTestInfra + createTestInfra := types.NewRunner(t, jobs.CreateTestInfra(subID, clusterName, location, kubeConfigFilePath)) + createTestInfra.Run() + + // Hacky way to ensure that the test infra is deleted even if the test panics + defer func() { + if r := recover(); r != nil { + t.Logf("Recovered in TestE2ERetina, %v", r) + } + _ = jobs.DeleteTestInfra(subID, clusterName, location).Run() + }() + + // Install and test Retina basic metrics + basicMetricsE2E := types.NewRunner(t, jobs.InstallAndTestRetinaBasicMetrics(kubeConfigFilePath, chartPath)) + basicMetricsE2E.Run() + + // Upgrade and test Retina with advanced metrics + advanceMetricsE2E := types.NewRunner(t, jobs.UpgradeAndTestRetinaAdvancedMetrics(kubeConfigFilePath, chartPath, profilePath)) + advanceMetricsE2E.Run() +} diff --git a/test/e2e/scenarios/dns/advance.go b/test/e2e/scenarios/dns/advance.go new file mode 100644 index 0000000000..bc5379824b --- /dev/null +++ b/test/e2e/scenarios/dns/advance.go @@ -0,0 +1,124 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. +package dns + +import ( + "fmt" + "log" + + "github.com/microsoft/retina/test/e2e/common" + "github.com/microsoft/retina/test/e2e/framework/kubernetes" + prom "github.com/microsoft/retina/test/e2e/framework/prometheus" + "github.com/pkg/errors" +) + +var ( + dnsAdvRequestCountMetricName = "networkobservability_adv_dns_request_count" + dnsAdvResponseCountMetricName = "networkobservability_adv_dns_response_count" +) + +type ValidateAdvanceDNSRequestMetrics struct { + Namespace string + NumResponse string + PodName string + Query string + QueryType string + WorkloadKind string + WorkloadName string + + KubeConfigFilePath string +} + +func (v *ValidateAdvanceDNSRequestMetrics) Run() error { + metricsEndpoint := fmt.Sprintf("http://localhost:%d/metrics", common.RetinaPort) + // Get Pod IP address + podIP, err := kubernetes.GetPodIP(v.KubeConfigFilePath, v.Namespace, v.PodName) + if err != nil { + return errors.Wrapf(err, "failed to get pod IP address") + } + + validateAdvanceDNSRequestMetrics := map[string]string{ + "ip": podIP, + "namespace": v.Namespace, + "num_response": v.NumResponse, + "podname": v.PodName, + "query": v.Query, + "query_type": v.QueryType, + "response": "", + "return_code": "", + "workload_kind": v.WorkloadKind, + "workload_name": v.WorkloadName, + } + + err = prom.CheckMetric(metricsEndpoint, dnsAdvRequestCountMetricName, validateAdvanceDNSRequestMetrics) + if err != nil { + return errors.Wrapf(err, "failed to verify advance dns request metrics %s", dnsAdvRequestCountMetricName) + } + log.Printf("found metrics matching %+v\n", dnsAdvRequestCountMetricName) + + return nil +} + +func (v *ValidateAdvanceDNSRequestMetrics) Prevalidate() error { + return nil +} + +func (v *ValidateAdvanceDNSRequestMetrics) Stop() error { + return nil +} + +type ValidateAdvanceDNSResponseMetrics struct { + Namespace string + NumResponse string + PodName string + Query string + QueryType string + Response string + ReturnCode string + WorkloadKind string + WorkloadName string + + KubeConfigFilePath string +} + +func (v *ValidateAdvanceDNSResponseMetrics) Run() error { + metricsEndpoint := fmt.Sprintf("http://localhost:%d/metrics", common.RetinaPort) + // Get Pod IP address + podIP, err := kubernetes.GetPodIP(v.KubeConfigFilePath, v.Namespace, v.PodName) + if err != nil { + return errors.Wrapf(err, "failed to get pod IP address") + } + + if v.Response == EmptyResponse { + v.Response = "" + } + + validateAdvanceDNSResponseMetrics := map[string]string{ + "ip": podIP, + "namespace": v.Namespace, + "num_response": v.NumResponse, + "podname": v.PodName, + "query": v.Query, + "query_type": v.QueryType, + "response": v.Response, + "return_code": v.ReturnCode, + "workload_kind": v.WorkloadKind, + "workload_name": v.WorkloadName, + } + + err = prom.CheckMetric(metricsEndpoint, dnsAdvResponseCountMetricName, validateAdvanceDNSResponseMetrics) + if err != nil { + return errors.Wrapf(err, "failed to verify advance dns response metrics %s", dnsAdvRequestCountMetricName) + } + log.Printf("found metrics matching %+v\n", dnsAdvResponseCountMetricName) + + return nil +} + +func (v *ValidateAdvanceDNSResponseMetrics) Prevalidate() error { + return nil +} + +func (v *ValidateAdvanceDNSResponseMetrics) Stop() error { + return nil +} diff --git a/test/e2e/scenarios/dns/basic.go b/test/e2e/scenarios/dns/basic.go new file mode 100644 index 0000000000..bd8059671f --- /dev/null +++ b/test/e2e/scenarios/dns/basic.go @@ -0,0 +1,91 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. +package dns + +import ( + "fmt" + "log" + + "github.com/microsoft/retina/test/e2e/common" + prom "github.com/microsoft/retina/test/e2e/framework/prometheus" + "github.com/pkg/errors" +) + +var ( + dnsBasicRequestCountMetricName = "networkobservability_dns_request_count" + dnsBasicResponseCountMetricName = "networkobservability_dns_response_count" +) + +type validateBasicDNSRequestMetrics struct { + NumResponse string + Query string + QueryType string +} + +func (v *validateBasicDNSRequestMetrics) Run() error { + metricsEndpoint := fmt.Sprintf("http://localhost:%d/metrics", common.RetinaPort) + + validBasicDNSRequestMetricLabels := map[string]string{ + "num_response": v.NumResponse, + "query": v.Query, + "query_type": v.QueryType, + "return_code": "", + "response": "", + } + + err := prom.CheckMetric(metricsEndpoint, dnsBasicRequestCountMetricName, validBasicDNSRequestMetricLabels) + if err != nil { + return errors.Wrapf(err, "failed to verify basic dns request metrics %s", dnsBasicRequestCountMetricName) + } + log.Printf("found metrics matching %+v\n", dnsBasicRequestCountMetricName) + + return nil +} + +func (v *validateBasicDNSRequestMetrics) Prevalidate() error { + return nil +} + +func (v *validateBasicDNSRequestMetrics) Stop() error { + return nil +} + +type validateBasicDNSResponseMetrics struct { + NumResponse string + Query string + QueryType string + ReturnCode string + Response string +} + +func (v *validateBasicDNSResponseMetrics) Run() error { + metricsEndpoint := fmt.Sprintf("http://localhost:%d/metrics", common.RetinaPort) + + if v.Response == EmptyResponse { + v.Response = "" + } + + validBasicDNSResponseMetricLabels := map[string]string{ + "num_response": v.NumResponse, + "query": v.Query, + "query_type": v.QueryType, + "return_code": v.ReturnCode, + "response": v.Response, + } + + err := prom.CheckMetric(metricsEndpoint, dnsBasicResponseCountMetricName, validBasicDNSResponseMetricLabels) + if err != nil { + return errors.Wrapf(err, "failed to verify basic dns response metrics %s", dnsBasicResponseCountMetricName) + } + log.Printf("found metrics matching %+v\n", dnsBasicResponseCountMetricName) + + return nil +} + +func (v *validateBasicDNSResponseMetrics) Prevalidate() error { + return nil +} + +func (v *validateBasicDNSResponseMetrics) Stop() error { + return nil +} diff --git a/test/e2e/scenarios/dns/scenarios.go b/test/e2e/scenarios/dns/scenarios.go new file mode 100644 index 0000000000..1226e97678 --- /dev/null +++ b/test/e2e/scenarios/dns/scenarios.go @@ -0,0 +1,222 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. +package dns + +import ( + "fmt" + "math/rand" + "strconv" + "time" + + "github.com/microsoft/retina/test/e2e/common" + "github.com/microsoft/retina/test/e2e/framework/kubernetes" + "github.com/microsoft/retina/test/e2e/framework/types" +) + +const ( + sleepDelay = 5 * time.Second + EmptyResponse = "emptyResponse" +) + +type RequestValidationParams struct { + NumResponse string + Query string + QueryType string + + Command string + ExpectError bool +} + +type ResponseValidationParams struct { + NumResponse string + Query string + QueryType string + ReturnCode string + Response string +} + +// ValidateBasicDNSMetrics validates basic DNS metrics present in the metrics endpoint +func ValidateBasicDNSMetrics(scenarioName string, req *RequestValidationParams, resp *ResponseValidationParams) *types.Scenario { + // generate a random ID using rand + id := fmt.Sprintf("basic-dns-port-forward-%d", rand.Int()) // nolint:gosec // fine to use math/rand here + agnhostName := "agnhost-" + id + podName := agnhostName + "-0" + steps := []*types.StepWrapper{ + { + Step: &kubernetes.CreateAgnhostStatefulSet{ + AgnhostName: agnhostName, + AgnhostNamespace: "kube-system", + }, + }, + { + Step: &kubernetes.ExecInPod{ + PodName: podName, + PodNamespace: "kube-system", + Command: req.Command, + }, + Opts: &types.StepOptions{ + ExpectError: req.ExpectError, + SkipSavingParamatersToJob: true, + }, + }, + { + Step: &types.Sleep{ + Duration: sleepDelay, + }, + }, + { + Step: &kubernetes.PortForward{ + Namespace: "kube-system", + LabelSelector: "k8s-app=retina", + LocalPort: strconv.Itoa(common.RetinaPort), + RemotePort: strconv.Itoa(common.RetinaPort), + Endpoint: "metrics", + OptionalLabelAffinity: "app=" + agnhostName, // port forward to a pod on a node that also has this pod with this label, assuming same namespace + }, + Opts: &types.StepOptions{ + SkipSavingParamatersToJob: true, + RunInBackgroundWithID: id, + }, + }, + { + Step: &validateBasicDNSRequestMetrics{ + NumResponse: req.NumResponse, + Query: req.Query, + QueryType: req.QueryType, + }, + Opts: &types.StepOptions{ + SkipSavingParamatersToJob: true, + }, + }, + { + Step: &validateBasicDNSResponseMetrics{ + NumResponse: resp.NumResponse, + Query: resp.Query, + QueryType: resp.QueryType, + ReturnCode: resp.ReturnCode, + Response: resp.Response, + }, + Opts: &types.StepOptions{ + SkipSavingParamatersToJob: true, + }, + }, + { + Step: &types.Stop{ + BackgroundID: id, + }, + }, + { + Step: &kubernetes.DeleteKubernetesResource{ + ResourceType: kubernetes.TypeString(kubernetes.StatefulSet), + ResourceName: agnhostName, + ResourceNamespace: "kube-system", + }, Opts: &types.StepOptions{ + SkipSavingParamatersToJob: true, + }, + }, + { + Step: &types.Sleep{ + Duration: sleepDelay, + }, + }, + } + return types.NewScenario(scenarioName, steps...) +} + +// ValidateAdvancedDNSMetrics validates the advanced DNS metrics present in the metrics endpoint +func ValidateAdvancedDNSMetrics(scenarioName string, req *RequestValidationParams, resp *ResponseValidationParams, kubeConfigFilePath string) *types.Scenario { + // random ID + id := fmt.Sprintf("adv-dns-port-forward-%d", rand.Int()) // nolint:gosec // fine to use math/rand here + agnhostName := "agnhost-" + id + podName := agnhostName + "-0" + steps := []*types.StepWrapper{ + { + Step: &kubernetes.CreateAgnhostStatefulSet{ + AgnhostName: agnhostName, + AgnhostNamespace: "kube-system", + }, + }, + { + Step: &kubernetes.ExecInPod{ + PodName: podName, + PodNamespace: "kube-system", + Command: req.Command, + }, + Opts: &types.StepOptions{ + ExpectError: req.ExpectError, + SkipSavingParamatersToJob: true, + }, + }, + { + Step: &types.Sleep{ + Duration: sleepDelay, + }, + }, + { + Step: &kubernetes.PortForward{ + Namespace: "kube-system", + LabelSelector: "k8s-app=retina", + LocalPort: strconv.Itoa(common.RetinaPort), + RemotePort: strconv.Itoa(common.RetinaPort), + Endpoint: "metrics", + OptionalLabelAffinity: "app=" + agnhostName, // port forward to a pod on a node that also has this pod with this label, assuming same namespace + }, + Opts: &types.StepOptions{ + SkipSavingParamatersToJob: true, + RunInBackgroundWithID: id, + }, + }, + { + Step: &ValidateAdvanceDNSRequestMetrics{ + Namespace: "kube-system", + NumResponse: req.NumResponse, + PodName: podName, + Query: req.Query, + QueryType: req.QueryType, + WorkloadKind: "StatefulSet", + WorkloadName: agnhostName, + KubeConfigFilePath: kubeConfigFilePath, + }, + Opts: &types.StepOptions{ + SkipSavingParamatersToJob: true, + }, + }, + { + Step: &ValidateAdvanceDNSResponseMetrics{ + Namespace: "kube-system", + NumResponse: resp.NumResponse, + PodName: podName, + Query: resp.Query, + QueryType: resp.QueryType, + Response: resp.Response, + ReturnCode: resp.ReturnCode, + WorkloadKind: "StatefulSet", + WorkloadName: agnhostName, + KubeConfigFilePath: kubeConfigFilePath, + }, + Opts: &types.StepOptions{ + SkipSavingParamatersToJob: true, + }, + }, + { + Step: &types.Stop{ + BackgroundID: id, + }, + }, + { + Step: &kubernetes.DeleteKubernetesResource{ + ResourceType: kubernetes.TypeString(kubernetes.StatefulSet), + ResourceName: agnhostName, + ResourceNamespace: "kube-system", + }, Opts: &types.StepOptions{ + SkipSavingParamatersToJob: true, + }, + }, + { + Step: &types.Sleep{ + Duration: sleepDelay, + }, + }, + } + return types.NewScenario(scenarioName, steps...) +} diff --git a/test/e2e/scenarios/retina/drop/scenario.go b/test/e2e/scenarios/drop/scenario.go similarity index 98% rename from test/e2e/scenarios/retina/drop/scenario.go rename to test/e2e/scenarios/drop/scenario.go index 68340b91d9..cbd710661b 100644 --- a/test/e2e/scenarios/retina/drop/scenario.go +++ b/test/e2e/scenarios/drop/scenario.go @@ -63,6 +63,7 @@ func ValidateDropMetric() *types.Scenario { LabelSelector: "k8s-app=retina", LocalPort: "10093", RemotePort: "10093", + Endpoint: "metrics", OptionalLabelAffinity: "app=agnhost-a", // port forward to a pod on a node that also has this pod with this label, assuming same namespace }, Opts: &types.StepOptions{ diff --git a/test/e2e/scenarios/retina/drop/validate-drop-metric.go b/test/e2e/scenarios/drop/validate-drop-metric.go similarity index 100% rename from test/e2e/scenarios/retina/drop/validate-drop-metric.go rename to test/e2e/scenarios/drop/validate-drop-metric.go diff --git a/test/e2e/scenarios/retina/retina_scenarios_test.go b/test/e2e/scenarios/retina/retina_scenarios_test.go deleted file mode 100644 index 86aed66718..0000000000 --- a/test/e2e/scenarios/retina/retina_scenarios_test.go +++ /dev/null @@ -1,86 +0,0 @@ -package retina - -import ( - "os" - "os/user" - "strconv" - "testing" - "time" - - "github.com/microsoft/retina/test/e2e/framework/azure" - "github.com/microsoft/retina/test/e2e/framework/generic" - "github.com/microsoft/retina/test/e2e/framework/kubernetes" - "github.com/microsoft/retina/test/e2e/framework/types" - "github.com/microsoft/retina/test/e2e/scenarios/retina/drop" - tcp "github.com/microsoft/retina/test/e2e/scenarios/retina/tcp" -) - -const ( - // netObsRGtag is used to tag resources created by this test suite - netObsRGtag = "-e2e-netobs-" -) - -// Test against AKS cluster with NPM enabled, -// create a pod with a deny all network policy and validate -// that the drop metrics are present in the prometheus endpoint -func TestE2ERetinaMetrics(t *testing.T) { - job := types.NewJob("Validate that drop metrics are present in the prometheus endpoint") - runner := types.NewRunner(t, job) - defer runner.Run() - - curuser, _ := user.Current() - - testName := curuser.Username + netObsRGtag + strconv.FormatInt(time.Now().Unix(), 10) - sub := os.Getenv("AZURE_SUBSCRIPTION_ID") - loc := os.Getenv("AZURE_LOCATION") - if loc == "" { - loc = "eastus" - } - - job.AddStep(&azure.CreateResourceGroup{ - SubscriptionID: sub, - ResourceGroupName: testName, - Location: loc, - }, nil) - - job.AddStep(&azure.CreateVNet{ - VnetName: "testvnet", - VnetAddressSpace: "10.0.0.0/9", - }, nil) - - job.AddStep(&azure.CreateSubnet{ - SubnetName: "testsubnet", - SubnetAddressSpace: "10.0.0.0/12", - }, nil) - - job.AddStep(&azure.CreateNPMCluster{ - ClusterName: testName, - PodCidr: "10.128.0.0/9", - DNSServiceIP: "192.168.0.10", - ServiceCidr: "192.168.0.0/28", - }, nil) - - job.AddStep(&azure.GetAKSKubeConfig{ - KubeConfigFilePath: "./test.pem", - }, nil) - - job.AddStep(&generic.LoadFlags{ - TagEnv: generic.DefaultTagEnv, - ImageNamespaceEnv: generic.DefaultImageNamespace, - ImageRegistryEnv: generic.DefaultImageRegistry, - }, nil) - - // todo: enable mutating images in helm chart - job.AddStep(&kubernetes.InstallHelmChart{ - Namespace: "kube-system", - ReleaseName: "retina", - ChartPath: "../../../../deploy/manifests/controller/helm/retina/", - }, nil) - - job.AddScenario(drop.ValidateDropMetric()) - - // todo: handle multiple scenarios back to back - job.AddScenario(tcp.ValidateTCPMetrics()) - - job.AddStep(&azure.DeleteResourceGroup{}, nil) -} diff --git a/test/e2e/scenarios/retina/tcp/scenario.go b/test/e2e/scenarios/tcp/scenario.go similarity index 76% rename from test/e2e/scenarios/retina/tcp/scenario.go rename to test/e2e/scenarios/tcp/scenario.go index 5913fed027..f4759e7753 100644 --- a/test/e2e/scenarios/retina/tcp/scenario.go +++ b/test/e2e/scenarios/tcp/scenario.go @@ -3,7 +3,7 @@ package flow import ( "time" - k8s "github.com/microsoft/retina/test/e2e/framework/kubernetes" + "github.com/microsoft/retina/test/e2e/framework/kubernetes" "github.com/microsoft/retina/test/e2e/framework/types" ) @@ -19,19 +19,19 @@ func ValidateTCPMetrics() *types.Scenario { Name := "Flow Metrics" Steps := []*types.StepWrapper{ { - Step: &k8s.CreateKapingerDeployment{ + Step: &kubernetes.CreateKapingerDeployment{ KapingerNamespace: "kube-system", KapingerReplicas: "1", }, }, { - Step: &k8s.CreateAgnhostStatefulSet{ + Step: &kubernetes.CreateAgnhostStatefulSet{ AgnhostName: "agnhost-a", AgnhostNamespace: "kube-system", }, }, { - Step: &k8s.ExecInPod{ + Step: &kubernetes.ExecInPod{ PodName: "agnhost-a-0", PodNamespace: "kube-system", Command: "curl -s -m 5 bing.com", @@ -45,7 +45,7 @@ func ValidateTCPMetrics() *types.Scenario { }, }, { - Step: &k8s.ExecInPod{ + Step: &kubernetes.ExecInPod{ PodName: "agnhost-a-0", PodNamespace: "kube-system", Command: "curl -s -m 5 bing.com", @@ -54,11 +54,12 @@ func ValidateTCPMetrics() *types.Scenario { }, }, { - Step: &k8s.PortForward{ + Step: &kubernetes.PortForward{ LabelSelector: "k8s-app=retina", Namespace: "kube-system", LocalPort: "10093", RemotePort: "10093", + Endpoint: "metrics", OptionalLabelAffinity: "app=agnhost-a", // port forward to a pod on a node that also has this pod with this label, assuming same namespace }, Opts: &types.StepOptions{ @@ -85,6 +86,15 @@ func ValidateTCPMetrics() *types.Scenario { BackgroundID: "drop-flow-forward", }, }, + { + Step: &kubernetes.DeleteKubernetesResource{ + ResourceType: kubernetes.TypeString(kubernetes.StatefulSet), + ResourceName: "agnhost-a", + ResourceNamespace: "kube-system", + }, Opts: &types.StepOptions{ + SkipSavingParamatersToJob: true, + }, + }, } return types.NewScenario(Name, Steps...) diff --git a/test/e2e/scenarios/retina/tcp/validate-flow-metric.go b/test/e2e/scenarios/tcp/validate-flow-metric.go similarity index 100% rename from test/e2e/scenarios/retina/tcp/validate-flow-metric.go rename to test/e2e/scenarios/tcp/validate-flow-metric.go diff --git a/test/e2e/scenarios/retina/tcp/validate-tcp-connection-remote.go b/test/e2e/scenarios/tcp/validate-tcp-connection-remote.go similarity index 100% rename from test/e2e/scenarios/retina/tcp/validate-tcp-connection-remote.go rename to test/e2e/scenarios/tcp/validate-tcp-connection-remote.go diff --git a/test/profiles/advanced/values.yaml b/test/profiles/advanced/values.yaml index 60785021fe..6025ce3539 100644 --- a/test/profiles/advanced/values.yaml +++ b/test/profiles/advanced/values.yaml @@ -1,6 +1,5 @@ enablePodLevel: true -remoteContext: true -logLevel: info +enableAnnotations: true operator: enabled: true -enabledPlugin_linux: '["dropreason","packetforward","packetparser"]' + enableRetinaEndpoint: true From 78bb2390a81b09ff7b5edd752730abf112cef970 Mon Sep 17 00:00:00 2001 From: Quang Nguyen Date: Thu, 30 May 2024 14:25:41 -0400 Subject: [PATCH 15/15] chore: bump various k8s.io components' version (#308) # Description Dependabot is having issues with bumping multiple k8s.io components' version due to dependency issues. This PR consolidated all version bumps. ## Related Issue If this pull request is related to any issue, please mention it here. Additionally, make sure that the issue is assigned to you before submitting this pull request. ## Checklist - [ ] I have read the [contributing documentation](https://retina.sh/docs/contributing). - [ ] I signed and signed-off the commits (`git commit -S -s ...`). See [this documentation](https://docs.github.com/en/authentication/managing-commit-signature-verification/about-commit-signature-verification) on signing commits. - [ ] I have correctly attributed the author(s) of the code. - [ ] I have tested the changes locally. - [ ] I have followed the project's style guidelines. - [ ] I have updated the documentation, if necessary. - [ ] I have added tests, if applicable. ## Screenshots (if applicable) or Testing Completed Please add any relevant screenshots or GIFs to showcase the changes made. ## Additional Notes Add any additional notes or context about the pull request here. --- Please refer to the [CONTRIBUTING.md](../CONTRIBUTING.md) file for more information on how to contribute to this project. --- controller/main.go | 12 ++-- .../helm/retina/crds/retina.sh_captures.yaml | 6 ++ .../crds/retina.sh_tracesconfigurations.yaml | 32 ++++++++++ go.mod | 33 +++++----- go.sum | 64 ++++++++----------- operator/main.go | 8 ++- .../daemon/retinaendpoint/suite_test.go | 7 +- .../retinaendpoint_controller.go | 8 +-- .../retinaendpoint_controller_test.go | 7 ++ test/image/Dockerfile | 2 +- 10 files changed, 110 insertions(+), 69 deletions(-) diff --git a/controller/main.go b/controller/main.go index d78e1a1d67..3435a3a4ac 100644 --- a/controller/main.go +++ b/controller/main.go @@ -22,6 +22,7 @@ import ( kcfg "sigs.k8s.io/controller-runtime/pkg/client/config" "sigs.k8s.io/controller-runtime/pkg/healthz" crmgr "sigs.k8s.io/controller-runtime/pkg/manager" + metricsserver "sigs.k8s.io/controller-runtime/pkg/metrics/server" retinav1alpha1 "github.com/microsoft/retina/crd/api/v1alpha1" "github.com/microsoft/retina/pkg/config" @@ -141,9 +142,10 @@ func main() { // Create a manager for controller-runtime mgrOption := crmgr.Options{ - Scheme: scheme, - MetricsBindAddress: metricsAddr, - // Port: 9443, // retina-agent is host-networked, we don't want to abuse the port for conflicts. + Scheme: scheme, + Metrics: metricsserver.Options{ + BindAddress: metricsAddr, + }, HealthProbeBindAddress: probeAddr, LeaderElection: enableLeaderElection, LeaderElectionID: "ecaf1259.retina.sh", @@ -175,13 +177,13 @@ func main() { podSelector := fields.AndSelectors(podNodeNameSelector, podNodeIPNotMatchSelector) mainLogger.Info("pod selector when remote context is disabled", zap.String("pod selector", podSelector.String())) - mgrOption.NewCache = crcache.BuilderWithOptions(crcache.Options{ + mgrOption.Cache = crcache.Options{ ByObject: map[client.Object]crcache.ByObject{ &corev1.Pod{}: { Field: podSelector, }, }, - }) + } } mgr, err := crmgr.New(cfg, mgrOption) diff --git a/deploy/manifests/controller/helm/retina/crds/retina.sh_captures.yaml b/deploy/manifests/controller/helm/retina/crds/retina.sh_captures.yaml index 7c60b9e732..4227c611fb 100644 --- a/deploy/manifests/controller/helm/retina/crds/retina.sh_captures.yaml +++ b/deploy/manifests/controller/helm/retina/crds/retina.sh_captures.yaml @@ -99,11 +99,13 @@ spec: items: type: string type: array + x-kubernetes-list-type: atomic required: - key - operator type: object type: array + x-kubernetes-list-type: atomic matchLabels: additionalProperties: type: string @@ -146,11 +148,13 @@ spec: items: type: string type: array + x-kubernetes-list-type: atomic required: - key - operator type: object type: array + x-kubernetes-list-type: atomic matchLabels: additionalProperties: type: string @@ -192,11 +196,13 @@ spec: items: type: string type: array + x-kubernetes-list-type: atomic required: - key - operator type: object type: array + x-kubernetes-list-type: atomic matchLabels: additionalProperties: type: string diff --git a/deploy/manifests/controller/helm/retina/crds/retina.sh_tracesconfigurations.yaml b/deploy/manifests/controller/helm/retina/crds/retina.sh_tracesconfigurations.yaml index 001717f8d7..a14f00316e 100644 --- a/deploy/manifests/controller/helm/retina/crds/retina.sh_tracesconfigurations.yaml +++ b/deploy/manifests/controller/helm/retina/crds/retina.sh_tracesconfigurations.yaml @@ -119,11 +119,13 @@ spec: items: type: string type: array + x-kubernetes-list-type: atomic required: - key - operator type: object type: array + x-kubernetes-list-type: atomic matchLabels: additionalProperties: type: string @@ -167,11 +169,13 @@ spec: items: type: string type: array + x-kubernetes-list-type: atomic required: - key - operator type: object type: array + x-kubernetes-list-type: atomic matchLabels: additionalProperties: type: string @@ -215,11 +219,13 @@ spec: items: type: string type: array + x-kubernetes-list-type: atomic required: - key - operator type: object type: array + x-kubernetes-list-type: atomic matchLabels: additionalProperties: type: string @@ -263,11 +269,13 @@ spec: items: type: string type: array + x-kubernetes-list-type: atomic required: - key - operator type: object type: array + x-kubernetes-list-type: atomic matchLabels: additionalProperties: type: string @@ -340,11 +348,13 @@ spec: items: type: string type: array + x-kubernetes-list-type: atomic required: - key - operator type: object type: array + x-kubernetes-list-type: atomic matchLabels: additionalProperties: type: string @@ -388,11 +398,13 @@ spec: items: type: string type: array + x-kubernetes-list-type: atomic required: - key - operator type: object type: array + x-kubernetes-list-type: atomic matchLabels: additionalProperties: type: string @@ -436,11 +448,13 @@ spec: items: type: string type: array + x-kubernetes-list-type: atomic required: - key - operator type: object type: array + x-kubernetes-list-type: atomic matchLabels: additionalProperties: type: string @@ -484,11 +498,13 @@ spec: items: type: string type: array + x-kubernetes-list-type: atomic required: - key - operator type: object type: array + x-kubernetes-list-type: atomic matchLabels: additionalProperties: type: string @@ -598,11 +614,13 @@ spec: items: type: string type: array + x-kubernetes-list-type: atomic required: - key - operator type: object type: array + x-kubernetes-list-type: atomic matchLabels: additionalProperties: type: string @@ -646,11 +664,13 @@ spec: items: type: string type: array + x-kubernetes-list-type: atomic required: - key - operator type: object type: array + x-kubernetes-list-type: atomic matchLabels: additionalProperties: type: string @@ -694,11 +714,13 @@ spec: items: type: string type: array + x-kubernetes-list-type: atomic required: - key - operator type: object type: array + x-kubernetes-list-type: atomic matchLabels: additionalProperties: type: string @@ -742,11 +764,13 @@ spec: items: type: string type: array + x-kubernetes-list-type: atomic required: - key - operator type: object type: array + x-kubernetes-list-type: atomic matchLabels: additionalProperties: type: string @@ -819,11 +843,13 @@ spec: items: type: string type: array + x-kubernetes-list-type: atomic required: - key - operator type: object type: array + x-kubernetes-list-type: atomic matchLabels: additionalProperties: type: string @@ -867,11 +893,13 @@ spec: items: type: string type: array + x-kubernetes-list-type: atomic required: - key - operator type: object type: array + x-kubernetes-list-type: atomic matchLabels: additionalProperties: type: string @@ -915,11 +943,13 @@ spec: items: type: string type: array + x-kubernetes-list-type: atomic required: - key - operator type: object type: array + x-kubernetes-list-type: atomic matchLabels: additionalProperties: type: string @@ -963,11 +993,13 @@ spec: items: type: string type: array + x-kubernetes-list-type: atomic required: - key - operator type: object type: array + x-kubernetes-list-type: atomic matchLabels: additionalProperties: type: string diff --git a/go.mod b/go.mod index 98220c26fa..038bd77b7f 100644 --- a/go.mod +++ b/go.mod @@ -1,6 +1,6 @@ module github.com/microsoft/retina -go 1.22 +go 1.22.3 require ( github.com/go-chi/chi/v5 v5.0.11 @@ -8,7 +8,7 @@ require ( github.com/prometheus/client_golang v1.19.1 github.com/spf13/cobra v1.8.0 go.uber.org/zap v1.26.0 - k8s.io/client-go v0.29.4 + k8s.io/client-go v0.30.1 ) require ( @@ -77,7 +77,7 @@ require ( github.com/emicklei/go-restful/v3 v3.11.2 // indirect github.com/envoyproxy/protoc-gen-validate v1.0.4 // indirect github.com/evanphx/json-patch v5.7.0+incompatible // indirect - github.com/evanphx/json-patch/v5 v5.7.0 // indirect + github.com/evanphx/json-patch/v5 v5.9.0 // indirect github.com/exponent-io/jsonpath v0.0.0-20151013193312-d6023ce2651d // indirect github.com/fatih/color v1.16.0 // indirect github.com/felixge/httpsnoop v1.0.4 // indirect @@ -85,7 +85,7 @@ require ( github.com/go-errors/errors v1.4.2 // indirect github.com/go-gorp/gorp/v3 v3.1.0 // indirect github.com/go-logr/stdr v1.2.2 // indirect - github.com/go-logr/zapr v1.2.3 // indirect + github.com/go-logr/zapr v1.3.0 // indirect github.com/go-ole/go-ole v1.2.6 // indirect github.com/go-openapi/analysis v0.21.4 // indirect github.com/go-openapi/errors v0.20.4 // indirect @@ -219,9 +219,9 @@ require ( google.golang.org/grpc v1.62.1 // indirect gopkg.in/inf.v0 v0.9.1 // indirect gopkg.in/ini.v1 v1.67.0 // indirect - k8s.io/apiserver v0.29.4 // indirect - k8s.io/component-base v0.29.4 // indirect - k8s.io/cri-api v0.29.3 // indirect + k8s.io/apiserver v0.30.1 // indirect + k8s.io/component-base v0.30.1 // indirect + k8s.io/cri-api v0.30.1 // indirect oras.land/oras-go v1.2.5 // indirect sigs.k8s.io/kustomize/api v0.14.0 // indirect sigs.k8s.io/kustomize/kyaml v0.14.3 // indirect @@ -250,10 +250,10 @@ require ( google.golang.org/protobuf v1.34.1 gopkg.in/yaml.v2 v2.4.0 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect - k8s.io/api v0.29.4 - k8s.io/apimachinery v0.29.4 - k8s.io/klog/v2 v2.120.0 // indirect - k8s.io/kube-openapi v0.0.0-20240105020646-a37d4de58910 // indirect + k8s.io/api v0.30.1 + k8s.io/apimachinery v0.30.1 + k8s.io/klog/v2 v2.120.1 // indirect + k8s.io/kube-openapi v0.0.0-20240228011516-70dd3763d340 // indirect k8s.io/utils v0.0.0-20240102154912-e7106e64919e sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd // indirect sigs.k8s.io/structured-merge-diff/v4 v4.4.1 // indirect @@ -302,13 +302,10 @@ require ( gotest.tools v2.2.0+incompatible gotest.tools/v3 v3.5.1 helm.sh/helm/v3 v3.14.4 - k8s.io/apiextensions-apiserver v0.29.4 - k8s.io/cli-runtime v0.29.4 - k8s.io/kubectl v0.29.4 - sigs.k8s.io/controller-runtime v0.16.3 + k8s.io/apiextensions-apiserver v0.30.1 + k8s.io/cli-runtime v0.30.1 + k8s.io/kubectl v0.30.1 + sigs.k8s.io/controller-runtime v0.18.3 ) -// Required for inspektor-gadget DNS gadget. -replace sigs.k8s.io/controller-runtime => sigs.k8s.io/controller-runtime v0.13.1-0.20230315234915-a26de2d610c3 - replace github.com/vishvananda/netns => github.com/inspektor-gadget/netns v0.0.5-0.20230524185006-155d84c555d6 diff --git a/go.sum b/go.sum index 5a033152f8..4f92cfc15d 100644 --- a/go.sum +++ b/go.sum @@ -130,7 +130,6 @@ github.com/aws/aws-sdk-go-v2/service/sts v1.28.10 h1:69tpbPED7jKPyzMcrwSvhWcJ9bP github.com/aws/aws-sdk-go-v2/service/sts v1.28.10/go.mod h1:0Aqn1MnEuitqfsCNyKsdKLhDUOr4txD/g19EfiUqgws= github.com/aws/smithy-go v1.20.2 h1:tbp628ireGtzcHDDmLT/6ADHidqnwgF57XOXZe6tp4Q= github.com/aws/smithy-go v1.20.2/go.mod h1:krry+ya/rV9RDcV/Q16kpu6ypI4K2czasz0NC3qS14E= -github.com/benbjohnson/clock v1.1.0/go.mod h1:J11/hYXuz8f4ySSvYwY0FKfm+ezbsZBKZxNJlLklBHA= github.com/beorn7/perks v0.0.0-20180321164747-3a771d992973/go.mod h1:Dwedo/Wpr24TaqPxmxbtue+5NUziq4I4S80YR8gNf3Q= github.com/beorn7/perks v1.0.0/go.mod h1:KWe93zE9D1o94FZ5RNwFwVgaQK1VOXiVxmqh+CedLV8= github.com/beorn7/perks v1.0.1 h1:VlbKKnNfV8bJzeqoa4cOKqO6bYr3WgKZxO8Z16+hsOM= @@ -242,8 +241,8 @@ github.com/envoyproxy/protoc-gen-validate v1.0.4 h1:gVPz/FMfvh57HdSJQyvBtF00j8JU github.com/envoyproxy/protoc-gen-validate v1.0.4/go.mod h1:qys6tmnRsYrQqIhm2bvKZH4Blx/1gTIZ2UKVY1M+Yew= github.com/evanphx/json-patch v5.7.0+incompatible h1:vgGkfT/9f8zE6tvSCe74nfpAVDQ2tG6yudJd8LBksgI= github.com/evanphx/json-patch v5.7.0+incompatible/go.mod h1:50XU6AFN0ol/bzJsmQLiYLvXMP4fmwYFNcr97nuDLSk= -github.com/evanphx/json-patch/v5 v5.7.0 h1:nJqP7uwL84RJInrohHfW0Fx3awjbm8qZeFv0nW9SYGc= -github.com/evanphx/json-patch/v5 v5.7.0/go.mod h1:VNkHZ/282BpEyt/tObQO8s5CMPmYYq14uClGH4abBuQ= +github.com/evanphx/json-patch/v5 v5.9.0 h1:kcBlZQbplgElYIlo/n1hJbls2z/1awpXxpRi0/FOJfg= +github.com/evanphx/json-patch/v5 v5.9.0/go.mod h1:VNkHZ/282BpEyt/tObQO8s5CMPmYYq14uClGH4abBuQ= github.com/exponent-io/jsonpath v0.0.0-20151013193312-d6023ce2651d h1:105gxyaGwCFad8crR9dcMQWvV9Hvulu6hwUh4tWPJnM= github.com/exponent-io/jsonpath v0.0.0-20151013193312-d6023ce2651d/go.mod h1:ZZMPRZwes7CROmyNKgQzC3XPs6L/G2EJLHddWejkmf4= github.com/fatih/color v1.7.0/go.mod h1:Zm6kSWBoL9eyXnKyktHP6abPY2pDugNf5KwzbycvMj4= @@ -281,8 +280,8 @@ github.com/go-logr/logr v1.4.1 h1:pKouT5E8xu9zeFC39JXRDukb6JFQPXM5p5I91188VAQ= github.com/go-logr/logr v1.4.1/go.mod h1:9T104GzyrTigFIr8wt5mBrctHMim0Nb2HLGrmQ40KvY= github.com/go-logr/stdr v1.2.2 h1:hSWxHoqTgW2S2qGc0LTAI563KZ5YKYRhT3MFKZMbjag= github.com/go-logr/stdr v1.2.2/go.mod h1:mMo/vtBO5dYbehREoey6XUKy/eSumjCCveDpRre4VKE= -github.com/go-logr/zapr v1.2.3 h1:a9vnzlIBPQBBkeaR9IuMUfmVOrQlkoC4YfPoFkX3T7A= -github.com/go-logr/zapr v1.2.3/go.mod h1:eIauM6P8qSvTw5o2ez6UEAfGjQKrxQTl5EoK+Qa2oG4= +github.com/go-logr/zapr v1.3.0 h1:XGdV8XW8zdwFiwOA2Dryh1gj2KRQyOOoNmBy4EplIcQ= +github.com/go-logr/zapr v1.3.0/go.mod h1:YKepepNBd1u/oyhd/yQmtjVXmm9uML4IXUgMOwR8/Gg= github.com/go-ole/go-ole v1.2.6 h1:/Fpf6oFPoeFik9ty7siob0G6Ke8QvQEuVcuChpwXzpY= github.com/go-ole/go-ole v1.2.6/go.mod h1:pprOEPIfldk/42T2oK7lQ4v4JSDwmV0As9GaiUsvbm0= github.com/go-openapi/analysis v0.21.4 h1:ZDFLvSNxpDaomuCueM0BlSXxpANBlFYiBvr+GXrvIHc= @@ -848,18 +847,14 @@ go.opentelemetry.io/proto/otlp v1.0.0 h1:T0TX0tmXU8a3CbNXzEKGeU5mIVOdf0oykP+u2lI go.opentelemetry.io/proto/otlp v1.0.0/go.mod h1:Sy6pihPLfYHkr3NkUbEhGHFhINUSI/v80hjKIs5JXpM= go.starlark.net v0.0.0-20230814145427-12f4cb8177e4 h1:Ydko8M6UfXgvSpGOnbAjRMQDIvBheUsjBjkm6Azcpf4= go.starlark.net v0.0.0-20230814145427-12f4cb8177e4/go.mod h1:jxU+3+j+71eXOW14274+SmmuW82qJzl6iZSeqEtTGds= -go.uber.org/atomic v1.7.0/go.mod h1:fEN4uk6kAWBTFdckzkM89CLk9XfWZrxpCo0nPH17wJc= go.uber.org/dig v1.17.1 h1:Tga8Lz8PcYNsWsyHMZ1Vm0OQOUaJNDyvPImgbAu9YSc= go.uber.org/dig v1.17.1/go.mod h1:Us0rSJiThwCv2GteUN0Q7OKvU7n5J4dxZ9JKUXozFdE= -go.uber.org/goleak v1.1.10/go.mod h1:8a7PlsEVH3e/a/GLqe5IIrQx6GzcnRmZEufDUTk4A7A= go.uber.org/goleak v1.3.0 h1:2K3zAYmnTNqV73imy9J1T3WC+gmCePx2hEGkimedGto= go.uber.org/goleak v1.3.0/go.mod h1:CoHD4mav9JJNrW/WLlf7HGZPjdw8EucARQHekz1X6bE= go.uber.org/mock v0.4.0 h1:VcM4ZOtdbR4f6VXfiOpwpVJDL6lCReaZ6mw31wqh7KU= go.uber.org/mock v0.4.0/go.mod h1:a6FSlNadKUHUa9IP5Vyt1zh4fC7uAwxMutEAscFbkZc= -go.uber.org/multierr v1.6.0/go.mod h1:cdWPpRnG4AhwMwsgIHip0KRBQjJy5kYEpYjJxpXp9iU= go.uber.org/multierr v1.11.0 h1:blXXJkSxSSfBVBlC76pxqeO+LN3aDfLQo+309xJstO0= go.uber.org/multierr v1.11.0/go.mod h1:20+QtiLqy0Nd6FdQB9TLXag12DsQkrbs3htMFfDN80Y= -go.uber.org/zap v1.19.0/go.mod h1:xg/QME4nWcxGxrpdeYfq7UvYrLh66cuVKdrbD1XF/NI= go.uber.org/zap v1.26.0 h1:sI7k6L95XOKS281NhVKOFCUNIvv9e0w4BF8N3u+tCRo= go.uber.org/zap v1.26.0/go.mod h1:dtElttAiwGvoJ/vj4IwHBS/gXsEu/pZ50mUIRWuG0so= go4.org/netipx v0.0.0-20231129151722-fdeea329fbba h1:0b9z3AuHCjxk0x/opv64kcgZLBseWJUpBw5I82+2U4M= @@ -882,7 +877,6 @@ golang.org/x/exp v0.0.0-20240222234643-814bf88cf225/go.mod h1:CxmFvTBINI24O/j8iY golang.org/x/lint v0.0.0-20181026193005-c67002cb31c3/go.mod h1:UVdnD1Gm6xHRNCYTkRU2/jEulfH38KcIWyp/GAMgvoE= golang.org/x/lint v0.0.0-20190227174305-5b3e6a55c961/go.mod h1:wehouNa3lNwaWXcvxsM5YxQ5yQlVC4a0KAMCusXpPoU= golang.org/x/lint v0.0.0-20190313153728-d0100b6bd8b3/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc= -golang.org/x/lint v0.0.0-20190930215403-16217165b5de/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc= golang.org/x/lint v0.0.0-20200302205851-738671d3881b/go.mod h1:3xt1FjdF8hUf6vQPIChWIBhFzV8gjjsPE/fR3IyQdNY= golang.org/x/mod v0.1.1-0.20191105210325-c90efee705ee/go.mod h1:QqPTAvyqsEbceGzBzNggFXnrqF1CaUcvgkdR5Ot7KZg= golang.org/x/mod v0.2.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= @@ -1018,7 +1012,6 @@ golang.org/x/tools v0.0.0-20190226205152-f727befe758c/go.mod h1:9Yl7xja0Znq3iFh3 golang.org/x/tools v0.0.0-20190311212946-11955173bddd/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= golang.org/x/tools v0.0.0-20190524140312-2c0ae7006135/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q= golang.org/x/tools v0.0.0-20190907020128-2ca718005c18/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= -golang.org/x/tools v0.0.0-20191108193012-7d206e10da11/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.0.0-20200130002326-2f3ba24bd6e7/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= golang.org/x/tools v0.0.0-20200619180055-7c47624df98f/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= @@ -1093,7 +1086,6 @@ gopkg.in/yaml.v2 v2.4.0/go.mod h1:RDklbk79AGWmwhnvt/jBztapEOGDOx6ZbXqjP6csGnQ= gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= gopkg.in/yaml.v3 v3.0.0-20200605160147-a5ece683394c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= gopkg.in/yaml.v3 v3.0.0-20200615113413-eeeca48fe776/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= -gopkg.in/yaml.v3 v3.0.0-20210107192922-496545a6307b/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= gotest.tools v2.2.0+incompatible h1:VsBPFP1AI068pPrMxtb/S8Zkgf9xEmTLJjfM+P5UIEo= @@ -1104,34 +1096,34 @@ helm.sh/helm/v3 v3.14.4 h1:6FSpEfqyDalHq3kUr4gOMThhgY55kXUEjdQoyODYnrM= helm.sh/helm/v3 v3.14.4/go.mod h1:Tje7LL4gprZpuBNTbG34d1Xn5NmRT3OWfBRwpOSer9I= honnef.co/go/tools v0.0.0-20190102054323-c2f93a96b099/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= honnef.co/go/tools v0.0.0-20190523083050-ea95bdfd59fc/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= -k8s.io/api v0.29.4 h1:WEnF/XdxuCxdG3ayHNRR8yH3cI1B/llkWBma6bq4R3w= -k8s.io/api v0.29.4/go.mod h1:DetSv0t4FBTcEpfA84NJV3g9a7+rSzlUHk5ADAYHUv0= -k8s.io/apiextensions-apiserver v0.29.4 h1:M7hbuHU/ckbibR7yPbe6DyNWgTFKNmZDbdZKD8q1Smk= -k8s.io/apiextensions-apiserver v0.29.4/go.mod h1:TTDC9fB+0kHY2rogf5hgBR03KBKCwED+GHUsXGpR7SM= -k8s.io/apimachinery v0.29.4 h1:RaFdJiDmuKs/8cm1M6Dh1Kvyh59YQFDcFuFTSmXes6Q= -k8s.io/apimachinery v0.29.4/go.mod h1:i3FJVwhvSp/6n8Fl4K97PJEP8C+MM+aoDq4+ZJBf70Y= -k8s.io/apiserver v0.29.4 h1:wPwGOO58GQOpRiZu59P5eRoDcB7QtV+QBglkRiXwCiM= -k8s.io/apiserver v0.29.4/go.mod h1:VqTF9t98HVfhKZVRohCPezsdUt9u2g3bHKftxGcXoRo= -k8s.io/cli-runtime v0.29.4 h1:QvUrddBxVX6XFJ6z64cGpEk7e4bQduKweqbqq+qBd9g= -k8s.io/cli-runtime v0.29.4/go.mod h1:NmklYuZ4DLfOr2XEIT8Nzl883KMZUCv7KMj3wMHayCA= -k8s.io/client-go v0.29.4 h1:79ytIedxVfyXV8rpH3jCBW0u+un0fxHDwX5F9K8dPR8= -k8s.io/client-go v0.29.4/go.mod h1:kC1thZQ4zQWYwldsfI088BbK6RkxK+aF5ebV8y9Q4tk= -k8s.io/component-base v0.29.4 h1:xeKzuuHI/1tjleu5jycDAcYbhAxeGHCQBZUY2eRIkOo= -k8s.io/component-base v0.29.4/go.mod h1:pYjt+oEZP9gtmwSikwAJgfSBikqKX2gOqRat0QjmQt0= -k8s.io/cri-api v0.29.3 h1:ppKSui+hhTJW774Mou6x+/ealmzt2jmTM0vsEQVWrjI= -k8s.io/cri-api v0.29.3/go.mod h1:3X7EnhsNaQnCweGhQCJwKNHlH7wHEYuKQ19bRvXMoJY= -k8s.io/klog/v2 v2.120.0 h1:z+q5mfovBj1fKFxiRzsa2DsJLPIVMk/KFL81LMOfK+8= -k8s.io/klog/v2 v2.120.0/go.mod h1:3Jpz1GvMt720eyJH1ckRHK1EDfpxISzJ7I9OYgaDtPE= -k8s.io/kube-openapi v0.0.0-20240105020646-a37d4de58910 h1:1Rp/XEKP5uxPs6QrsngEHAxBjaAR78iJRiJq5Fi7LSU= -k8s.io/kube-openapi v0.0.0-20240105020646-a37d4de58910/go.mod h1:Pa1PvrP7ACSkuX6I7KYomY6cmMA0Tx86waBhDUgoKPw= -k8s.io/kubectl v0.29.4 h1:2LFrAznoDZjN8JFMSUcuhER5o+yjTLzWWbOiDzVjmd8= -k8s.io/kubectl v0.29.4/go.mod h1:YTKRF9y1/ccqZ2bnpOWaJD8V7johKqZR/qOMq+0pfxU= +k8s.io/api v0.30.1 h1:kCm/6mADMdbAxmIh0LBjS54nQBE+U4KmbCfIkF5CpJY= +k8s.io/api v0.30.1/go.mod h1:ddbN2C0+0DIiPntan/bye3SW3PdwLa11/0yqwvuRrJM= +k8s.io/apiextensions-apiserver v0.30.1 h1:4fAJZ9985BmpJG6PkoxVRpXv9vmPUOVzl614xarePws= +k8s.io/apiextensions-apiserver v0.30.1/go.mod h1:R4GuSrlhgq43oRY9sF2IToFh7PVlF1JjfWdoG3pixk4= +k8s.io/apimachinery v0.30.1 h1:ZQStsEfo4n65yAdlGTfP/uSHMQSoYzU/oeEbkmF7P2U= +k8s.io/apimachinery v0.30.1/go.mod h1:iexa2somDaxdnj7bha06bhb43Zpa6eWH8N8dbqVjTUc= +k8s.io/apiserver v0.30.1 h1:BEWEe8bzS12nMtDKXzCF5Q5ovp6LjjYkSp8qOPk8LZ8= +k8s.io/apiserver v0.30.1/go.mod h1:i87ZnQ+/PGAmSbD/iEKM68bm1D5reX8fO4Ito4B01mo= +k8s.io/cli-runtime v0.30.1 h1:kSBBpfrJGS6lllc24KeniI9JN7ckOOJKnmFYH1RpTOw= +k8s.io/cli-runtime v0.30.1/go.mod h1:zhHgbqI4J00pxb6gM3gJPVf2ysDjhQmQtnTxnMScab8= +k8s.io/client-go v0.30.1 h1:uC/Ir6A3R46wdkgCV3vbLyNOYyCJ8oZnjtJGKfytl/Q= +k8s.io/client-go v0.30.1/go.mod h1:wrAqLNs2trwiCH/wxxmT/x3hKVH9PuV0GGW0oDoHVqc= +k8s.io/component-base v0.30.1 h1:bvAtlPh1UrdaZL20D9+sWxsJljMi0QZ3Lmw+kmZAaxQ= +k8s.io/component-base v0.30.1/go.mod h1:e/X9kDiOebwlI41AvBHuWdqFriSRrX50CdwA9TFaHLI= +k8s.io/cri-api v0.30.1 h1:AUM78wiC56B1WJ2c795AS0IG5T57CkEdkn0IuC+miAE= +k8s.io/cri-api v0.30.1/go.mod h1://4/umPJSW1ISNSNng4OwjpkvswJOQwU8rnkvO8P+xg= +k8s.io/klog/v2 v2.120.1 h1:QXU6cPEOIslTGvZaXvFWiP9VKyeet3sawzTOvdXb4Vw= +k8s.io/klog/v2 v2.120.1/go.mod h1:3Jpz1GvMt720eyJH1ckRHK1EDfpxISzJ7I9OYgaDtPE= +k8s.io/kube-openapi v0.0.0-20240228011516-70dd3763d340 h1:BZqlfIlq5YbRMFko6/PM7FjZpUb45WallggurYhKGag= +k8s.io/kube-openapi v0.0.0-20240228011516-70dd3763d340/go.mod h1:yD4MZYeKMBwQKVht279WycxKyM84kkAx2DPrTXaeb98= +k8s.io/kubectl v0.30.1 h1:sHFIRI3oP0FFZmBAVEE8ErjnTyXDPkBcvO88mH9RjuY= +k8s.io/kubectl v0.30.1/go.mod h1:7j+L0Cc38RYEcx+WH3y44jRBe1Q1jxdGPKkX0h4iDq0= k8s.io/utils v0.0.0-20240102154912-e7106e64919e h1:eQ/4ljkx21sObifjzXwlPKpdGLrCfRziVtos3ofG/sQ= k8s.io/utils v0.0.0-20240102154912-e7106e64919e/go.mod h1:OLgZIPagt7ERELqWJFomSt595RzquPNLL48iOWgYOg0= oras.land/oras-go v1.2.5 h1:XpYuAwAb0DfQsunIyMfeET92emK8km3W4yEzZvUbsTo= oras.land/oras-go v1.2.5/go.mod h1:PuAwRShRZCsZb7g8Ar3jKKQR/2A/qN+pkYxIOd/FAoo= -sigs.k8s.io/controller-runtime v0.13.1-0.20230315234915-a26de2d610c3 h1:fic0YtUGSr79nv8vn3ziNZJrPZsm64KT/Fd/bc7Q6xY= -sigs.k8s.io/controller-runtime v0.13.1-0.20230315234915-a26de2d610c3/go.mod h1:Qox07m8Gh7skSeOfppEWllPxNMhA7+b93D8Qjj6rBlQ= +sigs.k8s.io/controller-runtime v0.18.3 h1:B5Wmmo8WMWK7izei+2LlXLVDGzMwAHBNLX68lwtlSR4= +sigs.k8s.io/controller-runtime v0.18.3/go.mod h1:TVoGrfdpbA9VRFaRnKgk9P5/atA0pMwq+f+msb9M8Sg= sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd h1:EDPBXCAspyGV4jQlpZSudPeMmr1bNJefnuqLsRAsHZo= sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd/go.mod h1:B8JuhiUyNFVKdsE8h686QcCxMaH6HrOAZj4vswFpcB0= sigs.k8s.io/kustomize/api v0.14.0 h1:6+QLmXXA8X4eDM7ejeaNUyruA1DDB3PVIjbpVhDOJRA= diff --git a/operator/main.go b/operator/main.go index db139d4f25..6a1ad6e72b 100644 --- a/operator/main.go +++ b/operator/main.go @@ -41,6 +41,7 @@ import ( ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/healthz" crzap "sigs.k8s.io/controller-runtime/pkg/log/zap" + metricsserver "sigs.k8s.io/controller-runtime/pkg/metrics/server" retinav1alpha1 "github.com/microsoft/retina/crd/api/v1alpha1" deploy "github.com/microsoft/retina/deploy" @@ -113,9 +114,10 @@ func main() { ctrl.SetLogger(crzap.New(crzap.UseFlagOptions(opts), crzap.Encoder(zapcore.NewConsoleEncoder(log.EncoderConfig())))) mgr, err := ctrl.NewManager(ctrl.GetConfigOrDie(), ctrl.Options{ - Scheme: scheme, - MetricsBindAddress: metricsAddr, - Port: 9443, + Scheme: scheme, + Metrics: metricsserver.Options{ + BindAddress: metricsAddr, + }, HealthProbeBindAddress: probeAddr, LeaderElection: enableLeaderElection, LeaderElectionID: "16937e39.retina.sh", diff --git a/pkg/controllers/daemon/retinaendpoint/suite_test.go b/pkg/controllers/daemon/retinaendpoint/suite_test.go index c73776a751..c8243aa8f4 100644 --- a/pkg/controllers/daemon/retinaendpoint/suite_test.go +++ b/pkg/controllers/daemon/retinaendpoint/suite_test.go @@ -17,6 +17,7 @@ import ( "sigs.k8s.io/controller-runtime/pkg/envtest" logf "sigs.k8s.io/controller-runtime/pkg/log" "sigs.k8s.io/controller-runtime/pkg/log/zap" + metricsserver "sigs.k8s.io/controller-runtime/pkg/metrics/server" retinav1alpha1 "github.com/microsoft/retina/crd/api/v1alpha1" controllercache "github.com/microsoft/retina/pkg/controllers/cache" @@ -71,8 +72,10 @@ var _ = BeforeSuite(func() { // Check pkg/controllers/operator/capture/suite_test.go for more details to why metric is disabled. k8sManager, err := ctrl.NewManager(cfg, ctrl.Options{ - Scheme: scheme.Scheme, - MetricsBindAddress: "0", + Scheme: scheme.Scheme, + Metrics: metricsserver.Options{ + BindAddress: "0", + }, }) Expect(err).ToNot(HaveOccurred()) diff --git a/pkg/controllers/operator/retinaendpoint/retinaendpoint_controller.go b/pkg/controllers/operator/retinaendpoint/retinaendpoint_controller.go index d8b08724b8..47b783f003 100644 --- a/pkg/controllers/operator/retinaendpoint/retinaendpoint_controller.go +++ b/pkg/controllers/operator/retinaendpoint/retinaendpoint_controller.go @@ -178,14 +178,14 @@ func (r *RetinaEndpointReconciler) reconcileRetinaEndpointFromPod(ctx context.Co // since the retina endpoint doesn't exist, then we need to create it new := &retinav1alpha1.RetinaEndpoint{ + TypeMeta: v1.TypeMeta{ + Kind: "RetinaEndpoint", + APIVersion: "retina.sh/v1alpha1", + }, ObjectMeta: v1.ObjectMeta{ Name: pod.Key.Name, Namespace: pod.Key.Namespace, }, - TypeMeta: v1.TypeMeta{ - Kind: "RetinaEndpoint", - APIVersion: "v1alpha1", - }, Spec: retinav1alpha1.RetinaEndpointSpec{ PodIP: pod.Pod.Status.PodIP, PodIPs: ips, diff --git a/pkg/controllers/operator/retinaendpoint/retinaendpoint_controller_test.go b/pkg/controllers/operator/retinaendpoint/retinaendpoint_controller_test.go index fd7468be0a..2abba7989b 100644 --- a/pkg/controllers/operator/retinaendpoint/retinaendpoint_controller_test.go +++ b/pkg/controllers/operator/retinaendpoint/retinaendpoint_controller_test.go @@ -15,6 +15,7 @@ import ( metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/types" + utilruntime "k8s.io/apimachinery/pkg/util/runtime" clientgoscheme "k8s.io/client-go/kubernetes/scheme" "sigs.k8s.io/controller-runtime/pkg/client" "sigs.k8s.io/controller-runtime/pkg/client/fake" @@ -26,6 +27,8 @@ import ( var fakescheme = runtime.NewScheme() func TestRetinaEndpointReconciler_ReconcilePod(t *testing.T) { + utilruntime.Must(clientgoscheme.AddToScheme(fakescheme)) + utilruntime.Must(retinav1alpha1.AddToScheme(fakescheme)) _ = clientgoscheme.AddToScheme(fakescheme) fakescheme.AddKnownTypes(retinav1alpha1.GroupVersion, &retinav1alpha1.RetinaEndpoint{}) @@ -43,6 +46,10 @@ func TestRetinaEndpointReconciler_ReconcilePod(t *testing.T) { fields: fields{ existingObjects: []client.Object{ &retinav1alpha1.RetinaEndpoint{ + TypeMeta: metav1.TypeMeta{ + Kind: "RetinaEndpoint", + APIVersion: "retina.sh/v1alpha1", + }, ObjectMeta: metav1.ObjectMeta{ Name: "pod", Namespace: "default", diff --git a/test/image/Dockerfile b/test/image/Dockerfile index d9911d5795..ca44c20315 100644 --- a/test/image/Dockerfile +++ b/test/image/Dockerfile @@ -1,5 +1,5 @@ # build stage -FROM mcr.microsoft.com/oss/go/microsoft/golang@sha256:87e7359c0b4b4e3ca0d4be7fe5099423ec3431d6c44021a84569dba71ac5463e AS builder +FROM mcr.microsoft.com/oss/go/microsoft/golang@sha256:8253def0216b87b2994b7ad689aeec7440f6eb67f981e438071d8d67e36ff69f AS builder ENV CGO_ENABLED=0 COPY . /go/src/github.com/microsoft/retina WORKDIR /go/src/github.com/microsoft/retina