Skip to content

Commit a8e5049

Browse files
committed
Merge branch 'main' into main-merge
* main: (138 commits) docs: update sig meeting schedule (open-telemetry#1567) chore(deps): upgrade otel collector contrib and opensearch (open-telemetry#1566) fix(loadgenerator): use add_hooks openfeature method (open-telemetry#1565) Revert "remove axoflow link (open-telemetry#1457)" (open-telemetry#1563) feat: configure feature flag tracing for Python services (open-telemetry#1553) chore(deps): upgrade go dependencies to latest versions (open-telemetry#1561) remove deprecated version property (open-telemetry#1557) chore(deps): upgrade otel collector contrib, grafana and prometheus (open-telemetry#1559) add imageprovider (open-telemetry#1552) [flagd] - upgrade to latest version and memory limits (open-telemetry#1554) update kubernetes manifest to 1.9.0 (open-telemetry#1555) [chore] specify default value for tracetest image version (open-telemetry#1551) improve baggage propagation (open-telemetry#1545) Bump gradle/wrapper-validation-action from 3.3.1 to 3.3.2 (open-telemetry#1548) [kafka][checkoutservice][frauddetectionservice] add kafkaQueueProblems featureflag (open-telemetry#1528) fix(productcatalogservice): handle err returned from openfeature.SetProvider func (open-telemetry#1535) feat(otelcol): add redisreceiver (open-telemetry#1537) chore(deps): upgrade opentelemetry-java-instrumentation for kafka to 2.3.0 (open-telemetry#1533) Bump gradle/wrapper-validation-action from 3.3.0 to 3.3.1 (open-telemetry#1539) chore(deps): upgrade opentelemetry-java-instrumentation to 2.3.0 (open-telemetry#1532) ... # Conflicts: # docker-compose.minimal.yml # src/frontend/package-lock.json
2 parents 11e4141 + 3c665d3 commit a8e5049

File tree

222 files changed

+8435
-25364
lines changed

Some content is hidden

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

222 files changed

+8435
-25364
lines changed

.env

+22-10
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,20 @@
11

22

3-
# Images
4-
IMAGE_VERSION=1.7.1
3+
# Demo App version
4+
IMAGE_VERSION=1.9.0
55
IMAGE_NAME=ghcr.io/open-telemetry/demo
6-
TRACETEST_IMAGE_VERSION=v0.14.5
6+
DEMO_VERSION=latest
7+
8+
# Dependent images
9+
COLLECTOR_CONTRIB_IMAGE=otel/opentelemetry-collector-contrib:0.100.0
10+
GRAFANA_IMAGE=grafana/grafana:10.4.2
11+
JAEGERTRACING_IMAGE=jaegertracing/all-in-one:1.55
12+
# must also update version field in ./src/grafana/provisioning/datasources/opensearch.yml
13+
OPENSEARCH_IMAGE=opensearchproject/opensearch:2.13.0
14+
POSTGRES_IMAGE=postgres:16.2
15+
PROMETHEUS_IMAGE=quay.io/prometheus/prometheus:v2.51.2
16+
REDIS_IMAGE=redis:7.2-alpine
17+
TRACETEST_IMAGE=kubeshop/tracetest:v1.0.0
718

819
# Demo Platform
920
ENV_PLATFORM=local
@@ -44,13 +55,6 @@ CURRENCY_SERVICE_ADDR=currencyservice:${CURRENCY_SERVICE_PORT}
4455
EMAIL_SERVICE_PORT=6060
4556
EMAIL_SERVICE_ADDR=http://emailservice:${EMAIL_SERVICE_PORT}
4657

47-
# Feature Flag Service
48-
FEATURE_FLAG_SERVICE_PORT=8081
49-
FEATURE_FLAG_SERVICE_ADDR=featureflagservice:${FEATURE_FLAG_SERVICE_PORT}
50-
FEATURE_FLAG_SERVICE_HOST=feature-flag-service
51-
FEATURE_FLAG_GRPC_SERVICE_PORT=50053
52-
FEATURE_FLAG_GRPC_SERVICE_ADDR=featureflagservice:${FEATURE_FLAG_GRPC_SERVICE_PORT}
53-
5458
# Frontend
5559
FRONTEND_PORT=8080
5660
FRONTEND_ADDR=frontend:${FRONTEND_PORT}
@@ -60,6 +64,10 @@ FRONTEND_HOST=frontend
6064
ENVOY_PORT=8080
6165
FRONTEND_PROXY_ADDR=frontend-proxy:${ENVOY_PORT}
6266

67+
# Image Provider
68+
IMAGE_PROVIDER_HOST=imageprovider
69+
IMAGE_PROVIDER_PORT=8081
70+
6371
# Load Generator
6472
LOCUST_WEB_PORT=8089
6573
LOCUST_USERS=10
@@ -95,6 +103,10 @@ LOGIN_SERVICE_ADDR=http://loginservice:${LOGIN_SERVICE_PORT}
95103
# ******************
96104
# Dependent Services
97105
# ******************
106+
# flagd
107+
FLAGD_HOST=flagd
108+
FLAGD_PORT=8013
109+
98110
# Kafka
99111
KAFKA_SERVICE_PORT=9092
100112
KAFKA_SERVICE_ADDR=kafka:${KAFKA_SERVICE_PORT}

.github/workflows/assign-reviewers.yml

+1
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ on:
1212

1313
jobs:
1414
assign-reviewers:
15+
if: github.repository == 'open-telemetry/opentelemetry-demo'
1516
runs-on: ubuntu-latest
1617
steps:
1718
- uses: dyladan/component-owners@main

.github/workflows/build-images.yml

+26-27
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ on:
2121

2222
jobs:
2323
build_and_push_images:
24+
if: github.repository == 'open-telemetry/opentelemetry-demo'
2425
runs-on: ubuntu-latest
2526
permissions:
2627
contents: read
@@ -35,6 +36,10 @@ jobs:
3536
fail-fast: false
3637
matrix:
3738
file_tag:
39+
- file: ./src/accountingservice/Dockerfile
40+
tag_suffix: accountingservice
41+
context: ./
42+
setup-qemu: true
3843
- file: ./src/adservice/Dockerfile
3944
tag_suffix: adservice
4045
context: ./
@@ -49,18 +54,14 @@ jobs:
4954
setup-qemu: true
5055
- file: ./src/currencyservice/Dockerfile
5156
tag_suffix: currencyservice
52-
context: ./src/currencyservice
57+
context: ./
5358
setup-qemu: true
5459
- file: ./src/emailservice/Dockerfile
5560
tag_suffix: emailservice
5661
context: ./src/emailservice
5762
setup-qemu: true
58-
# NOTE:
59-
# https://github.com/open-telemetry/opentelemetry-demo/issues/956
60-
# Until dedicated ARM runners are available for GHA we cannot upgrade
61-
# OTP/Elixir versions. Please do not change the OTP/Elixir versions.
62-
- file: ./src/featureflagservice/Dockerfile
63-
tag_suffix: featureflagservice
63+
- file: ./src/frauddetectionservice/Dockerfile
64+
tag_suffix: frauddetectionservice
6465
context: ./
6566
setup-qemu: true
6667
- file: ./src/frontend/Dockerfile
@@ -71,6 +72,18 @@ jobs:
7172
tag_suffix: frontendproxy
7273
context: ./
7374
setup-qemu: true
75+
- file: ./src/frontend/Dockerfile.cypress
76+
tag_suffix: frontend-tests
77+
context: ./
78+
setup-qemu: true
79+
- file: ./src/imageprovider/Dockerfile
80+
tag_suffix: imageprovider
81+
context: ./
82+
setup-qemu: true
83+
- file: ./src/kafka/Dockerfile
84+
tag_suffix: kafka
85+
context: ./
86+
setup-qemu: true
7487
- file: ./src/loadgenerator/Dockerfile
7588
tag_suffix: loadgenerator
7689
context: ./
@@ -87,32 +100,16 @@ jobs:
87100
tag_suffix: quoteservice
88101
context: ./
89102
setup-qemu: true
90-
- file: ./src/shippingservice/Dockerfile
91-
tag_suffix: shippingservice
92-
context: ./
93-
setup-qemu: true
94103
- file: ./src/recommendationservice/Dockerfile
95104
tag_suffix: recommendationservice
96105
context: ./
97106
setup-qemu: true
98-
- file: ./src/kafka/Dockerfile
99-
tag_suffix: kafka
100-
context: ./
101-
setup-qemu: true
102-
- file: ./src/accountingservice/Dockerfile
103-
tag_suffix: accountingservice
104-
context: ./
105-
setup-qemu: true
106-
- file: ./src/frauddetectionservice/Dockerfile
107-
tag_suffix: frauddetectionservice
108-
context: ./
109-
setup-qemu: true
110-
- file: ./src/frontend/Dockerfile.cypress
111-
tag_suffix: frontend-tests
107+
- file: ./src/shippingservice/Dockerfile
108+
tag_suffix: shippingservice
112109
context: ./
113110
setup-qemu: true
114-
- file: ./test/Dockerfile
115-
tag_suffix: integrationTests
111+
- file: ./test/tracetesting/Dockerfile
112+
tag_suffix: traceBasedTests
116113
context: ./
117114
setup-qemu: true
118115

@@ -170,6 +167,8 @@ jobs:
170167
push: ${{ inputs.push }}
171168
tags: |
172169
${{ env.DOCKERHUB_REPO }}:${{ inputs.version }}-${{matrix.file_tag.tag_suffix }}
170+
${{ env.DOCKERHUB_REPO }}:latest-${{matrix.file_tag.tag_suffix }}
173171
${{ env.GHCR_REPO }}:${{ inputs.version }}-${{ matrix.file_tag.tag_suffix }}
172+
${{ env.GHCR_REPO }}:latest-${{ matrix.file_tag.tag_suffix }}
174173
cache-from: type=gha
175174
cache-to: type=gha

.github/workflows/gradle-wrapper-validation.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -15,4 +15,4 @@ jobs:
1515
steps:
1616
- uses: actions/checkout@v4
1717

18-
- uses: gradle/wrapper-validation-action@v1.1.0
18+
- uses: gradle/wrapper-validation-action@v3.3.2

.github/workflows/label-pr.yml

+60
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,60 @@
1+
# Copyright The OpenTelemetry Authors
2+
# SPDX-License-Identifier: Apache-2.0
3+
# adds a label to a pull request if certain files are changed
4+
name: Label Pull Requests
5+
6+
on:
7+
pull_request_target:
8+
types: [opened, synchronize, reopened]
9+
10+
jobs:
11+
label:
12+
runs-on: ubuntu-latest
13+
permissions:
14+
pull-requests: write
15+
contents: read
16+
steps:
17+
- name: Checkout
18+
uses: actions/checkout@v2
19+
20+
- name: Check for changed files
21+
id: file_changes
22+
uses: dorny/paths-filter@v2
23+
with:
24+
list-files: shell
25+
filters: |
26+
docsUpdateRequired:
27+
- 'src/flagd/**'
28+
helmUpdateRequired:
29+
- '.env'
30+
- 'docker-compose*.yml'
31+
- 'src/flagd/**'
32+
- 'src/grafana/**'
33+
- 'src/otelcollector/**'
34+
- 'src/prometheus/**'
35+
36+
- name: "Add Label: docs-update-required"
37+
if: steps.file_changes.outputs.docsUpdateRequired == 'true'
38+
uses: actions/github-script@v7
39+
with:
40+
script: |
41+
const issue_number = context.issue.number;
42+
github.rest.issues.addLabels({
43+
issue_number: issue_number,
44+
owner: context.repo.owner,
45+
repo: context.repo.repo,
46+
labels: ['docs-update-required']
47+
})
48+
49+
- name: "Add Label: helm-update-required"
50+
if: steps.file_changes.outputs.helmUpdateRequired == 'true'
51+
uses: actions/github-script@v7
52+
with:
53+
script: |
54+
const issue_number = context.issue.number;
55+
github.rest.issues.addLabels({
56+
issue_number: issue_number,
57+
owner: context.repo.owner,
58+
repo: context.repo.repo,
59+
labels: ['helm-update-required']
60+
})

.github/workflows/nightly-release.yml

+17
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
# Copyright The OpenTelemetry Authors
2+
# SPDX-License-Identifier: Apache-2.0
3+
name: Nightly Release
4+
5+
on:
6+
schedule:
7+
# Runs at 00:00 UTC every day
8+
- cron: '0 0 * * *'
9+
10+
jobs:
11+
build_and_push_images:
12+
uses: ./.github/workflows/build-images.yml
13+
if: github.repository == 'open-telemetry/opentelemetry-demo'
14+
with:
15+
push: true
16+
version: nightly-${{ github.run_id }}
17+
secrets: inherit

.github/workflows/release.yml

+1
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ on:
99
jobs:
1010
build_and_push_images:
1111
uses: ./.github/workflows/build-images.yml
12+
if: github.repository == 'open-telemetry/opentelemetry-demo'
1213
with:
1314
push: true
1415
version: ${{ github.event.release.tag_name }}

.github/workflows/run-integration-tests.yml

+6-36
Original file line numberDiff line numberDiff line change
@@ -3,48 +3,18 @@
33
name: Integration Tests
44

55
on:
6-
pull_request_target:
7-
branches:
8-
- main
9-
types: [closed]
6+
pull_request_review:
7+
types:
8+
- submitted
109

1110
jobs:
12-
build_runner:
13-
runs-on: ubuntu-latest
14-
name: "Build Runner"
15-
if: github.event.pull_request.merged == true
16-
steps:
17-
- name: metal-runner-action
18-
uses: equinix-labs/metal-action-runner@v0.1.1
19-
with:
20-
github_token: ${{ secrets.GH_CI_SECRET }}
21-
metal_auth_token: ${{ secrets.METAL_AUTH_TOKEN }}
22-
metal_project_id: ${{ secrets.METAL_PROJECT_ID }}
23-
metro: "da"
24-
plan: "c3.small.x86"
25-
os: "ubuntu_20_04"
2611
run_tests:
27-
needs: build_runner
28-
runs-on: self-hosted
12+
runs-on: ubuntu-latest
2913
name: "Run CI"
14+
if: github.event.review.state == 'APPROVED'
3015
steps:
3116
- name: check out code
32-
uses: actions/checkout@v3
33-
- name: install docker
34-
run: |
35-
curl -fsSL https://get.docker.com -o get-docker.sh
36-
sudo sh get-docker.sh
17+
uses: actions/checkout@v4
3718
- name: run tracetesting
3819
run: |
3920
make build && make run-tracetesting
40-
destroy:
41-
needs: [build_runner, run_tests]
42-
runs-on: ubuntu-latest
43-
name: "Cleanup"
44-
steps:
45-
- name: metal-sweeper-action
46-
uses: equinix-labs/metal-sweeper-action@v0.6.1
47-
with:
48-
authToken: ${{ secrets.METAL_AUTH_TOKEN }}
49-
projectID: ${{ secrets.METAL_PROJECT_ID }}
50-
keepProject: true

.gitignore

+7
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,8 @@
1111
.DS_Store
1212
\#*\#
1313

14+
docker-compose.override.yml
15+
1416
# Eclipse
1517
.classpath
1618
.project
@@ -38,6 +40,7 @@ composer.lock
3840
src/frontend/cypress/videos
3941
src/frontend/cypress/screenshots
4042
src/shippingservice/target/
43+
test/tracetesting/tracetesting-vars.yaml
4144

4245
# Ignore copied/generated protobuf files
4346
/src/cartservice/src/protos/
@@ -51,3 +54,7 @@ src/shippingservice/target/
5154
/src/paymentservice/demo.proto
5255
/src/recommendationservice/demo_pb2*.py
5356
/src/shippingservice/proto/
57+
/src/productcatalogservice/genproto
58+
/src/currencyservice/proto
59+
/src/checkoutservice/genproto
60+
/src/accountingservice/genproto

.licenserc.json

+4
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,10 @@
2828
"# Copyright The OpenTelemetry Authors",
2929
"# SPDX-License-Identifier: Apache-2.0"
3030
],
31+
"**/*.sql": [
32+
"-- Copyright The OpenTelemetry Authors",
33+
"-- SPDX-License-Identifier: Apache-2.0"
34+
],
3135
"**/{Dockerfile,Makefile}": [
3236
"# Copyright The OpenTelemetry Authors",
3337
"# SPDX-License-Identifier: Apache-2.0"

0 commit comments

Comments
 (0)