The state comparison using `kmp.SafeDiff(existing.Status, desired.Status)` in the `reconcilerImpl.updateStatus` method is costly and performed for debug logging purposes.
Issue: https://github.com/knative/pkg/issues/2677
* Top-level structure of test execution changed
* Use t.Parallel properly
* Put back passing Log for test purposes
* More changes
* Prevent panic in unit tests
* All tests passing
* Simplify TestSkipAtBackgroundVerification
* Reduce background_verif_test
* Print name of continual test instead of Continual Test XXX
* Simplify sending stop event
* All tests passing
* background_verification_test using t.Fatal
* Remove old stuff
* Remove old comments
* Remove comment
* Properly initialize logger from LogConfig
* Quite early
* Remove backwards compatible Log from Configuration
* Get rid of suiteExecution failed field
* Minor cleanup
* Bring back most of TestSkipAtBackgroundVerification
* Minor syntactic fix
* Remove unused postVerifyContinual field
* Execute OnWait at least once
* Remove redundant close
* Close closeCh after failed Setup phase
* Do not call OnWait at least once
* Put back error message verification
* Unit tests passing with GOMAXPROCS=2
* remove redundant Eventing continual test as this functionality is
already tested by Serving continual test
* remove redundant ShouldNotBeSkippedTest - this was a normal passing
test which is already tested elsewhere
* Add a note about GOMAXPROCS and logical CPUs for upgrade tests
* Use completeSuite where no failures are expected
* Create new zaptest.Logger for each sub-test
This will print output on test failure
* Deprecate LogConfig.Config as it is unused
* Rename Parallel/UpgradeDowngrade to Run/Steps
* minor change in comment
* Fix test
* Allow logstream to stream logs from user namespace
* When streaming logs from user namespace, disable filtering lines so
all lines are printed.
* Fixes
* Document the Callback type
* Create function New for configuring logstream with additional options
* Re-use function New inside FromNamespaces
* Function AllowRestrictedPodSecurityStandard for modifying test pods
* Add license
* Format license
* Extract IsRestrictedPodSecurityEnforced which can be run separately
bumping knative.dev/hack 9d2ae47...8f3c705:
> 8f3c705 Update community files (# 247)
> 62b15bd drop support for the istio add on flag (# 243)
> f5be74f Update community files (# 245)
> 80fd6da KO_DATA_PATH doesn't need to be set anymore (# 244)
> 4b6bd86 Format go code (# 239)
> 566898d Update community files (# 242)
Signed-off-by: Knative Automation <automation@knative.team>
Signed-off-by: Knative Automation <automation@knative.team>
The main reason for this is to support cases where the `go build`
happens on a non git folder but we want to pass a revision anyway.
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
🐛 My previous change has revive/stylecheck warnings because I made the `warn` return value `[]error` and it wants the `error` last, which is kind of silly.
This mutes the linter on this signature, since it hits both revive and stylecheck
/kind bug
🧹 Previously we lacked a public method for turning our `apis.FieldError` multi-error into a list of constituent error messages, so when we turned things into a webhook warning we simply used the combined serialization of all of the warnings. Thanks to Nghia's recent change, we can now access the list of warnings to return as a list of errors.
/kind cleanup
* Add FieldError#GetErrors to allow downstream reads
* Rename based on PR feedback
* Rename correctly for real
* Also expose `Normalized`
* WrappedErrors = merge(normalized)
Generally K8s types have a list type where the 'Items' member is an
array of structs.
ie. https://pkg.go.dev/k8s.io/api@v0.25.3/apps/v1#DeploymentList
type DeploymentList struct {
...
// Items is the list of Deployments.
Items []Deployment `json:"items" protobuf:"bytes,2,rep,name=items"`
}
Istio is an exception where the list contains pointers to structs
type GatewayList struct {
...
Items []*Gateway `json:"items" protobuf:"bytes,2,rep,name=items"`
}
To hint that the list types are pointers you can now pass the flag
'--lister-has-pointer-elem'.
Ideally we could infer this info by inspecting the types but
unfortunately the generator doesn't load this information
* Preserve webhook namespaceSelector.matchLabels
I have a webhook with this definition and the reconciler is
removing the matchLabels field:
Current resource:
```
namespaceSelector:
matchExpressions:
- key: webhooks.knative.dev/exclude
operator: DoesNotExist
objectSelector:
matchLabels:
app.kubernetes.io/component: kafka-dispatcher
```
Applied resource:
```
namespaceSelector:
matchExpressions: [ ]
matchLabels:
app.kubernetes.io/name: knative-eventing
objectSelector:
matchLabels:
app.kubernetes.io/component: kafka-dispatcher
```
Signed-off-by: Pierangelo Di Pilato <pierdipi@redhat.com>
* Optimize cases that don't need ensureLabelSelectorRequirements
Signed-off-by: Pierangelo Di Pilato <pierdipi@redhat.com>
Signed-off-by: Pierangelo Di Pilato <pierdipi@redhat.com>