Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Jaeger exporter to CMake CI build #786

Merged
merged 9 commits into from
May 25, 2021

Conversation

ThomsonTan
Copy link
Contributor

Fixes #785

Changes

Follow the Zipkin exporter, this PR add Jaeger exporter to CMake CI build without OTLP exporter. OTLP exporter takes a lot of time to build dependencies, group all non-OTLP exporters in a separate CI build will reduce the total CI build time.

For significant contributions please make sure you have completed the following items:

  • CHANGELOG.md updated for non-trivial changes
  • Unit tests have been added
  • Changes in public API reviewed

@ThomsonTan ThomsonTan requested a review from a team May 22, 2021 01:05
@codecov
Copy link

codecov bot commented May 22, 2021

Codecov Report

Merging #786 (23a82bf) into main (2b080c1) will not change coverage.
The diff coverage is n/a.

Impacted file tree graph

@@           Coverage Diff           @@
##             main     #786   +/-   ##
=======================================
  Coverage   96.00%   96.00%           
=======================================
  Files         176      176           
  Lines        7183     7183           
=======================================
  Hits         6896     6896           
  Misses        287      287           

-DBUILD_COMPILER=OFF \
-DBUILD_CPP=ON \
-DBUILD_LIBRARIES=ON \
-DBUILD_NODEJS=OFF \
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

All the options turned off here are turned on by default in thrift repo. They are not used by our C++ build so turn them off explicitly would introducing more dependence to our CI build.

https://github.com/apache/thrift/blob/70992f1e74e525461121fb9e607000b19f31a4ca/build/cmake/DefineOptions.cmake#L115

@@ -19,7 +19,9 @@ jobs:
sudo ./ci/setup_cmake.sh
sudo ./ci/setup_ci_environment.sh
- name: run cmake tests (without otlp-exporter)
run: ./ci/do_ci.sh cmake.test
run: |
sudo ./ci/setup_thrift.sh
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We don't need sudo, as github actions are run by default as root user.
Also, if we move thrift installation as part of do_ci.sh script, this script will remain usable outside of github workflow, without separately installing thrift ( similar to how it is done for prometheus). Probably setup_thrift.sh can expose a function to install thrift, and that function can be called from do_ci.sh for actual installation if called with "cmake.test" argument.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I also believe sudo is not necessary, just follow other scripts invocation like setup_grpc.h.

I don't prefer moving the installation logic to do_ci.sh which would make do_ci.sh too complicated with the third-party dependence setup instructions, and also hard to share with non-CI environment. Expose a setup function in setup_thrift.sh looks good, but we still need include setup_thrift.sh to invoke the function. So it may be simpler to just invoke the script?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@lalitb do all github action run as root by default? I just removed all the sudo in our ci.yml but got permission denied in the CI run.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I thought unless explicitly specified with --user options, all jobs run as root user. Probably revert it back if there is a permission denied error. Sorry for the confusion.

@lalitb lalitb merged commit 6ab0f78 into open-telemetry:main May 25, 2021
@ThomsonTan ThomsonTan deleted the AddJaegerToCI branch March 13, 2023 22:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Jaeger exporter is not enabled in CI build
2 participants