-
Notifications
You must be signed in to change notification settings - Fork 443
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Create service for extensions #3403
base: main
Are you sure you want to change the base?
Conversation
df4a731
to
3a5a2ee
Compare
3a5a2ee
to
3ab8c98
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
great progress,
Please add unit tests and e2e test
d742325
to
eb14bf7
Compare
eb14bf7
to
5f26d14
Compare
007c7eb
to
d9ff5df
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This looks good to me overall, left a few comments and questions.
41da859
to
5e26224
Compare
5e26224
to
4f27a6b
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I wanted to be clearer about how I'd like the e2e test you added to look like. I'm including some suggestions to help demonstrate that. Fundamentally, the manifests we assert against should only contain attributes that are relevant to this specific test.
The rest of this PR looks good to me, nicely done. 👍
tests/e2e/extension/00-assert.yaml
Outdated
apiVersion: v1 | ||
kind: ServiceAccount | ||
metadata: | ||
labels: | ||
app.kubernetes.io/component: opentelemetry-collector | ||
app.kubernetes.io/managed-by: opentelemetry-operator | ||
app.kubernetes.io/name: jaeger-inmemory-collector | ||
app.kubernetes.io/part-of: opentelemetry | ||
app.kubernetes.io/version: latest | ||
name: jaeger-inmemory-collector | ||
ownerReferences: | ||
- apiVersion: opentelemetry.io/v1beta1 | ||
blockOwnerDeletion: true | ||
controller: true | ||
kind: OpenTelemetryCollector | ||
name: jaeger-inmemory | ||
--- |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
apiVersion: v1 | |
kind: ServiceAccount | |
metadata: | |
labels: | |
app.kubernetes.io/component: opentelemetry-collector | |
app.kubernetes.io/managed-by: opentelemetry-operator | |
app.kubernetes.io/name: jaeger-inmemory-collector | |
app.kubernetes.io/part-of: opentelemetry | |
app.kubernetes.io/version: latest | |
name: jaeger-inmemory-collector | |
ownerReferences: | |
- apiVersion: opentelemetry.io/v1beta1 | |
blockOwnerDeletion: true | |
controller: true | |
kind: OpenTelemetryCollector | |
name: jaeger-inmemory | |
--- |
tests/e2e/extension/00-assert.yaml
Outdated
metadata: | ||
labels: | ||
app.kubernetes.io/component: opentelemetry-collector | ||
app.kubernetes.io/managed-by: opentelemetry-operator | ||
app.kubernetes.io/name: jaeger-inmemory-collector | ||
app.kubernetes.io/part-of: opentelemetry | ||
app.kubernetes.io/version: latest | ||
operator.opentelemetry.io/collector-service-type: base |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
metadata: | |
labels: | |
app.kubernetes.io/component: opentelemetry-collector | |
app.kubernetes.io/managed-by: opentelemetry-operator | |
app.kubernetes.io/name: jaeger-inmemory-collector | |
app.kubernetes.io/part-of: opentelemetry | |
app.kubernetes.io/version: latest | |
operator.opentelemetry.io/collector-service-type: base |
tests/e2e/extension/00-assert.yaml
Outdated
ownerReferences: | ||
- apiVersion: opentelemetry.io/v1beta1 | ||
blockOwnerDeletion: true | ||
controller: true | ||
kind: OpenTelemetryCollector | ||
name: jaeger-inmemory |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ownerReferences: | |
- apiVersion: opentelemetry.io/v1beta1 | |
blockOwnerDeletion: true | |
controller: true | |
kind: OpenTelemetryCollector | |
name: jaeger-inmemory |
tests/e2e/extension/00-assert.yaml
Outdated
internalTrafficPolicy: Cluster | ||
ipFamilies: | ||
- IPv4 | ||
ipFamilyPolicy: SingleStack |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
internalTrafficPolicy: Cluster | |
ipFamilies: | |
- IPv4 | |
ipFamilyPolicy: SingleStack |
tests/e2e/extension/00-assert.yaml
Outdated
selector: | ||
app.kubernetes.io/component: opentelemetry-collector | ||
app.kubernetes.io/managed-by: opentelemetry-operator | ||
app.kubernetes.io/part-of: opentelemetry | ||
sessionAffinity: None | ||
type: ClusterIP | ||
status: | ||
loadBalancer: {} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
selector: | |
app.kubernetes.io/component: opentelemetry-collector | |
app.kubernetes.io/managed-by: opentelemetry-operator | |
app.kubernetes.io/part-of: opentelemetry | |
sessionAffinity: None | |
type: ClusterIP | |
status: | |
loadBalancer: {} |
tests/e2e/extension/00-assert.yaml
Outdated
metadata: | ||
annotations: | ||
deployment.kubernetes.io/revision: "1" | ||
generation: 1 | ||
labels: | ||
app.kubernetes.io/component: opentelemetry-collector | ||
app.kubernetes.io/managed-by: opentelemetry-operator | ||
app.kubernetes.io/name: jaeger-inmemory-collector | ||
app.kubernetes.io/part-of: opentelemetry | ||
app.kubernetes.io/version: latest |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
metadata: | |
annotations: | |
deployment.kubernetes.io/revision: "1" | |
generation: 1 | |
labels: | |
app.kubernetes.io/component: opentelemetry-collector | |
app.kubernetes.io/managed-by: opentelemetry-operator | |
app.kubernetes.io/name: jaeger-inmemory-collector | |
app.kubernetes.io/part-of: opentelemetry | |
app.kubernetes.io/version: latest |
tests/e2e/extension/00-assert.yaml
Outdated
ownerReferences: | ||
- apiVersion: opentelemetry.io/v1beta1 | ||
blockOwnerDeletion: true | ||
controller: true | ||
kind: OpenTelemetryCollector | ||
name: jaeger-inmemory |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ownerReferences: | |
- apiVersion: opentelemetry.io/v1beta1 | |
blockOwnerDeletion: true | |
controller: true | |
kind: OpenTelemetryCollector | |
name: jaeger-inmemory |
tests/e2e/extension/00-assert.yaml
Outdated
replicas: 1 | ||
selector: | ||
matchLabels: | ||
app.kubernetes.io/component: opentelemetry-collector | ||
app.kubernetes.io/managed-by: opentelemetry-operator | ||
app.kubernetes.io/part-of: opentelemetry | ||
strategy: | ||
rollingUpdate: | ||
maxSurge: 25% | ||
maxUnavailable: 25% | ||
type: RollingUpdate | ||
template: | ||
metadata: | ||
annotations: | ||
prometheus.io/path: /metrics | ||
prometheus.io/port: "8888" | ||
prometheus.io/scrape: "true" | ||
creationTimestamp: null | ||
labels: | ||
app.kubernetes.io/component: opentelemetry-collector | ||
app.kubernetes.io/managed-by: opentelemetry-operator | ||
app.kubernetes.io/name: jaeger-inmemory-collector | ||
app.kubernetes.io/part-of: opentelemetry | ||
app.kubernetes.io/version: latest |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
replicas: 1 | |
selector: | |
matchLabels: | |
app.kubernetes.io/component: opentelemetry-collector | |
app.kubernetes.io/managed-by: opentelemetry-operator | |
app.kubernetes.io/part-of: opentelemetry | |
strategy: | |
rollingUpdate: | |
maxSurge: 25% | |
maxUnavailable: 25% | |
type: RollingUpdate | |
template: | |
metadata: | |
annotations: | |
prometheus.io/path: /metrics | |
prometheus.io/port: "8888" | |
prometheus.io/scrape: "true" | |
creationTimestamp: null | |
labels: | |
app.kubernetes.io/component: opentelemetry-collector | |
app.kubernetes.io/managed-by: opentelemetry-operator | |
app.kubernetes.io/name: jaeger-inmemory-collector | |
app.kubernetes.io/part-of: opentelemetry | |
app.kubernetes.io/version: latest |
tests/e2e/extension/00-assert.yaml
Outdated
- args: | ||
- --config=/conf/collector.yaml | ||
env: | ||
- name: POD_NAME | ||
valueFrom: | ||
fieldRef: | ||
apiVersion: v1 | ||
fieldPath: metadata.name | ||
image: jaegertracing/jaeger-snapshot:latest | ||
imagePullPolicy: Always | ||
name: otc-container |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
- args: | |
- --config=/conf/collector.yaml | |
env: | |
- name: POD_NAME | |
valueFrom: | |
fieldRef: | |
apiVersion: v1 | |
fieldPath: metadata.name | |
image: jaegertracing/jaeger-snapshot:latest | |
imagePullPolicy: Always | |
name: otc-container |
tests/e2e/extension/00-assert.yaml
Outdated
resources: {} | ||
terminationMessagePath: /dev/termination-log | ||
terminationMessagePolicy: File | ||
volumeMounts: | ||
- mountPath: /conf | ||
name: otc-internal | ||
dnsConfig: {} | ||
dnsPolicy: ClusterFirst | ||
restartPolicy: Always | ||
schedulerName: default-scheduler | ||
securityContext: {} | ||
serviceAccount: jaeger-inmemory-collector | ||
serviceAccountName: jaeger-inmemory-collector | ||
shareProcessNamespace: false | ||
terminationGracePeriodSeconds: 30 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
resources: {} | |
terminationMessagePath: /dev/termination-log | |
terminationMessagePolicy: File | |
volumeMounts: | |
- mountPath: /conf | |
name: otc-internal | |
dnsConfig: {} | |
dnsPolicy: ClusterFirst | |
restartPolicy: Always | |
schedulerName: default-scheduler | |
securityContext: {} | |
serviceAccount: jaeger-inmemory-collector | |
serviceAccountName: jaeger-inmemory-collector | |
shareProcessNamespace: false | |
terminationGracePeriodSeconds: 30 |
4f27a6b
to
c5d4b40
Compare
Signed-off-by: Ankit152 <[email protected]>
Signed-off-by: Ankit152 <[email protected]>
Signed-off-by: Ankit152 <[email protected]>
Signed-off-by: Ankit152 <[email protected]>
c5d4b40
to
effe1d9
Compare
Description:
The Otel Operator doesn't creates a service for extensions. This will help the operator to create Service for extensions which will be consumed by an Ingress so that users can interact with it directly. This is related to deployment of Jaeger V2 in k8s.
Link to tracking Issue(s):
Testing:
Documentation: