Skip to content

Commit 0771546

Browse files
committed
Fix instrumentation test asserts.
1 parent 295d1e0 commit 0771546

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

43 files changed

+1862
-433
lines changed

tests/e2e-instrumentation/instrumentation-apache-httpd/01-assert.yaml

+12
Original file line numberDiff line numberDiff line change
@@ -48,4 +48,16 @@ spec:
4848
- cp -r /opt/opentelemetry/* /opt/opentelemetry-webserver/agent && export agentLogDir=$(echo "/opt/opentelemetry-webserver/agent/logs" | sed 's,/,\\/,g') && cat /opt/opentelemetry-webserver/agent/conf/appdynamics_sdk_log4cxx.xml.template | sed 's/__agent_log_dir__/'${agentLogDir}'/g' > /opt/opentelemetry-webserver/agent/conf/appdynamics_sdk_log4cxx.xml &&echo "$OTEL_APACHE_AGENT_CONF" > /opt/opentelemetry-webserver/source-conf/opentemetry_agent.conf && sed -i 's/<<SID-PLACEHOLDER>>/'${APACHE_SERVICE_INSTANCE_ID}'/g' /opt/opentelemetry-webserver/source-conf/opentemetry_agent.conf && echo 'Include /usr/local/apache2/conf/opentemetry_agent.conf' >> /opt/opentelemetry-webserver/source-conf/httpd.conf
4949
name: otel-agent-attach-apache
5050
status:
51+
containerStatuses:
52+
- name: myapp
53+
ready: true
54+
started: true
55+
- name: otc-container
56+
ready: true
57+
started: true
58+
initContainerStatuses:
59+
- name: otel-agent-source-container-clone
60+
ready: true
61+
- name: otel-agent-attach-apache
62+
ready: true
5163
phase: Running

tests/e2e-instrumentation/instrumentation-apache-httpd/chainsaw-test.yaml

+3
Original file line numberDiff line numberDiff line change
@@ -34,3 +34,6 @@ spec:
3434
file: 01-install-app.yaml
3535
- assert:
3636
file: 01-assert.yaml
37+
catch:
38+
- podLogs:
39+
selector: app=my-apache
Original file line numberDiff line numberDiff line change
@@ -1,71 +1,141 @@
1-
# skipping test, see https://github.com/open-telemetry/opentelemetry-operator/issues/1936
21
apiVersion: v1
32
kind: Pod
43
metadata:
54
annotations:
6-
sidecar.opentelemetry.io/inject: "true"
5+
instrumentation.opentelemetry.io/container-names: myapp,myrabbit
76
instrumentation.opentelemetry.io/inject-apache-httpd: "true"
8-
instrumentation.opentelemetry.io/container-names: "myapp,myrabbit"
7+
sidecar.opentelemetry.io/inject: "true"
98
labels:
10-
app: my-apache
9+
app: my-apache-multi
1110
spec:
1211
containers:
13-
- env:
14-
- name: OTEL_SERVICE_NAME
15-
value: my-apache
16-
- name: OTEL_EXPORTER_OTLP_ENDPOINT
17-
value: http://localhost:4317
18-
- name: OTEL_RESOURCE_ATTRIBUTES_POD_NAME
19-
valueFrom:
20-
fieldRef:
21-
apiVersion: v1
22-
fieldPath: metadata.name
23-
- name: OTEL_RESOURCE_ATTRIBUTES_NODE_NAME
24-
valueFrom:
25-
fieldRef:
26-
apiVersion: v1
27-
fieldPath: spec.nodeName
28-
- name: OTEL_PROPAGATORS
29-
value: jaeger,b3
30-
- name: OTEL_TRACES_SAMPLER
31-
value: parentbased_traceidratio
32-
- name: OTEL_TRACES_SAMPLER_ARG
33-
value: "0.25"
34-
- name: OTEL_RESOURCE_ATTRIBUTES
35-
name: myapp
36-
volumeMounts:
37-
- mountPath: /var/run/secrets/kubernetes.io/serviceaccount
38-
- mountPath: /opt/opentelemetry-webserver/agent
39-
name: otel-apache-agent
40-
- mountPath: /usr/local/apache2/conf
41-
name: otel-apache-conf-dir
42-
- env:
43-
- name: OTEL_SERVICE_NAME
44-
value: my-apache
45-
- name: OTEL_EXPORTER_OTLP_ENDPOINT
46-
value: http://localhost:4317
47-
- name: OTEL_RESOURCE_ATTRIBUTES_POD_NAME
48-
valueFrom:
49-
fieldRef:
50-
apiVersion: v1
51-
fieldPath: metadata.name
52-
- name: OTEL_RESOURCE_ATTRIBUTES_NODE_NAME
53-
valueFrom:
54-
fieldRef:
55-
apiVersion: v1
56-
fieldPath: spec.nodeName
57-
- name: OTEL_PROPAGATORS
58-
value: jaeger,b3
59-
- name: OTEL_TRACES_SAMPLER
60-
value: parentbased_traceidratio
61-
- name: OTEL_TRACES_SAMPLER_ARG
62-
value: "0.25"
63-
- name: OTEL_RESOURCE_ATTRIBUTES
64-
name: myrabbit
65-
volumeMounts:
66-
- mountPath: /var/run/secrets/kubernetes.io/serviceaccount
67-
- args:
68-
- --config=env:OTEL_CONFIG
69-
name: otc-container
12+
- env:
13+
- name: OTEL_SERVICE_NAME
14+
value: my-apache-multi
15+
- name: OTEL_EXPORTER_OTLP_ENDPOINT
16+
value: http://localhost:4317
17+
- name: OTEL_RESOURCE_ATTRIBUTES_POD_NAME
18+
valueFrom:
19+
fieldRef:
20+
apiVersion: v1
21+
fieldPath: metadata.name
22+
- name: OTEL_RESOURCE_ATTRIBUTES_NODE_NAME
23+
valueFrom:
24+
fieldRef:
25+
apiVersion: v1
26+
fieldPath: spec.nodeName
27+
- name: OTEL_PROPAGATORS
28+
value: jaeger,b3
29+
- name: OTEL_TRACES_SAMPLER
30+
value: parentbased_traceidratio
31+
- name: OTEL_TRACES_SAMPLER_ARG
32+
value: "0.25"
33+
- name: OTEL_RESOURCE_ATTRIBUTES
34+
name: myapp
35+
- env:
36+
- name: OTEL_SERVICE_NAME
37+
value: my-apache-multi
38+
- name: OTEL_EXPORTER_OTLP_ENDPOINT
39+
value: http://localhost:4317
40+
- name: OTEL_RESOURCE_ATTRIBUTES_POD_NAME
41+
valueFrom:
42+
fieldRef:
43+
apiVersion: v1
44+
fieldPath: metadata.name
45+
- name: OTEL_RESOURCE_ATTRIBUTES_NODE_NAME
46+
valueFrom:
47+
fieldRef:
48+
apiVersion: v1
49+
fieldPath: spec.nodeName
50+
- name: OTEL_PROPAGATORS
51+
value: jaeger,b3
52+
- name: OTEL_TRACES_SAMPLER
53+
value: parentbased_traceidratio
54+
- name: OTEL_TRACES_SAMPLER_ARG
55+
value: "0.25"
56+
- name: OTEL_RESOURCE_ATTRIBUTES
57+
name: myrabbit
58+
- args:
59+
- --config=env:OTEL_CONFIG
60+
env:
61+
- name: POD_NAME
62+
valueFrom:
63+
fieldRef:
64+
apiVersion: v1
65+
fieldPath: metadata.name
66+
- name: OTEL_CONFIG
67+
value: |
68+
receivers:
69+
otlp:
70+
protocols:
71+
grpc: null
72+
http: null
73+
exporters:
74+
debug: null
75+
service:
76+
pipelines:
77+
traces:
78+
exporters:
79+
- debug
80+
processors: []
81+
receivers:
82+
- otlp
83+
- name: OTEL_RESOURCE_ATTRIBUTES_POD_NAME
84+
valueFrom:
85+
fieldRef:
86+
apiVersion: v1
87+
fieldPath: metadata.name
88+
- name: OTEL_RESOURCE_ATTRIBUTES_POD_UID
89+
valueFrom:
90+
fieldRef:
91+
apiVersion: v1
92+
fieldPath: metadata.uid
93+
- name: OTEL_RESOURCE_ATTRIBUTES_NODE_NAME
94+
valueFrom:
95+
fieldRef:
96+
apiVersion: v1
97+
fieldPath: spec.nodeName
98+
- name: OTEL_RESOURCE_ATTRIBUTES
99+
name: otc-container
100+
initContainers:
101+
- args:
102+
- cp -r /usr/local/apache2/conf/* /opt/opentelemetry-webserver/source-conf
103+
command:
104+
- /bin/sh
105+
- -c
106+
name: otel-agent-source-container-clone
107+
- args:
108+
- cp -r /opt/opentelemetry/* /opt/opentelemetry-webserver/agent && export agentLogDir=$(echo
109+
"/opt/opentelemetry-webserver/agent/logs" | sed 's,/,\\/,g') && cat /opt/opentelemetry-webserver/agent/conf/appdynamics_sdk_log4cxx.xml.template
110+
| sed 's/__agent_log_dir__/'${agentLogDir}'/g' > /opt/opentelemetry-webserver/agent/conf/appdynamics_sdk_log4cxx.xml
111+
&&echo "$OTEL_APACHE_AGENT_CONF" > /opt/opentelemetry-webserver/source-conf/opentemetry_agent.conf
112+
&& sed -i 's/<<SID-PLACEHOLDER>>/'${APACHE_SERVICE_INSTANCE_ID}'/g' /opt/opentelemetry-webserver/source-conf/opentemetry_agent.conf
113+
&& echo 'Include /usr/local/apache2/conf/opentemetry_agent.conf' >> /opt/opentelemetry-webserver/source-conf/httpd.conf
114+
command:
115+
- /bin/sh
116+
- -c
117+
env:
118+
- name: OTEL_APACHE_AGENT_CONF
119+
- name: APACHE_SERVICE_INSTANCE_ID
120+
valueFrom:
121+
fieldRef:
122+
apiVersion: v1
123+
fieldPath: metadata.name
124+
name: otel-agent-attach-apache
70125
status:
126+
containerStatuses:
127+
- name: myapp
128+
ready: true
129+
started: true
130+
- name: myrabbit
131+
ready: true
132+
started: true
133+
- name: otc-container
134+
ready: true
135+
started: true
136+
initContainerStatuses:
137+
- name: otel-agent-source-container-clone
138+
ready: true
139+
- name: otel-agent-attach-apache
140+
ready: true
71141
phase: Running
Original file line numberDiff line numberDiff line change
@@ -1,27 +1,28 @@
1-
# skipping test, see https://github.com/open-telemetry/opentelemetry-operator/issues/1936
21
apiVersion: apps/v1
32
kind: Deployment
43
metadata:
5-
name: my-apache
4+
name: my-apache-multi
65
spec:
76
selector:
87
matchLabels:
9-
app: my-apache
8+
app: my-apache-multi
109
replicas: 1
1110
template:
1211
metadata:
1312
labels:
14-
app: my-apache
13+
app: my-apache-multi
1514
annotations:
1615
sidecar.opentelemetry.io/inject: "true"
1716
instrumentation.opentelemetry.io/inject-apache-httpd: "true"
1817
instrumentation.opentelemetry.io/container-names: "myapp,myrabbit"
1918
spec:
19+
securityContext:
20+
runAsUser: 1000
21+
runAsGroup: 3000
22+
fsGroup: 3000
2023
containers:
2124
- name: myapp
22-
image: docker.io/chrlic/apache-test@sha256:fad58c6ce7a4f477b455bece2a1980741fa6f81cef1e1093a3b72f9b2ffa7b8e
23-
# image source at https://github.com/cisco-open/appdynamics-k8s-webhook-instrumentor/tree/main/testWorkloads/apache-httpd
24-
# licensed under Apache 2.0
25+
image: ghcr.io/open-telemetry/opentelemetry-operator/e2e-test-app-apache-httpd:main
2526
imagePullPolicy: Always
2627
ports:
2728
- containerPort: 8080
@@ -32,5 +33,13 @@ spec:
3233
requests:
3334
cpu: 250m
3435
memory: 100Mi
36+
securityContext:
37+
allowPrivilegeEscalation: false
38+
capabilities:
39+
drop: ["ALL"]
3540
- name: myrabbit
3641
image: rabbitmq
42+
securityContext:
43+
allowPrivilegeEscalation: false
44+
capabilities:
45+
drop: ["ALL"]

0 commit comments

Comments
 (0)