Skip to content

Commit

Permalink
Merging upstream changes (#50)
Browse files Browse the repository at this point in the history
* [ffs] - Allow setting initial feature flag values (open-telemetry#1319)

* remove timestamps from FeatureFlag message

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* remove timestamps from FeatureFlag message

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* init feature flags using sql

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* allows initial feature flags values

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* Update src/ffs_postgres/20-ffs_data.sql

Co-authored-by: Juliano Costa <julianocosta89@outlook.com>

* Remove sporadically from cartServiceFailure

---------

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>
Co-authored-by: Juliano Costa <julianocosta89@outlook.com>

* Update affiliation (open-telemetry#1323)

* [cartservice] Bump OTel .NET SDK to 1.7.0 together with other dependencies (open-telemetry#1326)

* Bump .NET/.NET SDK docker images

* Bump OTel .NET SDK to 1.7.0
together with other .NET dependencies

* Changelog

* Fix changelog

* Re-generate protobuf to fix deprecated go modules (open-telemetry#1321)

* [loadgenerator and recommendationservice] Update python base image (open-telemetry#1329)

* update version numbers (open-telemetry#1331)

* [grafana] - update grafana to 10.2.3 (open-telemetry#1332)

* update grafana to 10.2.3

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* update grafana to 10.2.3

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

---------

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* [currency] - fix rpc.service attribute (open-telemetry#1333)

* add package name for rpc.service attribute

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* add package name for rpc.service attribute

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* add package name for rpc.service attribute

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* add package name for rpc.service attribute

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

---------

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* use GitHub markdown syntax (open-telemetry#1342)

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>
Co-authored-by: Juliano Costa <julianocosta89@outlook.com>

* [frontendproxy] enable envoy environment resource detector (open-telemetry#1291)

* enable envoy environment resource detector for frontendproxy

* use prod envoy and add changelog

* s/v1.29.0/v1.29-latest/

* Add OTEL_RESOURCE_ATTRIBUTES to docker compose defs

---------

Co-authored-by: Cedric Ziel <cedric@cedric-ziel.com>
Co-authored-by: Pierre Tessier <pierre@pierretessier.com>

* [currency] - fix metricreader export and temporality (open-telemetry#1335)

* default metricreader and exporter options

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* default metricreader and exporter options

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

---------

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>
Co-authored-by: Juliano Costa <julianocosta89@outlook.com>

* update to latest helm release (open-telemetry#1341)

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* [postgres] Define and use image for postgres (open-telemetry#1338)

* define and use postgres image

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* define and use postgres image

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* define and use postgres image

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* add postgres image

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

---------

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>
Co-authored-by: Juliano Costa <julianocosta89@outlook.com>

* Update wiki url (open-telemetry#1346)

* Update wiki url

* [accountingservice,checkoutservice,productcatalogservice] update wiki link

* Fix crashlooping for two services with insufficient privileges on opentelemetry-javaagent.jar. (open-telemetry#1348)

* These two services don't run as 'nobofy' due to root user alone having read/write permission on opentelemetry-javaagent.jar. This commit fixes it.

* Updated CHANGELOG.md

* Update CHANGELOG.md

---------

Co-authored-by: Juliano Costa <julianocosta89@outlook.com>

* Add browser traffic in loadgenerator and export traces in frontend (open-telemetry#1345)

* Add locust_plugins as a dependency

* Increased memory constraints and introduced LOCUST_BROWSER_TRAFFIC_ENABLED environment variable

* Added playwright on load generator docker image

* Inceased delay interval in milliseconds between two consecutive exports

* Use different otel endpoint when request contains the synthetic_request=true header

* Add locust example using playwright. The header synthetic_request is set to true to identify them in the frontend

* Updated changelog

* Use the same otelName (OTEL_COLLECTOR_HOST) for both k8s and docker

* Removed select option event

* Revert - Removed select option event

* Added IS_SYNTHETIC_REQUEST window.env used to set the span web attribute in FrontendTracer.ts

---------

Co-authored-by: Juliano Costa <julianocosta89@outlook.com>

* Major version update (version 2.0.0) for OTel Java instrumentation (open-telemetry#1352)

* Major version update (version 2.0.0) for OTel Java instrumentation for
adservice, frauddetectionservice, kafka

The new Java instrumentation uses HTTP as the default export protocol. This PR changes the Java services to export HTTP instead of gRPC.

The new Java instrumentation introduces a lot of new kafka.consumer.* metrics from frauddetectionservice.

* Add CHANGELOG

* Fix CHANGELOG. Update docker-compose.minimal.yml

---------

Co-authored-by: Juliano Costa <julianocosta89@outlook.com>

* Align env variables for OTLP ports (open-telemetry#1353)

* Align env variables for OTLP ports. No functional changes.

* Add CHANGELOG

---------

Co-authored-by: Juliano Costa <julianocosta89@outlook.com>

* Update dependent services - Collector, Grafana, Jaeger, Prometheus, etc. (open-telemetry#1354)

* Update dependent services - Collector, Grafana, Jaeger, Prometheus, etc.

Move those external service image paths and versions to .env file to make it easier to update them in the future for multiple docker compose files.

* Add CHANGELOG

---------

Co-authored-by: Juliano Costa <julianocosta89@outlook.com>

* [opensearch] - Use opensearch exporter & remove dataprepper (open-telemetry#1356)

* use opensearch native exporter

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* cleanup opensearch config

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* fix opensearch datasource

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* fix opensearch datasource

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* use opensearch exporter

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* remove dataprepper config files

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* remove opensearch auth details

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* opensearch memory limits

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* opensearch memory limits

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* remove dataprepper

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

---------

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* [chore] update Go SDKs, & fix metrics filters and transforms (open-telemetry#1357)

* update go SDKs

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* remove go metric filters and transforms

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* remove go metric filters and transforms

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

---------

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* build(go): upgrade golang:1.21.6 (open-telemetry#1360)

Co-authored-by: Pierre Tessier <pierre@pierretessier.com>

* [chore] update SDKs and remove metric transforms (open-telemetry#1358)

* update python sdks

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* remove python metric transform

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* update Python SDKs

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* fix trailing space

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

---------

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* always run cleanup job (open-telemetry#1366)

* [loadgenerator] fix browser traffic enabled flag (open-telemetry#1359)

* fix browser traffic enabled flag

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* fix browser traffic enabled flag

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

---------

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>
Co-authored-by: Juliano Costa <julianocosta89@outlook.com>

* Bump gradle/wrapper-validation-action from 1.1.0 to 2.0.1 (open-telemetry#1370)

Bumps [gradle/wrapper-validation-action](https://github.com/gradle/wrapper-validation-action) from 1.1.0 to 2.0.1.
- [Release notes](https://github.com/gradle/wrapper-validation-action/releases)
- [Commits](gradle/wrapper-validation-action@v1.1.0...v2.0.1)

---
updated-dependencies:
- dependency-name: gradle/wrapper-validation-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(go): update go 1.22 (open-telemetry#1367)

* Bump gradle/wrapper-validation-action from 2.0.1 to 2.1.0 (open-telemetry#1373)

Bumps [gradle/wrapper-validation-action](https://github.com/gradle/wrapper-validation-action) from 2.0.1 to 2.1.0.
- [Release notes](https://github.com/gradle/wrapper-validation-action/releases)
- [Commits](gradle/wrapper-validation-action@v2.0.1...v2.1.0)

---
updated-dependencies:
- dependency-name: gradle/wrapper-validation-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* [productcatalog] - allow products to be extended (open-telemetry#1363)

* allow products to be extended

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* allow products to be extended

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* fix products path

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* fix merge conflict

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

---------

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>
Co-authored-by: Juliano Costa <julianocosta89@outlook.com>

* Bump gradle/wrapper-validation-action from 2.1.0 to 2.1.1 (open-telemetry#1376)

Bumps [gradle/wrapper-validation-action](https://github.com/gradle/wrapper-validation-action) from 2.1.0 to 2.1.1.
- [Release notes](https://github.com/gradle/wrapper-validation-action/releases)
- [Commits](gradle/wrapper-validation-action@v2.1.0...v2.1.1)

---
updated-dependencies:
- dependency-name: gradle/wrapper-validation-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): upgrade go.opentelemetry.io/otel and go.opentelemetry.io/contrib to latest version (open-telemetry#1375)

Co-authored-by: Juliano Costa <julianocosta89@outlook.com>

* [chore] fix trace tests (open-telemetry#1377)

* add tracetesting vars

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* fix tests targets

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* update for semconv

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* update actions/checkout version

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* update trace based tests

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

---------

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* [cartservice] Bump .NET to 8.0.2 (open-telemetry#1380)

* [cartservice] bump dependencies

* [cartservice] Bump .NET to 8.0.2

* changelog

* Add Google Cloud fork to demos list (open-telemetry#1381)

* [currencyservice] Add OTLP logs (open-telemetry#1378)

* Add OTel logs to currencyservice

* line break

* changelog

* Move OPENTELEMETRY_CPP_VERSION back

* set opensearch version and timestamp field

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* add comment for opensearch version update

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* Change log to INFO

---------

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>
Co-authored-by: Pierre Tessier <pierre@pierretessier.com>

* prep for release (open-telemetry#1379)

* replace featureflag service with flagd

* remove ff from gha

* update changelog

* fix sanity checker

* add python

* fix sanity

* refactor(checkoutservice): reuse grpc service client (open-telemetry#1387)

* chore: use semantic convention v1.24.0 (open-telemetry#1385)

* chore(accountingservice): use semantic convention v1.24.0

* chore(checkoutservice): use semantic convention v1.24.0

---------

Co-authored-by: Austin Parker <austin@ap2.io>

* bump dependencies (open-telemetry#1390)

* Update trace test sem conv (open-telemetry#1394)

* update to 1.8.0 release (open-telemetry#1395)

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* [chore] make: fix restart, add redeploy targets (open-telemetry#1397)

* fix restart, add redeploy

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* fix restart, add redeploy

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* use service or SERVICE

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

---------

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* [chore] - memory for collector and jaeger (open-telemetry#1396)

* increase collector memory

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* increase collector memory

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* increase collector memory

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* increase collector memory

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

---------

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>
Co-authored-by: Austin Parker <austin@ap2.io>

* [chore]: nightly build and publish (open-telemetry#1398)

* nightly build and publish

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* add nightly releases

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

---------

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* use nightly releases (open-telemetry#1399)

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>
Co-authored-by: Austin Parker <austin@ap2.io>

* [chore]: remove integration tests (open-telemetry#1406)

* yeet integration tests

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* yeet integration tests

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

* yeet integration tests

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>

---------

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>
Co-authored-by: Austin Parker <austin@ap2.io>

* add flagd provider to python

* chore(checkoutservice): add producer interceptor for tracing (open-telemetry#1400)

* chore(checkoutservice): add producer interceptor for tracing

* chore(checkoutservice): update changelog

---------

Co-authored-by: Pierre Tessier <pierre@pierretessier.com>

* Update src/adservice/build.gradle

Co-authored-by: Justin Abrahms <justin@abrah.ms>

* fix(accountingservice): fix graceful shutdown and log issues (open-telemetry#1401)

Co-authored-by: Pierre Tessier <pierre@pierretessier.com>

* cleanup ad service eval

* only run nightly for main repo (open-telemetry#1407)

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>
Co-authored-by: Juliano Costa <julianocosta89@outlook.com>

* fix(productcatalogservice): fix graceful shutdown issues (open-telemetry#1402)

* fix(productcatalogservice): fix graceful shutdown issues

* fix(productcatalogservice): update changelog

---------

Co-authored-by: Pierre Tessier <pierre@pierretessier.com>
Co-authored-by: Austin Parker <austin@ap2.io>

* Test: Run integration tests on PR approval (open-telemetry#1414)

* spike for running integration tests

* add workflow call trigger

* fix lint

* lint

* fix

* don't reinstall docker

* [CartService] - Add Host Detector (open-telemetry#1415)

* Add Host Detector

* changelog

---------

Co-authored-by: Austin Parker <austin@ap2.io>

* docs(readme): add Dash0 to the list of forks (open-telemetry#1416)

* [frontend] update sharp to latest to avoid docker build issue on M1 (open-telemetry#1417)

Building the frontend container image on an Apple M1 would result in
the following error during docker build:

    15.56 > Build error occurred
    15.56 [Error: ENOENT: no such file or directory, copyfile '/app/node_modules/sharp/build/Release/sharp-darwin-arm64v8.node' -> '/app/.next/standalone/node_modules/sharp/build/Release/sharp-darwin-arm64v8.node'] {
    15.56   errno: -2,
    15.56   code: 'ENOENT',
    15.56   syscall: 'copyfile',
    15.56   path: '/app/node_modules/sharp/build/Release/sharp-darwin-arm64v8.node',
    15.56   dest: '/app/.next/standalone/node_modules/sharp/build/Release/sharp-darwin-arm64v8.node'
    15.56 }

Updating sharp to v0.33.x avoids this problem, as that version includes
pre-built sharp binaries for various platforms, see
https://sharp.pixelplumbing.com/changelog#v0330---29th-november-2023

* [frontend] fix typo in ShippingGateway (open-telemetry#1418)

* fix kafka producer spans (open-telemetry#1428)

* chore: upgrade go.opentelemetry.io otel and contrib dependencies (open-telemetry#1408)

Co-authored-by: Pierre Tessier <pierre@pierretessier.com>

* fix adservice

* fixup gomod

* add otel hooks for .net flags

* add otel hooks for productcatalog

* Remove trailing space

* add stub for python otel hook

* refactor(checkoutservice): use exception.message key from semantic convention (open-telemetry#1430)

* remove unneeded key from flags

* removing integration tests

---------

Signed-off-by: Pierre Tessier <pierre@pierretessier.com>
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: Pierre Tessier <pierre@pierretessier.com>
Co-authored-by: Juliano Costa <julianocosta89@outlook.com>
Co-authored-by: Piotr Kiełkowicz <pkiekowicz@splunk.com>
Co-authored-by: Lam Tran <tranngoclam288@gmail.com>
Co-authored-by: Austin Parker <austin@ap2.io>
Co-authored-by: Robert Lankford <rlankfo@gmail.com>
Co-authored-by: Cedric Ziel <cedric@cedric-ziel.com>
Co-authored-by: pankdev <52178053+pankdev@users.noreply.github.com>
Co-authored-by: Louis Parkin <11991882+LouisParkin@users.noreply.github.com>
Co-authored-by: Jordi Bisbal Ansaldo <73789635+jordibisbal8@users.noreply.github.com>
Co-authored-by: Mikko Viitanen <74129181+mviitane@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Mike Dame <mikedame@google.com>
Co-authored-by: Justin Abrahms <justin@abrah.ms>
Co-authored-by: Bastian Krol <bastian.krol@dash0.com>
Co-authored-by: Bastian Krol <bastian.krol@web.de>
Co-authored-by: Juliano Costa <juliano.costa@datadoghq.com>
  • Loading branch information
18 people authored Apr 2, 2024
1 parent 7a2bdf6 commit 69eba1f
Show file tree
Hide file tree
Showing 163 changed files with 3,481 additions and 9,560 deletions.
21 changes: 18 additions & 3 deletions .env
Original file line number Diff line number Diff line change
@@ -1,9 +1,21 @@


# Images
IMAGE_VERSION=1.7.1
# Demo App version
IMAGE_VERSION=1.8.0
IMAGE_NAME=ghcr.io/open-telemetry/demo
TRACETEST_IMAGE_VERSION=v0.14.5
DEMO_VERSION=latest

# Dependent images
COLLECTOR_CONTRIB_IMAGE=otel/opentelemetry-collector-contrib:0.93.0
GRAFANA_IMAGE=grafana/grafana:10.3.1
JAEGERTRACING_IMAGE=jaegertracing/all-in-one:1.53
# must also update version field in /src/grafana/provisioning/datasources/opensearch.yml
OPENSEARCH_IMAGE=opensearchproject/opensearch:2.11.1
POSTGRES_IMAGE=postgres:16.1
PROMETHEUS_IMAGE=quay.io/prometheus/prometheus:v2.49.1
REDIS_IMAGE=redis:7.2-alpine
TRACETEST_IMAGE_VERSION=v0.15.8
TRACETEST_IMAGE=kubeshop/tracetest:${TRACETEST_IMAGE_VERSION}

# Demo Platform
ENV_PLATFORM=local
Expand Down Expand Up @@ -51,6 +63,9 @@ FEATURE_FLAG_SERVICE_HOST=feature-flag-service
FEATURE_FLAG_GRPC_SERVICE_PORT=50053
FEATURE_FLAG_GRPC_SERVICE_ADDR=featureflagservice:${FEATURE_FLAG_GRPC_SERVICE_PORT}

# flagd
FLAGD_HOST=flagd

# Frontend
FRONTEND_PORT=8080
FRONTEND_ADDR=frontend:${FRONTEND_PORT}
Expand Down
14 changes: 2 additions & 12 deletions .github/workflows/build-images.yml
Original file line number Diff line number Diff line change
Expand Up @@ -55,14 +55,6 @@ jobs:
tag_suffix: emailservice
context: ./src/emailservice
setup-qemu: true
# NOTE:
# https://github.com/open-telemetry/opentelemetry-demo/issues/956
# Until dedicated ARM runners are available for GHA we cannot upgrade
# OTP/Elixir versions. Please do not change the OTP/Elixir versions.
- file: ./src/featureflagservice/Dockerfile
tag_suffix: featureflagservice
context: ./
setup-qemu: true
- file: ./src/frontend/Dockerfile
tag_suffix: frontend
context: ./
Expand Down Expand Up @@ -111,10 +103,6 @@ jobs:
tag_suffix: frontend-tests
context: ./
setup-qemu: true
- file: ./test/Dockerfile
tag_suffix: integrationTests
context: ./
setup-qemu: true

steps:
- uses: actions/checkout@v4
Expand Down Expand Up @@ -170,6 +158,8 @@ jobs:
push: ${{ inputs.push }}
tags: |
${{ env.DOCKERHUB_REPO }}:${{ inputs.version }}-${{matrix.file_tag.tag_suffix }}
${{ env.DOCKERHUB_REPO }}:latest-${{matrix.file_tag.tag_suffix }}
${{ env.GHCR_REPO }}:${{ inputs.version }}-${{ matrix.file_tag.tag_suffix }}
${{ env.GHCR_REPO }}:latest-${{ matrix.file_tag.tag_suffix }}
cache-from: type=gha
cache-to: type=gha
2 changes: 1 addition & 1 deletion .github/workflows/gradle-wrapper-validation.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,4 +15,4 @@ jobs:
steps:
- uses: actions/checkout@v4

- uses: gradle/wrapper-validation-action@v1.1.0
- uses: gradle/wrapper-validation-action@v2.1.1
17 changes: 17 additions & 0 deletions .github/workflows/nightly-release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
# Copyright The OpenTelemetry Authors
# SPDX-License-Identifier: Apache-2.0
name: Nightly Release

on:
schedule:
# Runs at 00:00 UTC every day
- cron: '0 0 * * *'

jobs:
build_and_push_images:
uses: ./.github/workflows/build-images.yml
if: github.repository == 'open-telemetry/opentelemetry-demo'
with:
push: true
version: nightly-${{ github.run_id }}
secrets: inherit
67 changes: 19 additions & 48 deletions .github/workflows/run-integration-tests.yml
Original file line number Diff line number Diff line change
@@ -1,50 +1,21 @@
# Copyright The OpenTelemetry Authors
# SPDX-License-Identifier: Apache-2.0
name: Integration Tests
# # Copyright The OpenTelemetry Authors
# # SPDX-License-Identifier: Apache-2.0
# @lukekraus - commented this out for now due to failures reading from the registry. Need to rethink how to run these in CI
# name: Integration Tests

on:
pull_request_target:
branches:
- main
types: [closed]
# on:
# pull_request_review:
# types:
# - submitted

jobs:
build_runner:
runs-on: ubuntu-latest
name: "Build Runner"
if: github.event.pull_request.merged == true
steps:
- name: metal-runner-action
uses: equinix-labs/metal-action-runner@v0.1.1
with:
github_token: ${{ secrets.GH_CI_SECRET }}
metal_auth_token: ${{ secrets.METAL_AUTH_TOKEN }}
metal_project_id: ${{ secrets.METAL_PROJECT_ID }}
metro: "da"
plan: "c3.small.x86"
os: "ubuntu_20_04"
run_tests:
needs: build_runner
runs-on: self-hosted
name: "Run CI"
steps:
- name: check out code
uses: actions/checkout@v3
- name: install docker
run: |
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh
- name: run tracetesting
run: |
make build && make run-tracetesting
destroy:
needs: [build_runner, run_tests]
runs-on: ubuntu-latest
name: "Cleanup"
steps:
- name: metal-sweeper-action
uses: equinix-labs/metal-sweeper-action@v0.6.1
with:
authToken: ${{ secrets.METAL_AUTH_TOKEN }}
projectID: ${{ secrets.METAL_PROJECT_ID }}
keepProject: true
# jobs:
# run_tests:
# runs-on: ubuntu-latest
# name: "Run CI"
# if: github.event.review.state == 'APPROVED'
# steps:
# - name: check out code
# uses: actions/checkout@v4
# - name: run tracetesting
# run: |
# make build && make run-tracetesting
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,7 @@ composer.lock
src/frontend/cypress/videos
src/frontend/cypress/screenshots
src/shippingservice/target/
test/tracetesting/tracetesting-vars.yaml

# Ignore copied/generated protobuf files
/src/cartservice/src/protos/
Expand Down
4 changes: 4 additions & 0 deletions .licenserc.json
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,10 @@
"# Copyright The OpenTelemetry Authors",
"# SPDX-License-Identifier: Apache-2.0"
],
"**/*.sql": [
"-- Copyright The OpenTelemetry Authors",
"-- SPDX-License-Identifier: Apache-2.0"
],
"**/{Dockerfile,Makefile}": [
"# Copyright The OpenTelemetry Authors",
"# SPDX-License-Identifier: Apache-2.0"
Expand Down
88 changes: 85 additions & 3 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,12 +1,92 @@
# Changelog

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

## Unreleased

* [featureflag] deprecate in favor of flagd
([#1338](https://github.com/open-telemetry/opentelemetry-demo/pull/1388))
* [checkoutservice] add producer interceptor for tracing
([#1400](https://github.com/open-telemetry/opentelemetry-demo/pull/1400))
* [chore] increase memory for Collector and Jaeger
([#1396](https://github.com/open-telemetry/opentelemetry-demo/pull/1396))
* [chore] fix Make targets for restart and redeploy
([#1397](https://github.com/open-telemetry/opentelemetry-demo/pull/1397))
* [chore] add nightly releases
([#1398](https://github.com/open-telemetry/opentelemetry-demo/pull/1398))
* [checkoutservice] add producer interceptor for tracing
([#1400](https://github.com/open-telemetry/opentelemetry-demo/pull/1400))
* [productcatalogservice] fix graceful shutdown issues
([#1402](https://github.com/open-telemetry/opentelemetry-demo/pull/1402))
* [chore] remove unused integration test
([#1406](https://github.com/open-telemetry/opentelemetry-demo/pull/1406))
* [CartService] - Add Host Detector
([#1415](https://github.com/open-telemetry/opentelemetry-demo/pull/1415))

## 1.8.0

* [grafana] update grafana to 10.2.3
([#1332](https://github.com/open-telemetry/opentelemetry-demo/pull/1332))
* [frontendproxy] Enable envoy environment resource detector
([#1291](https://github.com/open-telemetry/opentelemetry-demo/pull/1291))
* [currencyservice] - add package name prefix to `rpc.service` attribute
([#1333](https://github.com/open-telemetry/opentelemetry-demo/pull/1333))
* [currency] fix metric exporter options
([#1335](https://github.com/open-telemetry/opentelemetry-demo/pull/1335))
* [ffspostgres] define and use demo specific postgres image
([#1338](https://github.com/open-telemetry/opentelemetry-demo/pull/1338))
* [loadgenerator, frontend] enable browser traffic in loadgenerator using playwright
([#1345](https://github.com/open-telemetry/opentelemetry-demo/pull/1345))
* [accountingservice] update wiki link
([#1346](https://github.com/open-telemetry/opentelemetry-demo/pull/1346))
* [checkoutservice] update wiki link
([#1346](https://github.com/open-telemetry/opentelemetry-demo/pull/1346))
* [productcatalogservice] update wiki link
([#1346](https://github.com/open-telemetry/opentelemetry-demo/pull/1346))
* [adservice] added group and anonymous read permission to
opentelemetry-javaagent.jar
([#1348](https://github.com/open-telemetry/opentelemetry-demo/pull/1348))
* [frauddetectionservice] added group and anonymous read permission to
opentelemetry-javaagent.jar
([#1348](https://github.com/open-telemetry/opentelemetry-demo/pull/1348))
* [adservice] Major version update for Java instrumentation, version 2.0.0
([#1352](https://github.com/open-telemetry/opentelemetry-demo/pull/1352))
* [frauddetectionservice] Major version update for Java instrumentation,
version 2.0.0
([#1352](https://github.com/open-telemetry/opentelemetry-demo/pull/1352))
* [kafka] Major version update for Java instrumentation, version 2.0.0
([#1352](https://github.com/open-telemetry/opentelemetry-demo/pull/1352))
* Align env variables for OTLP ports
([#1353](https://github.com/open-telemetry/opentelemetry-demo/pull/1353))
* Update dependent services - Collector, Grafana, Jaeger, Prometheus, etc.
([#1354](https://github.com/open-telemetry/opentelemetry-demo/pull/1354))
* [OpenSearch] Use native OpenSearch exporter from Collector
([#1356](https://github.com/open-telemetry/opentelemetry-demo/pull/1356))
* Update GO SDKs & fix metrics config
([#1357](https://github.com/open-telemetry/opentelemetry-demo/pull/1357))
* Update Python SDKs
([#1358](https://github.com/open-telemetry/opentelemetry-demo/pull/1358))
* [loadgenerator] fix browser traffic enabled flag
([#1359](https://github.com/open-telemetry/opentelemetry-demo/pull/1359))
* [productcatalog] allow products to be extended
([#1363](https://github.com/open-telemetry/opentelemetry-demo/pull/1363))
* [tests] update trace based tests for semantic conventions
([#1377](https://github.com/open-telemetry/opentelemetry-demo/pull/1377))
* [currencyservice] Add OTLP logs
([#1378](https://github.com/open-telemetry/opentelemetry-demo/pull/1378))
* [cartservice] update .NET to .NET 8.0.2
([#1380](https://github.com/open-telemetry/opentelemetry-demo/pull/1380))

## 1.7.2

* [cartservice] update .NET package to 1.7.0 release
([#1326](https://github.com/open-telemetry/opentelemetry-demo/pull/1326))
* [loadgenerator and recommendationservice] Update python base image
([#1329](https://github.com/open-telemetry/opentelemetry-demo/pull/1329))

## 1.7.1

* [grafana] revert to 10.2.0
Expand All @@ -16,6 +96,8 @@ release.
([#1313](https://github.com/open-telemetry/opentelemetry-demo/pull/1313))
* [accountingservice] Update dependencies and semconv
* ([#1316](https://github.com/open-telemetry/opentelemetry-demo/pull/1316))
* [featureflagservice] Allow setting initial feature flag values
([#1319](https://github.com/open-telemetry/opentelemetry-demo/pull/1319))

## 1.7.0

Expand Down
2 changes: 1 addition & 1 deletion CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -113,7 +113,7 @@ GitHub pull requests (PRs).

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

> **Note**
> [!NOTE]
> Please fork to a personal GitHub account rather than a corporate/enterprise
> one so maintainers can push commits to your branch.
> **Pull requests from protected forks will not be accepted.**
Expand Down
41 changes: 36 additions & 5 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -95,11 +95,12 @@ build-env-file:
sed -i '/IMAGE_VERSION=.*/c\IMAGE_VERSION=${RELEASE_VERSION}' .ghcr.env
sed -i '/IMAGE_NAME=.*/c\IMAGE_NAME=${GHCR_REPO}' .ghcr.env

.PHONY: run-tests
run-tests:
docker compose run frontendTests
docker compose run integrationTests
docker compose run traceBasedTests

.PHONY: run-tracetesting
run-tracetesting:
docker compose run traceBasedTests ${SERVICES_TO_TEST}

Expand Down Expand Up @@ -161,10 +162,40 @@ stop:
@echo ""
@echo "OpenTelemetry Demo is stopped."


# Use to rebuild and restart a single service component
# Use to restart a single service component
# Example: make restart service=frontend
.PHONY: restart
restart:
# work with `service` or `SERVICE` as input
./restart-service.sh ${service}${SERVICE}
# work with `service` or `SERVICE` as input
ifdef SERVICE
service := $(SERVICE)
endif

ifdef service
docker compose stop $(service)
docker compose rm --force $(service)
docker compose create $(service)
docker compose start $(service)
else
@echo "Please provide a service name using `service=[service name]` or `SERVICE=[service name]`"
endif

# Use to rebuild and restart (redeploy) a single service component
# Example: make redeploy service=frontend
.PHONY: redeploy
redeploy:
# work with `service` or `SERVICE` as input
ifdef SERVICE
service := $(SERVICE)
endif

ifdef service
docker compose build $(service)
docker compose stop $(service)
docker compose rm --force $(service)
docker compose create $(service)
docker compose start $(service)
else
@echo "Please provide a service name using `service=[service name]` or `SERVICE=[service name]`"
endif

Loading

0 comments on commit 69eba1f

Please sign in to comment.