Skip to content

Commit ec7fd8e

Browse files
committed
Fixing deploy
1 parent 4c33f23 commit ec7fd8e

File tree

204 files changed

+5582
-10205
lines changed

Some content is hidden

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

204 files changed

+5582
-10205
lines changed

CHANGELOG.md

+92-3
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,103 @@
11
# Changelog
22

33
Please update changelog as part of any significant pull request. Place short
4-
description of your change into "Unreleased" section. As part of release process
5-
content of "Unreleased" section content will generate release notes for the
6-
release.
4+
description of your change into "Unreleased" section. As part of release
5+
process content of "Unreleased" section content will generate release notes for
6+
the release.
77

88
## Unreleased
99

10+
* [featureflag] deprecate in favor of flagd
11+
([#1338](https://github.com/open-telemetry/opentelemetry-demo/pull/1388))
12+
* [checkoutservice] add producer interceptor for tracing
13+
([#1400](https://github.com/open-telemetry/opentelemetry-demo/pull/1400))
14+
* [chore] increase memory for Collector and Jaeger
15+
([#1396](https://github.com/open-telemetry/opentelemetry-demo/pull/1396))
16+
* [chore] fix Make targets for restart and redeploy
17+
([#1397](https://github.com/open-telemetry/opentelemetry-demo/pull/1397))
18+
* [chore] add nightly releases
19+
([#1398](https://github.com/open-telemetry/opentelemetry-demo/pull/1398))
20+
* [checkoutservice] add producer interceptor for tracing
21+
([#1400](https://github.com/open-telemetry/opentelemetry-demo/pull/1400))
22+
* [productcatalogservice] fix graceful shutdown issues
23+
([#1402](https://github.com/open-telemetry/opentelemetry-demo/pull/1402))
24+
* [chore] remove unused integration test
25+
([#1406](https://github.com/open-telemetry/opentelemetry-demo/pull/1406))
26+
* [CartService] - Add Host Detector
27+
([#1415](https://github.com/open-telemetry/opentelemetry-demo/pull/1415))
28+
29+
## 1.8.0
30+
31+
* [grafana] update grafana to 10.2.3
32+
([#1332](https://github.com/open-telemetry/opentelemetry-demo/pull/1332))
33+
* [frontendproxy] Enable envoy environment resource detector
34+
([#1291](https://github.com/open-telemetry/opentelemetry-demo/pull/1291))
35+
* [currencyservice] - add package name prefix to `rpc.service` attribute
36+
([#1333](https://github.com/open-telemetry/opentelemetry-demo/pull/1333))
37+
* [currency] fix metric exporter options
38+
([#1335](https://github.com/open-telemetry/opentelemetry-demo/pull/1335))
39+
* [ffspostgres] define and use demo specific postgres image
40+
([#1338](https://github.com/open-telemetry/opentelemetry-demo/pull/1338))
41+
* [loadgenerator, frontend] enable browser traffic in loadgenerator using playwright
42+
([#1345](https://github.com/open-telemetry/opentelemetry-demo/pull/1345))
43+
* [accountingservice] update wiki link
44+
([#1346](https://github.com/open-telemetry/opentelemetry-demo/pull/1346))
45+
* [checkoutservice] update wiki link
46+
([#1346](https://github.com/open-telemetry/opentelemetry-demo/pull/1346))
47+
* [productcatalogservice] update wiki link
48+
([#1346](https://github.com/open-telemetry/opentelemetry-demo/pull/1346))
49+
* [adservice] added group and anonymous read permission to
50+
opentelemetry-javaagent.jar
51+
([#1348](https://github.com/open-telemetry/opentelemetry-demo/pull/1348))
52+
* [frauddetectionservice] added group and anonymous read permission to
53+
opentelemetry-javaagent.jar
54+
([#1348](https://github.com/open-telemetry/opentelemetry-demo/pull/1348))
55+
* [adservice] Major version update for Java instrumentation, version 2.0.0
56+
([#1352](https://github.com/open-telemetry/opentelemetry-demo/pull/1352))
57+
* [frauddetectionservice] Major version update for Java instrumentation,
58+
version 2.0.0
59+
([#1352](https://github.com/open-telemetry/opentelemetry-demo/pull/1352))
60+
* [kafka] Major version update for Java instrumentation, version 2.0.0
61+
([#1352](https://github.com/open-telemetry/opentelemetry-demo/pull/1352))
62+
* Align env variables for OTLP ports
63+
([#1353](https://github.com/open-telemetry/opentelemetry-demo/pull/1353))
64+
* Update dependent services - Collector, Grafana, Jaeger, Prometheus, etc.
65+
([#1354](https://github.com/open-telemetry/opentelemetry-demo/pull/1354))
66+
* [OpenSearch] Use native OpenSearch exporter from Collector
67+
([#1356](https://github.com/open-telemetry/opentelemetry-demo/pull/1356))
68+
* Update GO SDKs & fix metrics config
69+
([#1357](https://github.com/open-telemetry/opentelemetry-demo/pull/1357))
70+
* Update Python SDKs
71+
([#1358](https://github.com/open-telemetry/opentelemetry-demo/pull/1358))
72+
* [loadgenerator] fix browser traffic enabled flag
73+
([#1359](https://github.com/open-telemetry/opentelemetry-demo/pull/1359))
74+
* [productcatalog] allow products to be extended
75+
([#1363](https://github.com/open-telemetry/opentelemetry-demo/pull/1363))
76+
* [tests] update trace based tests for semantic conventions
77+
([#1377](https://github.com/open-telemetry/opentelemetry-demo/pull/1377))
78+
* [currencyservice] Add OTLP logs
79+
([#1378](https://github.com/open-telemetry/opentelemetry-demo/pull/1378))
80+
* [cartservice] update .NET to .NET 8.0.2
81+
([#1380](https://github.com/open-telemetry/opentelemetry-demo/pull/1380))
82+
83+
## 1.7.2
84+
85+
* [cartservice] update .NET package to 1.7.0 release
86+
([#1326](https://github.com/open-telemetry/opentelemetry-demo/pull/1326))
87+
* [loadgenerator and recommendationservice] Update python base image
88+
([#1329](https://github.com/open-telemetry/opentelemetry-demo/pull/1329))
89+
90+
## 1.7.1
91+
92+
* [grafana] revert to 10.2.0
1093
* [cartservice] disable config reload
1194
([#1312](https://github.com/open-telemetry/opentelemetry-demo/pull/1312))
95+
* [cartservice] fixed cartServiceFailure feature flag
96+
([#1313](https://github.com/open-telemetry/opentelemetry-demo/pull/1313))
97+
* [accountingservice] Update dependencies and semconv
98+
* ([#1316](https://github.com/open-telemetry/opentelemetry-demo/pull/1316))
99+
* [featureflagservice] Allow setting initial feature flag values
100+
([#1319](https://github.com/open-telemetry/opentelemetry-demo/pull/1319))
12101

13102
## 1.7.0
14103

CONTRIBUTING.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -113,7 +113,7 @@ GitHub pull requests (PRs).
113113

114114
To create a new PR, fork the project in GitHub and clone the upstream repo:
115115

116-
> **Note**
116+
> [!NOTE]
117117
> Please fork to a personal GitHub account rather than a corporate/enterprise
118118
> one so maintainers can push commits to your branch.
119119
> **Pull requests from protected forks will not be accepted.**

Makefile

+36-5
Original file line numberDiff line numberDiff line change
@@ -95,11 +95,12 @@ build-env-file:
9595
sed -i '/IMAGE_VERSION=.*/c\IMAGE_VERSION=${RELEASE_VERSION}' .ghcr.env
9696
sed -i '/IMAGE_NAME=.*/c\IMAGE_NAME=${GHCR_REPO}' .ghcr.env
9797

98+
.PHONY: run-tests
9899
run-tests:
99100
docker compose run frontendTests
100-
docker compose run integrationTests
101101
docker compose run traceBasedTests
102102

103+
.PHONY: run-tracetesting
103104
run-tracetesting:
104105
docker compose run traceBasedTests ${SERVICES_TO_TEST}
105106

@@ -161,10 +162,40 @@ stop:
161162
@echo ""
162163
@echo "OpenTelemetry Demo is stopped."
163164

164-
165-
# Use to rebuild and restart a single service component
165+
# Use to restart a single service component
166166
# Example: make restart service=frontend
167167
.PHONY: restart
168168
restart:
169-
# work with `service` or `SERVICE` as input
170-
./restart-service.sh ${service}${SERVICE}
169+
# work with `service` or `SERVICE` as input
170+
ifdef SERVICE
171+
service := $(SERVICE)
172+
endif
173+
174+
ifdef service
175+
docker compose stop $(service)
176+
docker compose rm --force $(service)
177+
docker compose create $(service)
178+
docker compose start $(service)
179+
else
180+
@echo "Please provide a service name using `service=[service name]` or `SERVICE=[service name]`"
181+
endif
182+
183+
# Use to rebuild and restart (redeploy) a single service component
184+
# Example: make redeploy service=frontend
185+
.PHONY: redeploy
186+
redeploy:
187+
# work with `service` or `SERVICE` as input
188+
ifdef SERVICE
189+
service := $(SERVICE)
190+
endif
191+
192+
ifdef service
193+
docker compose build $(service)
194+
docker compose stop $(service)
195+
docker compose rm --force $(service)
196+
docker compose create $(service)
197+
docker compose start $(service)
198+
else
199+
@echo "Please provide a service name using `service=[service name]` or `SERVICE=[service name]`"
200+
endif
201+

README.md

+12-9
Original file line numberDiff line numberDiff line change
@@ -57,14 +57,15 @@ keeping it up to date for you.
5757
| | | |
5858
|-----------------------------------------|-----------------------------|----------------------------------------------------------------|
5959
| [AlibabaCloud LogService][AlibabaCloud] | [Elastic][Elastic] | [OpenSearch][OpenSearch] |
60-
| [AppDynamics][AppDynamics] | [Grafana Labs][GrafanaLabs] | [Sentry][Sentry] |
61-
| [Aspecto][Aspecto] | [Guance][Guance] | [ServiceNow Cloud Observability][ServiceNowCloudObservability] |
62-
| [Axiom][Axiom] | [Helios][Helios] | [Splunk][Splunk] |
63-
| [Axoflow][Axoflow] | [Honeycomb.io][Honeycombio] | [Sumo Logic][SumoLogic] |
64-
| [Azure Data Explorer][Azure] | [Instana][Instana] | [TelemetryHub][TelemetryHub] |
65-
| [Coralogix][Coralogix] | [Kloudfuse][Kloudfuse] | [Teletrace][Teletrace] |
66-
| [Datadog][Datadog] | [Logz.io][Logzio] | [Tracetest][Tracetest] |
67-
| [Dynatrace][Dynatrace] | [New Relic][NewRelic] | [Uptrace][Uptrace] |
60+
| [AppDynamics][AppDynamics] | [Google Cloud][GoogleCloud] | [Sentry][Sentry] |
61+
| [Aspecto][Aspecto] | [Grafana Labs][GrafanaLabs] | [ServiceNow Cloud Observability][ServiceNowCloudObservability] |
62+
| [Axiom][Axiom] | [Guance][Guance] | [Splunk][Splunk] |
63+
| [Axoflow][Axoflow] | [Helios][Helios] | [Sumo Logic][SumoLogic] |
64+
| [Azure Data Explorer][Azure] | [Honeycomb.io][Honeycombio] | [TelemetryHub][TelemetryHub] |
65+
| [Coralogix][Coralogix] | [Instana][Instana] | [Teletrace][Teletrace] |
66+
| [Dash0][Dash0] | [Kloudfuse][Kloudfuse] | [Tracetest][Tracetest] |
67+
| [Datadog][Datadog] | [Logz.io][Logzio] | [Uptrace][Uptrace] |
68+
| [Dynatrace][Dynatrace] | [New Relic][NewRelic] | |
6869

6970
## Contributing
7071

@@ -79,7 +80,7 @@ Monday at 8:30 AM PST and anyone is welcome.
7980

8081
- [Austin Parker](https://github.com/austinlparker), Honeycomb
8182
- [Carter Socha](https://github.com/cartersocha), Lightstep
82-
- [Juliano Costa](https://github.com/julianocosta89), Dynatrace
83+
- [Juliano Costa](https://github.com/julianocosta89), Datadog
8384
- [Pierre Tessier](https://github.com/puckpuck), Honeycomb
8485

8586
[Approvers](https://github.com/open-telemetry/community/blob/main/community-membership.md#approver)
@@ -111,9 +112,11 @@ Emeritus:
111112
[Axoflow]: https://axoflow.com/opentelemetry-support-in-more-detail-in-axosyslog-and-syslog-ng/
112113
[Azure]: https://github.com/Azure/Azure-kusto-opentelemetry-demo
113114
[Coralogix]: https://coralogix.com/blog/configure-otel-demo-send-telemetry-data-coralogix
115+
[Dash0]: https://github.com/dash0hq/opentelemetry-demo
114116
[Datadog]: https://github.com/DataDog/opentelemetry-demo
115117
[Dynatrace]: https://www.dynatrace.com/news/blog/opentelemetry-demo-application-with-dynatrace/
116118
[Elastic]: https://github.com/elastic/opentelemetry-demo
119+
[GoogleCloud]: https://github.com/GoogleCloudPlatform/opentelemetry-demo
117120
[GrafanaLabs]: https://github.com/grafana/opentelemetry-demo
118121
[Guance]: https://github.com/GuanceCloud/opentelemetry-demo
119122
[Helios]: https://otelsandbox.gethelios.dev

ci/datadog-agent-ddvalues-prod.yaml

+22
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
agents:
2+
image:
3+
tag: 7.51.0-rc.1
4+
tagSuffix: jmx
5+
datadog:
6+
apiKey: $DD_API_KEY
7+
logs:
8+
enabled: true
9+
otlp:
10+
receiver:
11+
protocols:
12+
grpc:
13+
enabled: true
14+
http:
15+
enabled: true
16+
env:
17+
- name: DD_API_KEY
18+
valueFrom:
19+
secretKeyRef:
20+
name: datadog-secrets
21+
key: api-key
22+
optional: false
+23
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
agents:
2+
image:
3+
repository: docker.io/datadog/agent-dev
4+
tag: stanley-liu-top-level-spans-poc-py3-jmx
5+
doNotCheckTag: true
6+
datadog:
7+
apiKey: $DD_API_KEY
8+
logs:
9+
enabled: true
10+
otlp:
11+
receiver:
12+
protocols:
13+
grpc:
14+
enabled: true
15+
http:
16+
enabled: true
17+
env:
18+
- name: DD_API_KEY
19+
valueFrom:
20+
secretKeyRef:
21+
name: datadog-secrets
22+
key: api-key
23+
optional: false
+6
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
agents:
2+
nodeSelector:
3+
alpha.eksctl.io/nodegroup-name: ng-7
4+
datadog:
5+
tags:
6+
- "env:dd-ingest-staging"

ci/datadog-agent-values-dd.yaml

+18
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
agents:
2+
image:
3+
tag: 7.51.0-rc.1
4+
tagSuffix: jmx
5+
datadog:
6+
apiKey: $DD_API_KEY
7+
apm:
8+
portEnabled: true
9+
port: 8126
10+
logs:
11+
enabled: true
12+
env:
13+
- name: DD_API_KEY
14+
valueFrom:
15+
secretKeyRef:
16+
name: datadog-secrets
17+
key: api-key
18+
optional: false

ci/datadog-agent-values-prod.yaml

+3
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
datadog:
2+
tags:
3+
- "env:otel-ingest"

ci/datadog-agent-values-staging.yaml

+6
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
agents:
2+
nodeSelector:
3+
alpha.eksctl.io/nodegroup-name: ng-4
4+
datadog:
5+
tags:
6+
- "env:otel-ingest-staging"

ci/scripts/ci-deploy-agent.sh

+34
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
#!/usr/bin/env bash
2+
3+
# Copyright The OpenTelemetry Authors
4+
# SPDX-License-Identifier: Apache-2.0
5+
6+
# This script is used to deploy collector on demo account cluster
7+
8+
set -euo pipefail
9+
IFS=$'\n\t'
10+
11+
clusterName=$CLUSTER_NAME
12+
clusterArn=$CLUSTER_ARN
13+
region=$REGION
14+
namespace=$NAMESPACE
15+
releaseName=$RELEASE_NAME
16+
ddValues=$DD_VALUES
17+
values=$VALUES
18+
19+
install_agent() {
20+
# if repo already exists, helm 3+ will skip
21+
helm repo add datadog https://helm.datadoghq.com
22+
23+
# --install will run `helm install` if not already present.
24+
helm upgrade "${releaseName}" -n "${namespace}" datadog/datadog --install \
25+
-f "${ddValues}" \
26+
-f "${values}"
27+
}
28+
29+
###########################################################################################################
30+
31+
aws eks --region "${region}" update-kubeconfig --name "${clusterName}"
32+
kubectl config use-context "${clusterArn}"
33+
34+
install_agent

ci/scripts/ci-deploy-demo-staging.sh

+48
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
#!/usr/bin/env bash
2+
3+
# Copyright The OpenTelemetry Authors
4+
# SPDX-License-Identifier: Apache-2.0
5+
6+
# This script is used to deploy collector on demo account cluster
7+
8+
set -euo pipefail
9+
IFS=$'\n\t'
10+
set -x
11+
12+
clusterName=$CLUSTER_NAME
13+
clusterArn=$CLUSTER_ARN
14+
region=$REGION
15+
namespace=$NAMESPACE
16+
nodeGroup=$NODE_GROUP
17+
values=$VALUES
18+
19+
install_demo() {
20+
# Set the namespace and release name
21+
release_name="opentelemetry-demo"
22+
23+
# Deploy zookeeper which is not a default component.
24+
sed -i "s/PLACEHOLDER_NODE_GROUP/$nodeGroup/g" ./src/zookeeperservice/deployment-staging.yaml
25+
kubectl apply -f ./src/zookeeperservice/deployment-staging.yaml -n "${namespace}"
26+
27+
# if repo already exists, helm 3+ will skip
28+
helm --debug repo add open-telemetry https://open-telemetry.github.io/opentelemetry-helm-charts
29+
30+
# --install will run `helm install` if not already present.
31+
helm --debug upgrade "${release_name}" -n "${namespace}" open-telemetry/opentelemetry-demo --install \
32+
-f ./ci/values.yaml \
33+
-f $values \
34+
--set-string default.image.tag="v$CI_COMMIT_SHORT_SHA" \
35+
--set-string default.image.repository="601427279990.dkr.ecr.us-east-1.amazonaws.com/otel-demo"
36+
37+
# Deploy java order producer which is not a default component.
38+
sed -i "s/PLACEHOLDER_COMMIT_SHA/v$CI_COMMIT_SHORT_SHA/g" ./src/orderproducerservice/deployment-staging.yaml
39+
sed -i "s/PLACEHOLDER_NODE_GROUP/$nodeGroup/g" ./src/orderproducerservice/deployment-staging.yaml
40+
kubectl apply -f ./src/orderproducerservice/deployment-staging.yaml -n "${namespace}"
41+
}
42+
43+
###########################################################################################################
44+
45+
aws eks --region "${region}" update-kubeconfig --name "${clusterName}"
46+
kubectl config use-context "${clusterArn}"
47+
48+
install_demo

0 commit comments

Comments
 (0)