File tree 9 files changed +256
-0
lines changed
9 files changed +256
-0
lines changed Original file line number Diff line number Diff line change
1
+ apiVersion : opentelemetry.io/v1alpha1
2
+ kind : OpenTelemetryCollector
3
+ metadata :
4
+ name : sidecar
5
+ spec :
6
+ config : |
7
+ receivers:
8
+ otlp:
9
+ protocols:
10
+ grpc:
11
+ http:
12
+ processors:
13
+
14
+ exporters:
15
+ debug:
16
+
17
+ service:
18
+ pipelines:
19
+ traces:
20
+ receivers: [otlp]
21
+ processors: []
22
+ exporters: [debug]
23
+ mode : sidecar
Original file line number Diff line number Diff line change
1
+ apiVersion : opentelemetry.io/v1alpha1
2
+ kind : Instrumentation
3
+ metadata :
4
+ name : sdk-only
5
+ spec :
6
+ exporter :
7
+ endpoint : http://localhost:4317
Original file line number Diff line number Diff line change
1
+ apiVersion : v1
2
+ kind : Pod
3
+ metadata :
4
+ annotations :
5
+ instrumentation.opentelemetry.io/inject-sdk : " true"
6
+ sidecar.opentelemetry.io/inject : " true"
7
+ labels :
8
+ app : my-deploy
9
+ spec :
10
+ (containers[?name == 'myapp']) :
11
+ - name : myapp
12
+ env :
13
+ - name : OTEL_SERVICE_NAME
14
+ value : my-deploy
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_RESOURCE_ATTRIBUTES
28
+ value :
29
+ ( contains(@, 'k8s.container.name=myapp') ) : true
30
+ ( contains(@, 'k8s.pod.name=$(OTEL_RESOURCE_ATTRIBUTES_POD_NAME)') ) : true
31
+ ( contains(@, 'k8s.replicaset.name=my-deploy-') ) : true
32
+ ( contains(@, 'k8s.deployment.name=my-deploy') ) : true
33
+ ( contains(@, concat('k8s.namespace.name=', $namespace)) ) : true
34
+ ( contains(@, 'k8s.node.name=$(OTEL_RESOURCE_ATTRIBUTES_NODE_NAME)') ) : true
35
+ ( contains(@, 'service.version=main') ) : true
Original file line number Diff line number Diff line change
1
+ apiVersion : apps/v1
2
+ kind : Deployment
3
+ metadata :
4
+ name : my-deploy
5
+ spec :
6
+ selector :
7
+ matchLabels :
8
+ app : my-deploy
9
+ replicas : 1
10
+ template :
11
+ metadata :
12
+ labels :
13
+ app : my-deploy
14
+ annotations :
15
+ sidecar.opentelemetry.io/inject : " true"
16
+ instrumentation.opentelemetry.io/inject-sdk : " true"
17
+ spec :
18
+ containers :
19
+ - name : myapp
20
+ image : ghcr.io/open-telemetry/opentelemetry-operator/e2e-test-app-python:main
Original file line number Diff line number Diff line change
1
+ apiVersion : v1
2
+ kind : Pod
3
+ metadata :
4
+ annotations :
5
+ instrumentation.opentelemetry.io/inject-sdk : " true"
6
+ sidecar.opentelemetry.io/inject : " true"
7
+ labels :
8
+ job-name : my-cron-job-exec
9
+ ownerReferences :
10
+ - apiVersion : batch/v1
11
+ kind : Job
12
+ name : my-cron-job-exec
13
+ spec :
14
+ (containers[?name == 'myapp']) :
15
+ - name : myapp
16
+ env :
17
+ - name : OTEL_SERVICE_NAME
18
+ value : my-cron-job
19
+ - name : OTEL_EXPORTER_OTLP_ENDPOINT
20
+ - name : OTEL_RESOURCE_ATTRIBUTES_POD_NAME
21
+ valueFrom :
22
+ fieldRef :
23
+ apiVersion : v1
24
+ fieldPath : metadata.name
25
+ - name : OTEL_RESOURCE_ATTRIBUTES_NODE_NAME
26
+ valueFrom :
27
+ fieldRef :
28
+ apiVersion : v1
29
+ fieldPath : spec.nodeName
30
+ - name : OTEL_RESOURCE_ATTRIBUTES
31
+ value :
32
+ ( contains(@, 'k8s.container.name=myapp') ) : true
33
+ ( contains(@, 'k8s.pod.name=$(OTEL_RESOURCE_ATTRIBUTES_POD_NAME)') ) : true
34
+ ( contains(@, 'k8s.job.name=my-cron-job-exec') ) : true
35
+ ( contains(@, 'k8s.cronjob.name=my-cron-job') ) : true
36
+ ( contains(@, concat('k8s.namespace.name=', $namespace)) ) : true
37
+ ( contains(@, 'k8s.node.name=$(OTEL_RESOURCE_ATTRIBUTES_NODE_NAME)') ) : true
38
+ ( contains(@, 'service.version=main') ) : true
Original file line number Diff line number Diff line change
1
+ apiVersion : batch/v1
2
+ kind : CronJob
3
+ metadata :
4
+ name : my-cron-job
5
+ spec :
6
+ schedule : " * * * * *"
7
+ suspend : true
8
+ jobTemplate :
9
+ spec :
10
+ template :
11
+ metadata :
12
+ annotations :
13
+ sidecar.opentelemetry.io/inject : " true"
14
+ instrumentation.opentelemetry.io/inject-sdk : " true"
15
+ spec :
16
+ restartPolicy : Never
17
+ containers :
18
+ - name : myapp
19
+ image : ghcr.io/open-telemetry/opentelemetry-operator/e2e-test-app-python:main
20
+ imagePullPolicy : IfNotPresent
21
+ command :
22
+ - echo
23
+ - ok
Original file line number Diff line number Diff line change
1
+ apiVersion : v1
2
+ kind : Pod
3
+ metadata :
4
+ annotations :
5
+ instrumentation.opentelemetry.io/inject-sdk : " true"
6
+ sidecar.opentelemetry.io/inject : " true"
7
+ labels :
8
+ job-name : my-job
9
+ ownerReferences :
10
+ - apiVersion : batch/v1
11
+ kind : Job
12
+ name : my-job
13
+ spec :
14
+ (containers[?name == 'myapp']) :
15
+ - name : myapp
16
+ env :
17
+ - name : OTEL_SERVICE_NAME
18
+ value : my-job
19
+ - name : OTEL_EXPORTER_OTLP_ENDPOINT
20
+ - name : OTEL_RESOURCE_ATTRIBUTES_POD_NAME
21
+ valueFrom :
22
+ fieldRef :
23
+ apiVersion : v1
24
+ fieldPath : metadata.name
25
+ - name : OTEL_RESOURCE_ATTRIBUTES_NODE_NAME
26
+ valueFrom :
27
+ fieldRef :
28
+ apiVersion : v1
29
+ fieldPath : spec.nodeName
30
+ - name : OTEL_RESOURCE_ATTRIBUTES
31
+ value :
32
+ ( contains(@, 'k8s.container.name=myapp') ) : true
33
+ ( contains(@, 'k8s.pod.name=$(OTEL_RESOURCE_ATTRIBUTES_POD_NAME)') ) : true
34
+ ( contains(@, 'k8s.job.name=my-job') ) : true
35
+ ( contains(@, concat('k8s.namespace.name=', $namespace)) ) : true
36
+ ( contains(@, 'k8s.node.name=$(OTEL_RESOURCE_ATTRIBUTES_NODE_NAME)') ) : true
37
+ ( contains(@, 'service.version=main') ) : true
Original file line number Diff line number Diff line change
1
+ apiVersion : batch/v1
2
+ kind : Job
3
+ metadata :
4
+ name : my-job
5
+ spec :
6
+ template :
7
+ metadata :
8
+ annotations :
9
+ sidecar.opentelemetry.io/inject : " true"
10
+ instrumentation.opentelemetry.io/inject-sdk : " true"
11
+ spec :
12
+ restartPolicy : Never
13
+ containers :
14
+ - name : myapp
15
+ image : ghcr.io/open-telemetry/opentelemetry-operator/e2e-test-app-python:main
16
+ imagePullPolicy : IfNotPresent
17
+ command :
18
+ - echo
19
+ - ok
Original file line number Diff line number Diff line change
1
+ # yaml-language-server: $schema=https://raw.githubusercontent.com/kyverno/chainsaw/main/.schemas/json/test-chainsaw-v1alpha1.json
2
+ apiVersion : chainsaw.kyverno.io/v1alpha1
3
+ kind : Test
4
+ metadata :
5
+ creationTimestamp : null
6
+ name : service-name
7
+ spec :
8
+ steps :
9
+ - name : step-00
10
+ try :
11
+ - apply :
12
+ file : 00-install-collector.yaml
13
+ - apply :
14
+ file : 00-install-instrumentation.yaml
15
+ # Deployment
16
+ - name : step-01
17
+ try :
18
+ - apply :
19
+ file : 01-deployment.yaml
20
+ - assert :
21
+ file : 01-assert.yaml
22
+ catch :
23
+ - podLogs :
24
+ selector : app=my-deploy
25
+ # CronJob
26
+ - name : step-02
27
+ try :
28
+ - apply :
29
+ file : 02-cronjob.yaml
30
+ - command :
31
+ entrypoint : kubectl
32
+ args :
33
+ - -n
34
+ - ${NAMESPACE}
35
+ - create
36
+ - job
37
+ - --from
38
+ - cronjob/my-cron-job
39
+ - my-cron-job-exec
40
+ - assert :
41
+ file : 02-assert.yaml
42
+ catch :
43
+ - podLogs :
44
+ selector : job-name=my-cron-job-exec
45
+ # Job
46
+ - name : step-03
47
+ try :
48
+ - apply :
49
+ file : 03-job.yaml
50
+ - assert :
51
+ file : 03-assert.yaml
52
+ catch :
53
+ - podLogs :
54
+ selector : job-name=my-job
You can’t perform that action at this time.
0 commit comments