Skip to content

Bump github.com/onsi/ginkgo/v2 from 2.26.0 to 2.27.2 in /kagenti-webhook#11

Closed
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/go_modules/kagenti-webhook/github.com/onsi/ginkgo/v2-2.27.2
Closed

Bump github.com/onsi/ginkgo/v2 from 2.26.0 to 2.27.2 in /kagenti-webhook#11
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/go_modules/kagenti-webhook/github.com/onsi/ginkgo/v2-2.27.2

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Oct 27, 2025

Copy link
Copy Markdown
Contributor

Bumps github.com/onsi/ginkgo/v2 from 2.26.0 to 2.27.2.

Release notes

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

v2.27.2

2.27.2

Fixes

  • inline automaxprocs to simplify dependencies; this will be removed when Go 1.26 comes out [a69113a]

Maintenance

  • Fix syntax errors and typo [a99c6e0]
  • Fix paragraph position error [f993df5]

v2.27.1

2.27.1

Fixes

  • Fix Ginkgo Reporter slice-bounds panic [606c1cb]
  • Bug Fix: Add GinkoTBWrapper.Attr() and GinkoTBWrapper.Output() [a6463b3]

v2.27.0

2.27.0

Features

Transforming Nodes during Tree Construction

This release adds support for NodeArgsTransformers that can be registered with AddTreeConstructionNodeArgsTransformer.

These are called during the tree construction phase as nodes are constructed and can modify the node strings and decorators. This enables frameworks built on top of Ginkgo to modify Ginkgo nodes and enforce conventions.

Learn more here.

Spec Prioritization

A new SpecPriority(int) decorator has been added. Ginkgo will honor priority when ordering specs, ensuring that higher priority specs start running before lower priority specs

Learn more here.

Maintenance

  • Bump rexml from 3.4.0 to 3.4.2 in /docs (#1595) [1333dae]
  • Bump github.com/gkampitakis/go-snaps from 0.5.14 to 0.5.15 (#1600) [17ae63e]
Changelog

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

2.27.2

Fixes

  • inline automaxprocs to simplify dependencies; this will be removed when Go 1.26 comes out [a69113a]

Maintenance

  • Fix syntax errors and typo [a99c6e0]
  • Fix paragraph position error [f993df5]

2.27.1

Fixes

  • Fix Ginkgo Reporter slice-bounds panic [606c1cb]
  • Bug Fix: Add GinkoTBWrapper.Attr() and GinkoTBWrapper.Output() [a6463b3]

2.27.0

Features

Transforming Nodes during Tree Construction

This release adds support for NodeArgsTransformers that can be registered with AddTreeConstructionNodeArgsTransformer.

These are called during the tree construction phase as nodes are constructed and can modify the node strings and decorators. This enables frameworks built on top of Ginkgo to modify Ginkgo nodes and enforce conventions.

Learn more here.

Spec Prioritization

A new SpecPriority(int) decorator has been added. Ginkgo will honor priority when ordering specs, ensuring that higher priority specs start running before lower priority specs

Learn more here.

Maintenance

  • Bump rexml from 3.4.0 to 3.4.2 in /docs (#1595) [1333dae]
  • Bump github.com/gkampitakis/go-snaps from 0.5.14 to 0.5.15 (#1600) [17ae63e]
Commits
  • 9a84c21 v2.27.2
  • a69113a inline automaxprocs to simplify dependencies; this will be removed when Go 1....
  • a99c6e0 Fix syntax errors and typo
  • f993df5 Fix paragraph position error
  • 56cb393 v2.27.1
  • 2ce3f13 reporters: add enhanced bounds checking in emitTimeline to prevent slice panic
  • acf208a Adding check for malformed date
  • 51090a8 Updating after docs run
  • 606c1cb Fix Ginkgo Reporter slice-bounds panic
  • a6463b3 Bug Fix: Add GinkoTBWrapper.Attr() and GinkoTBWrapper.Output()
  • Additional commits viewable in compare view

Dependabot compatibility score

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 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 <dependency name> 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)

Bumps [github.com/onsi/ginkgo/v2](https://github.com/onsi/ginkgo) from 2.26.0 to 2.27.2.
- [Release notes](https://github.com/onsi/ginkgo/releases)
- [Changelog](https://github.com/onsi/ginkgo/blob/master/CHANGELOG.md)
- [Commits](onsi/ginkgo@v2.26.0...v2.27.2)

---
updated-dependencies:
- dependency-name: github.com/onsi/ginkgo/v2
  dependency-version: 2.27.2
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot @github

dependabot Bot commented on behalf of github Oct 27, 2025

Copy link
Copy Markdown
Contributor Author

Labels

The following labels could not be found: dependencies, go. Please create them before Dependabot can add them to a pull request.

Please fix the above issues or remove invalid values from dependabot.yml.

@cwiklik cwiklik closed this Nov 19, 2025
@dependabot @github

dependabot Bot commented on behalf of github Nov 19, 2025

Copy link
Copy Markdown
Contributor Author

OK, I won't notify you again about this release, but will get in touch when a new version is available. If you'd rather skip all updates until the next major or minor version, let me know by commenting @dependabot ignore this major version or @dependabot ignore this minor version. You can also ignore all major, minor, or patch releases for a dependency by adding an ignore condition with the desired update_types to your config file.

If you change your mind, just re-open this PR and I'll resolve any conflicts on it.

@dependabot
dependabot Bot deleted the dependabot/go_modules/kagenti-webhook/github.com/onsi/ginkgo/v2-2.27.2 branch November 19, 2025 20:00
huang195 added a commit to huang195/kagenti-extensions that referenced this pull request May 7, 2026
Must-fix:
- rossoctl#1+rossoctl#7: Plugins spawned credential watchers with initCtx (60s), so a
  slow client-registration orphaned the plugin after Start's deadline
  and OnRequest returned 503 for the pod's lifetime. Watchers now run
  on process-lifetime contexts created in Init via context.Background()
  + context.WithCancel; the cancel func is stored on the plugin and
  fired in Shutdown. Both JWTValidation and TokenExchange now
  implement pipeline.Shutdowner. Removed the orphaned
  context.WithCancel at main.go:89 that looked like it was meant to
  be that context.

- rossoctl#2: testutil.go moved out of the plugins package into a dedicated
  sub-package authlib/plugins/plugintesting/ so it can't be imported
  by the production binary. Rewrote the helpers as stub plugin
  adapters that mimic jwt-validation / token-exchange OnRequest but
  don't touch plugin internals — listener tests inject an
  *auth.Auth via plugintesting.NewJWTValidation / NewTokenExchange,
  wire through plugintesting.BuildPipeline, and never see the real
  Configure path. All four listener tests updated.

- rossoctl#11: Removed identity sub-validation that applyDefaults made
  unreachable; class-of-error compensated by logging a boot-time
  WARN when Configure's best-effort ReadCredentialFile fails (see
  also rossoctl#12).

Suggestions:
- rossoctl#3: pollCredentials no longer mutates p.cfg. Reads credential
  values into locals and feeds them through auth.UpdateIdentity. cfg
  is now immutable after Configure returns. Added a
  buildClientAuthFrom helper that takes explicit args so the
  goroutine doesn't read p.cfg either.

- rossoctl#4: Rewrote the NoTokenPolicy doc comment to state the current
  behavior ("deny in all modes; operators who need allow or
  client-credentials must set it explicitly") instead of referring
  to the removed config.NoTokenPolicyForMode.

- rossoctl#5: Deleted unused DefaultInboundPlugins/DefaultOutboundPlugins
  and the whole defaults.go file. Fixed the stale PipelineConfig
  docstring in config.go that said "defaults kick in when
  pipeline section is omitted" — they don't.

- rossoctl#6: PluginEntry.UnmarshalYAML normalizes explicit `config: null`
  (and any other !!null-tagged scalar under `config:`) to a nil
  RawMessage, so Build's "plugin does not accept configuration"
  gate doesn't fire spuriously on the four bytes "null".

- rossoctl#12: Deleted unreachable validate() branches: static-mode's
  audience emptiness check, spiffe's missing-path check,
  client-secret's missing-id / missing-secret checks. applyDefaults
  fills the matching field in every case; the branches were dead
  code that obscured what the plugin actually validated.

Nits:
- rossoctl#8: Renamed TestPluginEntry_IDDefaultsToName →
  TestPluginEntry_IDOmittedStaysEmpty.

- rossoctl#9: TestBuild_ConfigForNonConfigurablePlugin now asserts the error
  text contains "does not accept configuration" — operator-facing
  contract.

- rossoctl#10: Renamed TestConfigurable_ErrorAborts →
  TestConfigurable_ErrorPropagates and noted in the comment that
  Build-level abort coverage lives in plugins_test.go.

- rossoctl#13: Documented on jwtValidationConfig.AudienceFile that empty-
  string is treated as "unset" and triggers the default. Operators
  who want no file backing must supply an explicit Audience.

- rossoctl#14: Added TestAuthbridgeCombinedYAML_Loads — parses the in-repo
  authbridge-combined.yaml with env vars set, asserts both inbound
  and outbound pipelines Build cleanly. A future rename of any
  default constant that the YAML relies on breaks this test in CI
  rather than silently shipping a broken image.

Assisted-By: Claude (Anthropic AI) <noreply@anthropic.com>
Signed-off-by: Hai Huang <huang195@gmail.com>
huang195 added a commit to huang195/kagenti-extensions that referenced this pull request May 7, 2026
Must-fix:
- rossoctl#1+rossoctl#7: Plugins spawned credential watchers with initCtx (60s), so a
  slow client-registration orphaned the plugin after Start's deadline
  and OnRequest returned 503 for the pod's lifetime. Watchers now run
  on process-lifetime contexts created in Init via context.Background()
  + context.WithCancel; the cancel func is stored on the plugin and
  fired in Shutdown. Both JWTValidation and TokenExchange now
  implement pipeline.Shutdowner. Removed the orphaned
  context.WithCancel at main.go:89 that looked like it was meant to
  be that context.

- rossoctl#2: testutil.go moved out of the plugins package into a dedicated
  sub-package authlib/plugins/plugintesting/ so it can't be imported
  by the production binary. Rewrote the helpers as stub plugin
  adapters that mimic jwt-validation / token-exchange OnRequest but
  don't touch plugin internals — listener tests inject an
  *auth.Auth via plugintesting.NewJWTValidation / NewTokenExchange,
  wire through plugintesting.BuildPipeline, and never see the real
  Configure path. All four listener tests updated.

- rossoctl#11: Removed identity sub-validation that applyDefaults made
  unreachable; class-of-error compensated by logging a boot-time
  WARN when Configure's best-effort ReadCredentialFile fails (see
  also rossoctl#12).

Suggestions:
- rossoctl#3: pollCredentials no longer mutates p.cfg. Reads credential
  values into locals and feeds them through auth.UpdateIdentity. cfg
  is now immutable after Configure returns. Added a
  buildClientAuthFrom helper that takes explicit args so the
  goroutine doesn't read p.cfg either.

- rossoctl#4: Rewrote the NoTokenPolicy doc comment to state the current
  behavior ("deny in all modes; operators who need allow or
  client-credentials must set it explicitly") instead of referring
  to the removed config.NoTokenPolicyForMode.

- rossoctl#5: Deleted unused DefaultInboundPlugins/DefaultOutboundPlugins
  and the whole defaults.go file. Fixed the stale PipelineConfig
  docstring in config.go that said "defaults kick in when
  pipeline section is omitted" — they don't.

- rossoctl#6: PluginEntry.UnmarshalYAML normalizes explicit `config: null`
  (and any other !!null-tagged scalar under `config:`) to a nil
  RawMessage, so Build's "plugin does not accept configuration"
  gate doesn't fire spuriously on the four bytes "null".

- rossoctl#12: Deleted unreachable validate() branches: static-mode's
  audience emptiness check, spiffe's missing-path check,
  client-secret's missing-id / missing-secret checks. applyDefaults
  fills the matching field in every case; the branches were dead
  code that obscured what the plugin actually validated.

Nits:
- rossoctl#8: Renamed TestPluginEntry_IDDefaultsToName →
  TestPluginEntry_IDOmittedStaysEmpty.

- rossoctl#9: TestBuild_ConfigForNonConfigurablePlugin now asserts the error
  text contains "does not accept configuration" — operator-facing
  contract.

- rossoctl#10: Renamed TestConfigurable_ErrorAborts →
  TestConfigurable_ErrorPropagates and noted in the comment that
  Build-level abort coverage lives in plugins_test.go.

- rossoctl#13: Documented on jwtValidationConfig.AudienceFile that empty-
  string is treated as "unset" and triggers the default. Operators
  who want no file backing must supply an explicit Audience.

- rossoctl#14: Added TestAuthbridgeCombinedYAML_Loads — parses the in-repo
  authbridge-combined.yaml with env vars set, asserts both inbound
  and outbound pipelines Build cleanly. A future rename of any
  default constant that the YAML relies on breaks this test in CI
  rather than silently shipping a broken image.

Assisted-By: Claude (Anthropic AI) <noreply@anthropic.com>
Signed-off-by: Hai Huang <huang195@gmail.com>
kellyaa added a commit to kellyaa/kagenti-extensions that referenced this pull request Jun 12, 2026
Adds construction-time guards, audit logging, and tests asked for in
the PR rossoctl#500 review.

Skiphost matcher (authlib/listener/skiphost):
- Reject match-all patterns ("*", "**", whitespace-only) at New() so a
  single misconfigured entry cannot silently disable the entire
  outbound enforcement pipeline. Mirrors the bypass-pattern guard
  added to ibac in rossoctl#496. Empirically verified: under .-delimited
  glob "*" matches every single-label hostname (which is how every
  short Kubernetes service name reaches the listener), and "**" is
  the unambiguous match-all. Patterns like "*.svc.cluster.local" or
  "*.*" are NOT match-all and remain accepted.
- Reject patterns containing ":" so an operator typo like
  "otel-collector:8335" fails fast at startup rather than silently
  never matching (Match strips the port from the incoming host
  before comparing, so colon-bearing patterns would never fire).
- Add MatchPattern(host) (string, bool) so listeners can attribute
  audit logs / counters to the specific raw operator-supplied
  pattern that fired. Match() is now a thin wrapper around it for
  callers that only want the boolean.

Listener skip-path audit logging:
- Each successful skip in extproc (handleOutbound, handleOutboundBody)
  and forwardproxy (handleRequest, handleConnect) now emits a
  structured slog INFO line carrying host, matched pattern, and
  method/path. Without this trail, a successful self-exemption left
  no trace anywhere -- no session event, no plugin invocation --
  because that is exactly what skip means.

Trust-model documentation (authlib/config/config.go):
- ListenerConfig.SkipHosts godoc now spells out that the matched
  value is agent-influenceable on the ext_proc and HTTP-forward
  paths (Envoy :authority / r.Host header) and only safe-by-
  construction on the CONNECT-tunnel path. Operators should not
  list a host they would want IBAC / token-exchange to deny on.

Hard-guard reminder (authlib/listener/forwardproxy/transparent.go):
- HandleTransparentConn (proxy-sidecar enforce-redirect mode)
  intentionally does NOT consult SkipHosts. Add a paragraph to its
  godoc stating the omission is deliberate so a future maintainer
  does not "fix the inconsistency" by adding a skip keyed on the
  agent-controlled SNI/Host bytes and open a real bypass of the
  hard egress guard.

Tests:
- New TestForwardProxy_SkipHosts_MatchesAgainstHostHeaderNotURL
  locks the trust-model contract for the HTTP forward path: the
  skip keys on the agent-supplied Host header, not on r.URL.Host.
- New TestForwardProxy_SkipHosts_CONNECT_BypassesPipeline exercises
  the previously-uncovered CONNECT skip path end-to-end.
- New TestNew_RejectsMatchAllStar / RejectsMatchAllDoubleStar /
  RejectsWhitespaceOnly / RejectsPortInPattern lock the construction-
  time guards, plus TestNew_AcceptsLeadingStar guards against a
  future rewrite that over-rejects and breaks operator-typical FQDN
  patterns.

CLAUDE.md gotcha rossoctl#11:
- Narrow the LastIntent() wording: the pin protects against FIFO
  eviction only; expired or deleted sessions can still return nil.

Assisted-By: Claude (Anthropic AI) <noreply@anthropic.com>
Signed-off-by: Kelly Abuelsaad <kaymar@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant