diff --git a/test/rekt/features/jobsink/jobsink.go b/test/rekt/features/jobsink/jobsink.go index 4ad54779160..141a3f5a1e9 100644 --- a/test/rekt/features/jobsink/jobsink.go +++ b/test/rekt/features/jobsink/jobsink.go @@ -63,7 +63,11 @@ func Success(jobSinkName string) *feature.Feature { Scheme: "http", Host: network.GetServiceHostname(sink, environment.FromContext(ctx).Namespace()), } - jobsink.Install(jobSink, jobsink.WithForwarderJob(sinkURL.String()))(ctx, t) + var opts []func(*batchv1.Job) + if ic := environment.GetIstioConfig(ctx); ic.Enabled { + opts = append(opts, jobsink.WithIstioConfig()) + } + jobsink.Install(jobSink, jobsink.WithForwarderJob(sinkURL.String(), opts...))(ctx, t) }) f.Setup("jobsink is addressable", jobsink.IsAddressable(jobSink)) diff --git a/test/rekt/resources/jobsink/jobsink.go b/test/rekt/resources/jobsink/jobsink.go index 42804ebeb91..c5efde044c8 100644 --- a/test/rekt/resources/jobsink/jobsink.go +++ b/test/rekt/resources/jobsink/jobsink.go @@ -106,6 +106,22 @@ func WithJob(job batchv1.Job) manifest.CfgFn { } } +func WithIstioConfig() func(*batchv1.Job) { + return func(job *batchv1.Job) { + if job.Spec.Template.Labels == nil { + job.Spec.Template.Labels = make(map[string]string) + } + job.Spec.Template.Labels["sidecar.istio.io/inject"] = "true" + + if job.Spec.Template.Annotations == nil { + job.Spec.Template.Annotations = make(map[string]string) + } + job.Spec.Template.Annotations["sidecar.istio.io/rewriteAppHTTPProbers"] = "true" + job.Spec.Template.Annotations["proxy.istio.io/config"] = `{ "holdApplicationUntilProxyStarts": true }` + job.Spec.Template.Annotations["sidecar.istio.io/inject"] = "true" // For backwards compatibility. + } +} + func WithForwarderJob(sink string, options ...func(*batchv1.Job)) manifest.CfgFn { return func(cfg map[string]interface{}) { j := batchv1.Job{