Skip to content

Commit 83ac2ae

Browse files
authored
[CI] pin cmake in ci and devcontainer (open-telemetry#3336)
* pin cmake on ubuntu in ci and devcontainer * add setup cmake script for windows. install pinned cmake in more ubuntu jobs * pin cmake on bazel builds. force the cmake downgrade on windows
1 parent b2bc73f commit 83ac2ae

File tree

4 files changed

+102
-23
lines changed

4 files changed

+102
-23
lines changed

.github/workflows/ci.yml

+58-19
Original file line numberDiff line numberDiff line change
@@ -25,8 +25,8 @@ jobs:
2525
# CXX: /usr/bin/g++-10
2626
# run: |
2727
# sudo -E ./ci/setup_gcc10.sh
28-
# sudo -E ./ci/setup_cmake.sh
2928
# sudo -E ./ci/setup_ci_environment.sh
29+
# sudo -E ./ci/setup_cmake.sh
3030
# sudo -E ./ci/setup_googletest.sh
3131
# sudo -E ./ci/install_abseil.sh
3232
# sudo -E ./ci/install_protobuf.sh
@@ -51,8 +51,9 @@ jobs:
5151
submodules: 'recursive'
5252
- name: setup
5353
run: |
54-
sudo -E ./ci/setup_googletest.sh
5554
sudo -E ./ci/setup_ci_environment.sh
55+
sudo -E ./ci/setup_cmake.sh
56+
sudo -E ./ci/setup_googletest.sh
5657
- name: run cmake tests
5758
run: |
5859
./ci/do_ci.sh cmake.test
@@ -71,8 +72,9 @@ jobs:
7172
PROTOBUF_VERSION: 21.12
7273
run: |
7374
sudo apt remove needrestart #refer: https://github.com/actions/runner-images/issues/9937
74-
sudo -E ./ci/setup_googletest.sh
7575
sudo -E ./ci/setup_ci_environment.sh
76+
sudo -E ./ci/setup_cmake.sh
77+
sudo -E ./ci/setup_googletest.sh
7678
sudo -E ./ci/install_protobuf.sh
7779
- name: setup grpc
7880
run: |
@@ -107,8 +109,9 @@ jobs:
107109
PROTOBUF_VERSION: 21.12
108110
run: |
109111
sudo apt remove needrestart #refer: https://github.com/actions/runner-images/issues/9937
110-
sudo -E ./ci/setup_googletest.sh
111112
sudo -E ./ci/setup_ci_environment.sh
113+
sudo -E ./ci/setup_cmake.sh
114+
sudo -E ./ci/setup_googletest.sh
112115
sudo -E ./ci/install_protobuf.sh
113116
- name: setup grpc
114117
run: |
@@ -143,8 +146,9 @@ jobs:
143146
PROTOBUF_VERSION: 21.12
144147
run: |
145148
sudo apt remove needrestart #refer: https://github.com/actions/runner-images/issues/9937
146-
sudo -E ./ci/setup_googletest.sh
147149
sudo -E ./ci/setup_ci_environment.sh
150+
sudo -E ./ci/setup_cmake.sh
151+
sudo -E ./ci/setup_googletest.sh
148152
sudo -E ./ci/install_protobuf.sh
149153
- name: setup grpc
150154
run: |
@@ -179,8 +183,9 @@ jobs:
179183
PROTOBUF_VERSION: 21.12
180184
run: |
181185
sudo apt remove needrestart #refer: https://github.com/actions/runner-images/issues/9937
182-
sudo -E ./ci/setup_googletest.sh
183186
sudo -E ./ci/setup_ci_environment.sh
187+
sudo -E ./ci/setup_cmake.sh
188+
sudo -E ./ci/setup_googletest.sh
184189
sudo -E ./ci/install_protobuf.sh
185190
- name: setup grpc
186191
run: |
@@ -215,8 +220,9 @@ jobs:
215220
PROTOBUF_VERSION: 21.12
216221
run: |
217222
sudo apt remove needrestart #refer: https://github.com/actions/runner-images/issues/9937
218-
sudo -E ./ci/setup_googletest.sh
219223
sudo -E ./ci/setup_ci_environment.sh
224+
sudo -E ./ci/setup_cmake.sh
225+
sudo -E ./ci/setup_googletest.sh
220226
sudo -E ./ci/install_protobuf.sh
221227
- name: setup grpc
222228
run: |
@@ -246,6 +252,7 @@ jobs:
246252
submodules: 'recursive'
247253
- name: setup
248254
run: |
255+
./ci/setup_cmake.ps1
249256
./ci/setup_windows_ci_environment.ps1
250257
- name: run tests
251258
run: ./ci/do_ci.ps1 cmake.maintainer.test
@@ -259,6 +266,7 @@ jobs:
259266
submodules: 'recursive'
260267
- name: setup
261268
run: |
269+
./ci/setup_cmake.ps1
262270
./ci/setup_windows_ci_environment.ps1
263271
- name: run tests
264272
env:
@@ -274,6 +282,7 @@ jobs:
274282
submodules: 'recursive'
275283
- name: setup
276284
run: |
285+
./ci/setup_cmake.ps1
277286
./ci/setup_windows_ci_environment.ps1
278287
- name: run tests
279288
env:
@@ -292,8 +301,9 @@ jobs:
292301
CC: /usr/bin/gcc-12
293302
CXX: /usr/bin/g++-12
294303
run: |
295-
sudo -E ./ci/setup_googletest.sh
296304
sudo -E ./ci/setup_ci_environment.sh
305+
sudo -E ./ci/setup_cmake.sh
306+
sudo -E ./ci/setup_googletest.sh
297307
- name: run cmake tests (without otlp-exporter)
298308
env:
299309
CC: /usr/bin/gcc-12
@@ -310,8 +320,10 @@ jobs:
310320
# submodules: 'recursive'
311321
# - name: setup
312322
# run: |
313-
# sudo -E ./ci/setup_googletest.sh
323+
314324
# sudo -E ./ci/setup_ci_environment.sh
325+
# sudo -E ./ci/setup_cmake.sh
326+
# sudo -E ./ci/setup_googletest.sh
315327
# - name: run cmake tests (enable abseil-cpp)
316328
# run: |
317329
# sudo ./ci/install_abseil.sh
@@ -326,8 +338,9 @@ jobs:
326338
submodules: 'recursive'
327339
- name: setup
328340
run: |
329-
sudo -E ./ci/setup_googletest.sh
330341
sudo -E ./ci/setup_ci_environment.sh
342+
sudo -E ./ci/setup_cmake.sh
343+
sudo -E ./ci/setup_googletest.sh
331344
- name: run cmake tests (enable opentracing-shim)
332345
run: ./ci/do_ci.sh cmake.opentracing_shim.test
333346

@@ -341,6 +354,7 @@ jobs:
341354
- name: setup
342355
run: |
343356
sudo -E ./ci/setup_ci_environment.sh
357+
sudo -E ./ci/setup_cmake.sh
344358
sudo -E ./ci/setup_googletest.sh
345359
- name: run tests (enable stl)
346360
env:
@@ -357,6 +371,7 @@ jobs:
357371
- name: setup
358372
run: |
359373
sudo -E ./ci/setup_ci_environment.sh
374+
sudo -E ./ci/setup_cmake.sh
360375
sudo -E ./ci/setup_googletest.sh
361376
- name: run tests (enable stl)
362377
env:
@@ -373,6 +388,7 @@ jobs:
373388
- name: setup
374389
run: |
375390
sudo -E ./ci/setup_ci_environment.sh
391+
sudo -E ./ci/setup_cmake.sh
376392
sudo -E ./ci/setup_googletest.sh
377393
- name: run tests
378394
env:
@@ -397,6 +413,7 @@ jobs:
397413
CXXFLAGS: "-stdlib=libc++"
398414
run: |
399415
sudo -E ./ci/setup_ci_environment.sh
416+
sudo -E ./ci/setup_cmake.sh
400417
sudo -E ./ci/setup_googletest.sh
401418
- name: run tests
402419
env:
@@ -423,6 +440,7 @@ jobs:
423440
- name: setup
424441
run: |
425442
sudo -E ./ci/setup_ci_environment.sh
443+
sudo -E ./ci/setup_cmake.sh
426444
sudo -E ./ci/setup_googletest.sh
427445
- name: run tests
428446
env:
@@ -447,6 +465,7 @@ jobs:
447465
CXXFLAGS: "-stdlib=libc++"
448466
run: |
449467
sudo -E ./ci/setup_ci_environment.sh
468+
sudo -E ./ci/setup_cmake.sh
450469
sudo -E ./ci/setup_googletest.sh
451470
- name: run tests
452471
env:
@@ -472,8 +491,9 @@ jobs:
472491
submodules: 'recursive'
473492
- name: setup
474493
run: |
475-
sudo -E ./ci/setup_googletest.sh
476494
sudo -E ./ci/setup_ci_environment.sh
495+
sudo -E ./ci/setup_cmake.sh
496+
sudo -E ./ci/setup_googletest.sh
477497
- name: run otlp exporter tests
478498
run: |
479499
sudo ./ci/setup_grpc.sh
@@ -501,8 +521,9 @@ jobs:
501521
ABSEIL_CPP_VERSION: '20230125.3'
502522
CXX_STANDARD: '14'
503523
run: |
504-
sudo ./ci/setup_googletest.sh
505-
sudo ./ci/setup_ci_environment.sh
524+
sudo -E ./ci/setup_ci_environment.sh
525+
sudo -E ./ci/setup_cmake.sh
526+
sudo -E ./ci/setup_googletest.sh
506527
sudo -E ./ci/install_abseil.sh
507528
sudo -E ./ci/install_protobuf.sh
508529
- name: run otlp exporter tests
@@ -522,8 +543,9 @@ jobs:
522543
submodules: 'recursive'
523544
- name: setup
524545
run: |
525-
sudo -E ./ci/setup_googletest.sh
526546
sudo -E ./ci/setup_ci_environment.sh
547+
sudo -E ./ci/setup_cmake.sh
548+
sudo -E ./ci/setup_googletest.sh
527549
- name: run otlp exporter tests
528550
run: |
529551
sudo ./ci/setup_grpc.sh
@@ -538,8 +560,9 @@ jobs:
538560
submodules: 'recursive'
539561
- name: setup
540562
run: |
541-
sudo -E ./ci/setup_googletest.sh
542563
sudo -E ./ci/setup_ci_environment.sh
564+
sudo -E ./ci/setup_cmake.sh
565+
sudo -E ./ci/setup_googletest.sh
543566
- name: run otlp exporter tests
544567
run: |
545568
sudo ./ci/setup_grpc.sh -T
@@ -554,8 +577,9 @@ jobs:
554577
# submodules: 'recursive'
555578
# - name: setup
556579
# run: |
557-
# sudo -E ./ci/setup_googletest.sh
558580
# sudo -E ./ci/setup_ci_environment.sh
581+
# sudo -E ./ci/setup_cmake.sh
582+
# sudo -E ./ci/setup_googletest.sh
559583
# - name: run cmake install (with abseil)
560584
# run: |
561585
# sudo ./ci/install_abseil.sh
@@ -576,8 +600,9 @@ jobs:
576600
CC: /usr/bin/gcc-12
577601
CXX: /usr/bin/g++-12
578602
run: |
579-
sudo -E ./ci/setup_googletest.sh
580603
sudo -E ./ci/setup_ci_environment.sh
604+
sudo -E ./ci/setup_cmake.sh
605+
sudo -E ./ci/setup_googletest.sh
581606
- name: run tests
582607
env:
583608
CC: /usr/bin/gcc-12
@@ -601,6 +626,7 @@ jobs:
601626
- name: setup
602627
run: |
603628
sudo ./ci/setup_ci_environment.sh
629+
sudo ./ci/setup_cmake.sh
604630
sudo ./ci/install_bazelisk.sh
605631
- name: run tests
606632
run: ./ci/do_ci.sh bazel.test
@@ -622,6 +648,7 @@ jobs:
622648
- name: setup
623649
run: |
624650
sudo ./ci/setup_ci_environment.sh
651+
sudo ./ci/setup_cmake.sh
625652
sudo ./ci/install_bazelisk.sh
626653
- name: run tests
627654
run: ./ci/do_ci.sh bazel.no_bzlmod.test
@@ -643,6 +670,7 @@ jobs:
643670
- name: setup
644671
run: |
645672
sudo ./ci/setup_ci_environment.sh
673+
sudo ./ci/setup_cmake.sh
646674
sudo ./ci/install_bazelisk.sh
647675
- name: run tests
648676
run: ./ci/do_ci.sh bazel.with_async_export.test
@@ -664,6 +692,7 @@ jobs:
664692
- name: setup
665693
run: |
666694
sudo ./ci/setup_ci_environment.sh
695+
sudo ./ci/setup_cmake.sh
667696
sudo ./ci/install_bazelisk.sh
668697
- name: run tests
669698
run: ./ci/do_ci.sh bazel.valgrind
@@ -685,6 +714,7 @@ jobs:
685714
- name: setup
686715
run: |
687716
sudo ./ci/setup_ci_environment.sh
717+
sudo ./ci/setup_cmake.sh
688718
sudo ./ci/install_bazelisk.sh
689719
- name: run tests
690720
run: ./ci/do_ci.sh bazel.noexcept
@@ -706,6 +736,7 @@ jobs:
706736
- name: setup
707737
run: |
708738
sudo ./ci/setup_ci_environment.sh
739+
sudo ./ci/setup_cmake.sh
709740
sudo ./ci/install_bazelisk.sh
710741
- name: run tests
711742
run: ./ci/do_ci.sh bazel.nortti
@@ -727,6 +758,7 @@ jobs:
727758
- name: setup
728759
run: |
729760
sudo ./ci/setup_ci_environment.sh
761+
sudo ./ci/setup_cmake.sh
730762
sudo ./ci/install_bazelisk.sh
731763
- name: run tests
732764
run: ./ci/do_ci.sh bazel.asan
@@ -748,6 +780,7 @@ jobs:
748780
- name: setup
749781
run: |
750782
sudo ./ci/setup_ci_environment.sh
783+
sudo ./ci/setup_cmake.sh
751784
sudo ./ci/install_bazelisk.sh
752785
- name: run tests
753786
run: ./ci/do_ci.sh bazel.tsan
@@ -824,6 +857,7 @@ jobs:
824857
submodules: 'recursive'
825858
- name: setup
826859
run: |
860+
./ci/setup_cmake.ps1
827861
./ci/setup_windows_ci_environment.ps1
828862
./ci/install_windows_protobuf.ps1
829863
- name: run cmake test
@@ -840,6 +874,7 @@ jobs:
840874
submodules: 'recursive'
841875
- name: setup
842876
run: |
877+
./ci/setup_cmake.ps1
843878
./ci/setup_windows_ci_environment.ps1
844879
./ci/install_windows_protobuf.ps1
845880
- name: run cmake test (DLL build)
@@ -858,6 +893,7 @@ jobs:
858893
submodules: 'recursive'
859894
- name: setup
860895
run: |
896+
./ci/setup_cmake.ps1
861897
./ci/setup_windows_ci_environment.ps1
862898
./ci/install_windows_protobuf.ps1
863899
- name: run cmake test
@@ -887,6 +923,7 @@ jobs:
887923
submodules: 'recursive'
888924
- name: setup
889925
run: |
926+
./ci/setup_cmake.ps1
890927
./ci/setup_windows_ci_environment.ps1
891928
- name: run tests
892929
run: ./ci/do_ci.ps1 cmake.test_example_plugin
@@ -903,8 +940,9 @@ jobs:
903940
CC: /usr/bin/gcc-10
904941
CXX: /usr/bin/g++-10
905942
run: |
906-
sudo -E ./ci/setup_googletest.sh
907943
sudo -E ./ci/setup_ci_environment.sh
944+
sudo -E ./ci/setup_cmake.sh
945+
sudo -E ./ci/setup_googletest.sh
908946
- name: run tests and generate report
909947
env:
910948
CC: /usr/bin/gcc-10
@@ -974,8 +1012,9 @@ jobs:
9741012
CC: /usr/bin/gcc-12
9751013
CXX: /usr/bin/g++-12
9761014
run: |
977-
sudo -E ./ci/setup_googletest.sh
9781015
sudo -E ./ci/setup_ci_environment.sh
1016+
sudo -E ./ci/setup_cmake.sh
1017+
sudo -E ./ci/setup_googletest.sh
9791018
- name: run w3c trace-context test server (background)
9801019
env:
9811020
CXX_STANDARD: '14'

.github/workflows/iwyu.yml

+2-1
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,6 @@ jobs:
2121
sudo apt install -y --no-install-recommends --no-install-suggests \
2222
build-essential \
2323
iwyu \
24-
cmake \
2524
ninja-build \
2625
libssl-dev \
2726
libcurl4-openssl-dev \
@@ -30,6 +29,8 @@ jobs:
3029
libgmock-dev \
3130
libgtest-dev \
3231
libbenchmark-dev
32+
sudo ./ci/setup_cmake.sh
33+
3334
3435
- name: setup grpc
3536
run: |

ci/setup_cmake.ps1

+15
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
# Copyright The OpenTelemetry Authors
2+
# SPDX-License-Identifier: Apache-2.0
3+
4+
$ErrorActionPreference = "Stop"
5+
trap { $host.SetShouldExit(1) }
6+
7+
if (-not $env:CMAKE_VERSION) { $env:CMAKE_VERSION = "3.31.6" }
8+
$CMAKE_VERSION = $env:CMAKE_VERSION
9+
10+
choco uninstall cmake cmake.install -y --remove-dependencies --skip-autouninstaller --force --no-progress
11+
12+
Write-Host "Installing CMake version $CMAKE_VERSION ..."
13+
choco install cmake --version=$CMAKE_VERSION --allow-downgrade -y --force --no-progress
14+
15+
cmake --version

0 commit comments

Comments
 (0)