Skip to content

ci: Resolving nginx & prometheus build issue + web server consistency - #633

Closed
thompson-tomo wants to merge 0 commit into
open-telemetry:mainfrom
thompson-tomo:ci_fix
Closed

ci: Resolving nginx & prometheus build issue + web server consistency#633
thompson-tomo wants to merge 0 commit into
open-telemetry:mainfrom
thompson-tomo:ci_fix

Conversation

@thompson-tomo

@thompson-tomo thompson-tomo commented Jul 25, 2026

Copy link
Copy Markdown
Contributor

NGINX instrumentation build failures have been addressed by explicitly using buildx & switching tests to use php docker image which exists. Have also updated the tests to use nil for remote-parent-id rather than empty string.

Prometheus bazel build resolved by specifying an older bazel version to use.

Prometheus cmake build resolved by changed zlib adding process.

Httpd/webserver resolved by updating runner image.

This restricts all push triggers to main to improve ci consistency and remove unnecessary checks on pr’s. To build for a commit use the manual trigger or use a draft pr.

@thompson-tomo
thompson-tomo requested a review from a team as a code owner July 25, 2026 03:19
@thompson-tomo
thompson-tomo force-pushed the ci_fix branch 6 times, most recently from a4b63bb to 4d12248 Compare July 25, 2026 05:31
@thompson-tomo
thompson-tomo force-pushed the ci_fix branch 2 times, most recently from e9eaaab to 2b750a0 Compare August 3, 2026 04:18
Comment thread .github/workflows/webserver.yml
@lalitb

lalitb commented Aug 3, 2026

Copy link
Copy Markdown
Member

Thanks for improving the CI here - most of the previously failing jobs are now green. One Prometheus issue remains: the Linux CMake job still fails while configuring the upstream opentelemetry-cpp checkout because prometheus-cpp::pull references a missing ZLIB::ZLIB target. The new find_package(ZLIB REQUIRED) is in the contrib CMakeLists, which is configured later, so it cannot affect this failure. Could you please address this remaining case and get the job green?

-- Using external prometheus-cpp
-- Building WITH_STL=OFF
-- Configuring done (1.7s)
CMake Error at /usr/local/share/vcpkg/installed/x64-linux/share/prometheus-cpp/prometheus-cpp-targets.cmake:76 (set_target_properties):
  The link interface of target "prometheus-cpp::pull" contains:

    ZLIB::ZLIB

  but the target was not found.  Possible reasons include:

    * There is a typo in the target name.
    * A find_package call is missing for an IMPORTED target.
    * An ALIAS target is missing.

Call Stack (most recent call first):
  /usr/local/share/vcpkg/installed/x64-linux/share/prometheus-cpp/prometheus-cpp-config.cmake:48 (include)
  /usr/local/share/vcpkg/scripts/buildsystems/vcpkg.cmake:939 (_find_package)
  CMakeLists.txt:369 (find_package)


CMake Warning:
-- Generating done (0.0s)
  Manually-specified variables were not used by the project:

    WITH_METRICS_PREVIEW


CMake Generate step failed.  Build files cannot be regenerated correctly.

Comment thread .github/workflows/prometheus.yml Outdated
@thompson-tomo

Copy link
Copy Markdown
Contributor Author

@lalitb i am out of ideas as to what to do to get it green given my knowledge of these types of builds.

@lalitb

lalitb commented Aug 4, 2026

Copy link
Copy Markdown
Member

@lalitb i am out of ideas as to what to do to get it green given my knowledge of these types of builds.

@thompson-tomo - The Prometheus workflow performs two separate CMake configurations:

  1. It first configures upstream opentelemetry-cpp.
  2. It then configures this contrib Prometheus exporter.

The failure happens during the first configuration, when prometheus-cpp tries to use ZLIB::ZLIB.

This PR adds find_package(ZLIB REQUIRED) to the contrib CMakeLists, but that file is used only during the second configuration. Therefore, the command runs too late to fix the first configuration.

Could you make ZLIB available before the first CMake command that enables Prometheus?

@proost

proost commented Aug 5, 2026

Copy link
Copy Markdown
Contributor

@thompson-tomo
For the Webserver centos7, we need to update command in the dockerfile. see this PR

@thompson-tomo

Copy link
Copy Markdown
Contributor Author

@proost i would suggest you cherrypick the changes to https://github.com/thompson-tomo/opentelemetry-cpp-contrib/blob/ci_fix/.github/workflows/webserver.yml onto your branch which will enable the ci to run in your branch. I will then remove them from here to avoid conflicts.

@thompson-tomo thompson-tomo changed the title ci: Resolving nginx & prometheus build issue + ci consistency ci: Resolving nginx & prometheus build issue + web server consistency Aug 19, 2026
@thompson-tomo
thompson-tomo requested a review from lalitb August 19, 2026 13:57
@thompson-tomo

Copy link
Copy Markdown
Contributor Author

@thompson-tomo

Copy link
Copy Markdown
Contributor Author

Please see #667 for continuation of this pr

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants